diff options
author | Nikolay Aleksandrov <nikolay@redhat.com> | 2013-09-19 15:02:36 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-09-19 14:15:53 -0400 |
commit | c71380ff0b199f1e8be5ca46dd91262f7fbe4cb4 (patch) | |
tree | 4d753b6aa3cb50f68f15e85b02cc7f17a443c802 /drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c | |
parent | d0fe8c888b1fd1a2f84b9962cabcb98a70988aec (diff) | |
download | blackbird-obmc-linux-c71380ff0b199f1e8be5ca46dd91262f7fbe4cb4.tar.gz blackbird-obmc-linux-c71380ff0b199f1e8be5ca46dd91262f7fbe4cb4.zip |
netconsole: fix a deadlock with rtnl and netconsole's mutex
This bug was introduced by commit
7a163bfb7ce50895bbe67300ea610d31b9c09230 ("netconsole: avoid a crash with
multiple sysfs writers"). In store_enabled() we have the following
sequence: acquire nt->mutex then rtnl, but in the netconsole netdev
notifier we have rtnl then nt->mutex effectively leading to a deadlock.
The NULL pointer dereference that the above commit tries to fix is
actually due to another bug in netpoll_cleanup(). This is fixed by dropping
the mutex from the netdev notifier as it's already protected by rtnl.
Signed-off-by: Nikolay Aleksandrov <nikolay@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c')
0 files changed, 0 insertions, 0 deletions