Messages in this thread | | | From | Sven Eckelmann <> | Subject | Re: [B.A.T.M.A.N.] [PATCH] drivers/staging/batman-adv: Use (pr|netdev)_<level> macro helpers | Date | Wed, 16 Jun 2010 00:37:47 +0200 |
| |
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 [unhandled content-type:application/pgp-signature] | |