IB/ipoib: Grab rtnl lock on heavy flush when calling ndo_open/stop
authorAlex Vesker <valex@mellanox.com>
Tue, 10 Oct 2017 07:36:41 +0000 (10:36 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Dec 2017 09:07:33 +0000 (10:07 +0100)
commit2eb165b9fbb722416252c054ac2ef2c3eb777460
treef71a58cb2f9f29bc732df0370fec84b826a94b69
parent0c70b35bf1583fa5fc9134b87d32cf0bc27d5023
IB/ipoib: Grab rtnl lock on heavy flush when calling ndo_open/stop

[ Upstream commit b4b678b06f6eef18bff44a338c01870234db0bc9 ]

When ndo_open and ndo_stop are called RTNL lock should be held.
In this specific case ipoib_ib_dev_open calls the offloaded ndo_open
which re-sets the number of TX queue assuming RTNL lock is held.
Since RTNL lock is not held, RTNL assert will fail.

Signed-off-by: Alex Vesker <valex@mellanox.com>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/infiniband/ulp/ipoib/ipoib_ib.c