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  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 19 Oct 2009 23:29:10 +0400
From:	Cyrill Gorcunov <>
To:	Eric Dumazet <>
Cc:	Michal Ostrowski <>,
	Denys Fedoryschenko <>,
	netdev <>,,,
Subject: Re: kernel panic in latest vanilla stable, while using nameif with
	"alive" pppoe interfaces

[Eric Dumazet - Mon, Oct 19, 2009 at 08:44:52PM +0200]
| Not really :)
| I dont believe you should care of namespace, and/or mess with its refcount at all.
| Please dont use maybe_get_net() : This function should not ever be used in drivers/net
| You can add a BUG_ON(dev_net(xxxx)->count <= 0) if you really want, but if this
| assertion is false, this is not because of pppoe.
| So pppoe_flush_dev() can run concurently and dev_put(po->ppoe_dev) at same time.
| In fact pppoe_flush_dev() can change po->ppoe_dev anytime, so you should check
| all occurences of po->ppoe_dev use in the code and check if appropriate locking is done.
| pppoe_rcv_core() is not safe
| pppoe_ioctl() is not safe
| pppoe_sendmsg() is not safe
| __pppoe_xmit() is not safe

Sigh... seem so (which is mostly my fault not Michal). Every time we touch pppoe_dev we
should dev_hold on it and dev_put as only done all we need. Async nature
of notifier seem to be a key here.

	-- Cyrill
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to
More majordomo info at

Powered by blists - more mailing lists