lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 29 Aug 2014 06:57:55 +0300 (EEST) From: Julian Anastasov <ja@....bg> To: Simon Kirby <sim@...tway.ca> cc: "Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>, "Eric W. Biederman" <ebiederm@...ssion.com>, linux-kernel@...r.kernel.org, netdev@...r.kernel.org Subject: Re: net_ns cleanup / RCU overhead Hello, On Thu, 28 Aug 2014, Simon Kirby wrote: > I noticed that [kworker/u16:0]'s stack is often: > > [<ffffffff810942a6>] wait_rcu_gp+0x46/0x50 > [<ffffffff8109607e>] synchronize_sched+0x2e/0x50 > [<ffffffffa00385ac>] nf_nat_net_exit+0x2c/0x50 [nf_nat] I guess the problem is in nf_nat_net_exit, may be other nf exit handlers too. pernet-exit handlers should avoid synchronize_rcu and rcu_barrier. A RCU callback and rcu_barrier in module-exit is the way to go. cleanup_net includes rcu_barrier, so pernet-exit does not need such calls. > [<ffffffff81720339>] ops_exit_list.isra.4+0x39/0x60 > [<ffffffff817209e0>] cleanup_net+0xf0/0x1a0 > [<ffffffff81062997>] process_one_work+0x157/0x440 > [<ffffffff81063303>] worker_thread+0x63/0x520 > [<ffffffff81068b96>] kthread+0xd6/0xf0 > [<ffffffff818d412c>] ret_from_fork+0x7c/0xb0 > [<ffffffffffffffff>] 0xffffffffffffffff Regards -- Julian Anastasov <ja@....bg> -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists