Message ID | 1245845367.24921.3.camel@localhost.localdomain |
---|---|
State | Not Applicable, archived |
Delegated to: | David Miller |
Headers | show |
On 24 Jun 2009, at 13:09, Jesper Dangaard Brouer wrote: > On Wed, 2009-06-24 at 13:44 +0200, Jesper Dangaard Brouer wrote: >> On Wed, 2009-06-24 at 07:23 +0100, Chrissie Caulfield wrote: >>> The issues with DECnet module unloading are a little more than >>> just an >>> RCU leak I think! >>> >>> Though that area does need reviewing ... when I get some time. >> >> Fine. Now you have read my comment in the code, then there is a >> updated >> patch below. Will you ack-that? > I don't have any objection to the patch at all, it just seemed a little odd to deliberately add code inside #if 0 ;-) Chrissie > Sorry wrong patch... forgot save the code and 'stg refresh'... > > [PATCH 07/10] decnet: Use rcu_barrier() on module unload. > > From: Jesper Dangaard Brouer <hawk@comx.dk> > > The decnet module unloading as been disabled with a '#if 0' statement, > because it have had issues. > > We add a rcu_barrier() anyhow for correctness. > > The maintainer (Chrissie Caulfield) will look into the unload issue > when time permits. > > Signed-off-by: Jesper Dangaard Brouer <hawk@comx.dk> > --- > > net/decnet/af_decnet.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > > diff --git a/net/decnet/af_decnet.c b/net/decnet/af_decnet.c > index d351b8d..77d4028 100644 > --- a/net/decnet/af_decnet.c > +++ b/net/decnet/af_decnet.c > @@ -2413,6 +2413,8 @@ static void __exit decnet_exit(void) > proc_net_remove(&init_net, "decnet"); > > proto_unregister(&dn_proto); > + > + rcu_barrier_bh(); /* Wait for completion of call_rcu_bh()'s */ > } > module_exit(decnet_exit); > #endif > > -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, 2009-06-24 at 14:50 +0100, Chrissie Caulfield wrote: > I don't have any objection to the patch at all, Thus assuming an: Acked-by: Chrissie Caulfield <christine.caulfield@googlemail.com> (wondering if patchworks picks this up...) > it just seemed a > little odd to deliberately add code inside #if 0 ;-) Yes, but it makes sense if you want to fix that code path later on. And I'm not the only one who have added code here... git blame: fa34ddd7 (Thomas Graf 2007-03-22 11:57:46 -0700 2401) 457c4cbc (Eric W. Biederman 2007-09-12 12:01:34 +0200 2413) Cheers, -- Med venlig hilsen / Best regards Jesper Brouer ComX Networks A/S Linux Network developer Cand. Scient Datalog / MSc. Author of http://adsl-optimizer.dk LinkedIn: http://www.linkedin.com/in/brouer -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Jesper Dangaard Brouer <jdb@comx.dk> Date: Thu, 25 Jun 2009 13:52:09 +0200 > On Wed, 2009-06-24 at 14:50 +0100, Chrissie Caulfield wrote: >> I don't have any objection to the patch at all, > > Thus assuming an: > > Acked-by: Chrissie Caulfield <christine.caulfield@googlemail.com> > > (wondering if patchworks picks this up...) It usually does. However, could you formally resubmit just the networking bits as that would make life a lot easier for me. Thanks a lot Jesper! -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, 25 Jun 2009, David Miller wrote: > However, could you formally resubmit just the networking bits > as that would make life a lot easier for me. As maintainer of now three kernel subsystems, you are allowed to push work my way... And thanks to StGit (http://www.procode.org/stgit/) picking the patchset a part is easy :-) (kudos to Catalin Marinas) I'll resubmit the patches to you and netdev, to limit the spam effect... Thus, you are getting 5 of the patches 02, 03, 04, 06 and 07. And I have added the Acked-by's. And Patrick has already picked up the netfilter patch. > Thanks a lot Jesper! You are welcome :-) Cheers, Jesper Brouer -- ------------------------------------------------------------------- MSc. Master of Computer Science Dept. of Computer Science, University of Copenhagen Author of http://www.adsl-optimizer.dk ------------------------------------------------------------------- -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, 26 Jun 2009, Jesper Dangaard Brouer wrote:
> I'll resubmit the patches to you and netdev, to limit the spam effect...
Out of curiosity: why was linux-ext4 Cc'ed on these rcu_barrier patches
(but not other fs-lists but linux-nfs)? I did not see any ../fs/ext4/
changes.
Christian.
On Fri, 2009-06-26 at 20:15 -0700, Christian Kujau wrote: > On Fri, 26 Jun 2009, Jesper Dangaard Brouer wrote: > > I'll resubmit the patches to you and netdev, to limit the spam effect... > > Out of curiosity: why was linux-ext4 Cc'ed on these rcu_barrier patches > (but not other fs-lists but linux-nfs)? I did not see any ../fs/ext4/ > changes. There was a ../fs/ext4/ change in patch [01/10]. Titled: "ext4: Use rcu_barrier() on module unload" git show --stat d6a4ea73b7e8779607dd48735d9a9c521c890857 commit d6a4ea73b7e8779607dd48735d9a9c521c890857 Author: Jesper Dangaard Brouer <hawk@comx.dk> Date: Tue Jun 23 15:40:54 2009 +0200 ext4: Use rcu_barrier() on module unload. The ext4 module uses rcu_call() thus it should use rcu_barrier()on module unload. The kmem cache ext4_pspace_cachep is sometimes free'ed using call_rcu() callbacks. Thus, we must wait for completion of call_rcu() before doing kmem_cache_destroy(). I have difficult determining if no new call_rcu() callbacks can be envoked. Would the maintainer please verify this? Signed-off-by: Jesper Dangaard Brouer <hawk@comx.dk> fs/ext4/mballoc.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/net/decnet/af_decnet.c b/net/decnet/af_decnet.c index d351b8d..77d4028 100644 --- a/net/decnet/af_decnet.c +++ b/net/decnet/af_decnet.c @@ -2413,6 +2413,8 @@ static void __exit decnet_exit(void) proc_net_remove(&init_net, "decnet"); proto_unregister(&dn_proto); + + rcu_barrier_bh(); /* Wait for completion of call_rcu_bh()'s */ } module_exit(decnet_exit); #endif