mac802154: Avoid rtnl deadlock in mac802154_wpan_ioctl().
authorLennert Buytenhek <buytenh@wantstofly.org>
Tue, 26 May 2015 12:06:10 +0000 (15:06 +0300)
committerMarcel Holtmann <marcel@holtmann.org>
Tue, 26 May 2015 16:03:01 +0000 (18:03 +0200)
commite34fd879f5516496c7241c9c2caf3a108295a30c
tree2c543fe67e4d3ef3d8a93bf00df71035f959f7bc
parentf72186d22aad44100e2dd17ccdcf13c4418ec3cb
mac802154: Avoid rtnl deadlock in mac802154_wpan_ioctl().

->ndo_do_ioctl() can be entered with the rtnl lock already held,
for example when sending a wext ioctl to a device (in which case
the rtnl lock is taken by wext_ioctl_dispatch()), but
mac802154_wpan_ioctl() currently unconditionally takes the rtnl
lock on entry, which can cause deadlocks.

To fix this, bail out of mac802154_wpan_ioctl() before taking the
rtnl lock if the ioctl cmd is not one of the cmds we implement.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Acked-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
net/mac802154/iface.c