On Sat, Oct 2, 2021 at 10:27 AM Jeremy Kerr jk@codeconstruct.com.au wrote:
The MCTP device isn't available until we've registered the netdev, so defer storing our convenience pointer.
Signed-off-by: Jeremy Kerr jk@codeconstruct.com.au
Haha -- you sent this just as I'd come up with the same patch here. :-)
With these changes, alongside the rt->dev == NULL in mctp_route_release() crash fix mentioned in [1], the tests all pass on my system. (They also pass under KASAN, which bodes well.)
This fix is, Reviewed-by: David Gow davidgow@google.com
Cheers, -- David
[1]: https://lore.kernel.org/linux-kselftest/163309440949.24017.15314464452259318...
net/mctp/test/utils.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/net/mctp/test/utils.c b/net/mctp/test/utils.c index e2ab1f3da357..cc6b8803aa9d 100644 --- a/net/mctp/test/utils.c +++ b/net/mctp/test/utils.c @@ -46,17 +46,17 @@ struct mctp_test_dev *mctp_test_create_dev(void) dev = netdev_priv(ndev); dev->ndev = ndev;
rcu_read_lock();
dev->mdev = __mctp_dev_get(ndev);
mctp_dev_hold(dev->mdev);
rcu_read_unlock();
rc = register_netdev(ndev); if (rc) { free_netdev(ndev); return NULL; }
rcu_read_lock();
dev->mdev = __mctp_dev_get(ndev);
mctp_dev_hold(dev->mdev);
rcu_read_unlock();
return dev;
}
-- 2.30.2