Re: [PATCH 4.4] netfilter: x_tables: Use correct memory barriers.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Mon, May 10, 2021 at 09:52:06AM +0200, Greg KH wrote:
> On Sun, May 09, 2021 at 10:24:36AM +0200, Pavel Machek wrote:
> > 
> > From: Mark Tomlinson <mark.tomlinson@xxxxxxxxxxxxxxxxxxx>
> > 
> > commit 175e476b8cdf2a4de7432583b49c871345e4f8a1 upstream.
> > 
> > When a new table value was assigned, it was followed by a write memory
> > barrier. This ensured that all writes before this point would complete
> > before any writes after this point. However, to determine whether the
> > rules are unused, the sequence counter is read. To ensure that all
> > writes have been done before these reads, a full memory barrier is
> > needed, not just a write memory barrier. The same argument applies when
> > incrementing the counter, before the rules are read.
> > 
> > Changing to using smp_mb() instead of smp_wmb() fixes the kernel panic
> > reported in cc00bcaa5899 (which is still present), while still
> > maintaining the same speed of replacing tables.
> > 
> > The smb_mb() barriers potentially slow the packet path, however testing
> > has shown no measurable change in performance on a 4-core MIPS64
> > platform.
> > 
> > Fixes: 7f5c6d4f665b ("netfilter: get rid of atomic ops in fast path")
> > Signed-off-by: Mark Tomlinson <mark.tomlinson@xxxxxxxxxxxxxxxxxxx>
> > Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
> > [Ported to stable, affected barrier is added by d3d40f237480abf3268956daf18cdc56edd32834 in mainline]
> > Signed-off-by: Pavel Machek (CIP) <pavel@xxxxxxx>
> > ---
> >  include/linux/netfilter/x_tables.h | 2 +-
> >  net/netfilter/x_tables.c           | 3 +++
> >  2 files changed, 4 insertions(+), 1 deletion(-)
> 
> What about 4.14 and 4.9?  I can't take patches only for 4.4 that are not
> also in newer releases.

I have confirmed that this patch can be applied to 4.9 and 4.14.
Do I need resend this patch again?

> 
> thanks,
> 
> greg k-h
> 

Best regards,
  Nobuhiro



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux