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
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 16 Jun 2010 00:37:47 +0200
From:	Sven Eckelmann <sven.eckelmann@....de>
To:	b.a.t.m.a.n@...ts.open-mesh.org
Cc:	devel <devel@...verdev.osuosl.org>,
	b.a.t.m.a.n@...ts.open-mesh.net,
	"Greg Kroah-Hartman" <gregkh@...e.de>,
	linux-kernel@...r.kernel.org,
	Simon Wunderlich <siwu@....tu-chemnitz.de>,
	Joe Perches <joe@...ches.com>,
	Marek Lindner <lindner_marek@...oo.de>
Subject: Re: [B.A.T.M.A.N.] [PATCH] drivers/staging/batman-adv: Use (pr|netdev)_<level> macro helpers

Sven Eckelmann wrote:
[...]
> Found some time to play a little bit around with your patch and noticed
> that it crashes the kernel. I did my tests using following "interesting"
> part:
> 
[...]
> 
> I compiled the module and loaded it using `insmod batman-adv.ko`. This will
> create some files in /sys. Just changed the vis mode to server using:
> 
> echo 0 > /sys/class/net/bat0/mesh/vis_mode
> 
> And then it will crash at that netdev_info call.
> 
> The problem seems to be that dev_printk is used by netdev_printk (which is
> used by netdev_info). netdev_printk will add (netdev)->dev.parent as second
> parameter of dev_printk (and parent is NULL in our case). This macro will
> now call dev_driver_string with NULL as parameter and just dereference
> this null pointer.
> 
> Maybe it is related to something else, but at least I think that this could
> be the cause of the crash.

Something i forgot to say:

As far as I understand, the netdev_* stuff is made to be used by real drivers 
with more or less physical hardware. batman-adv is a virtual bridge used for 
mesh networks. Like net/bridge/ it has no physical parent device and only 
other net_devices are used inside of it - which may have real physical network 
devices as parents.

Please correct me if my assumption is wrong.

Best regards,
	Sven

Download attachment "signature.asc " of type "application/pgp-signature" (837 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ