netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Yanmin Zhang <yanmin_zhang@linux.intel.com>
To: David Miller <davem@davemloft.net>
Cc: kunx.jiang@intel.com, netdev@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] ipv4: fix the rcu race between free_fib_info and ip_route_output_slow
Date: Wed, 23 May 2012 11:30:41 +0800	[thread overview]
Message-ID: <1337743841.14538.178.camel@ymzhang.sh.intel.com> (raw)
In-Reply-To: <20120522.232310.911242148705021745.davem@davemloft.net>

On Tue, 2012-05-22 at 23:23 -0400, David Miller wrote:
> From: Yanmin Zhang <yanmin_zhang@linux.intel.com>
> Date: Wed, 23 May 2012 11:02:03 +0800
> 
> > 1) Why does free_fib_info call call_rcu instead of releasing fi directly?
> > I assume other cpu might be accessing it. nexthop_nh->nh_dev is in fi.
> > If other cpu are accessing it, here resetting to NULL would cause other
> > cpu panic.
> 
> Because fib trie lookups are done with RCU locking, therefore we must
> use RCU freeing to release the object.
> 
> What I was trying to impart to you is that removing the NULL
> assignment is wrong and that an alternative fix is warranted (hint:
> consider moving something into the RCU release).
Thanks for the explanation.

How about the new patch posted in the end of previous reply? It does move the
the resetting to RCU release.
https://lkml.org/lkml/2012/5/22/558?

  reply	other threads:[~2012-05-23  3:30 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-22  9:48 [PATCH] ipv4: fix the rcu race between free_fib_info and ip_route_output_slow kun.jiang
2012-05-22 19:15 ` David Miller
2012-05-23  3:02   ` Yanmin Zhang
2012-05-23  3:23     ` David Miller
2012-05-23  3:30       ` Yanmin Zhang [this message]
2012-05-23  3:49         ` David Miller
2012-05-23  4:41           ` Yanmin Zhang
2012-05-23  5:08             ` Eric Dumazet
2012-05-23  4:37       ` Eric Dumazet
2012-05-23  4:54         ` Yanmin Zhang
2012-05-23  5:02           ` Eric Dumazet
2012-05-23  6:15             ` Yanmin Zhang
2012-05-23  6:27               ` Eric Dumazet
2012-05-23  6:47                 ` Yanmin Zhang
2012-05-23  6:55                   ` Eric Dumazet
2012-05-23  7:13                     ` Eric Dumazet
2012-05-23  7:24                       ` Yanmin Zhang
2012-05-23  7:39                         ` Eric Dumazet
2012-05-23  7:41                           ` Eric Dumazet
2012-05-23  7:47                           ` Yanmin Zhang
2012-05-23  6:37             ` Eric Dumazet
2012-05-23  6:43               ` Eric Dumazet

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1337743841.14538.178.camel@ymzhang.sh.intel.com \
    --to=yanmin_zhang@linux.intel.com \
    --cc=davem@davemloft.net \
    --cc=kunx.jiang@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).