On Sat, Oct 2, 2021 at 10:27 AM Jeremy Kerr <jk@xxxxxxxxxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxxxxxxx> > --- 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@xxxxxxxxxx> Cheers, -- David [1]: https://lore.kernel.org/linux-kselftest/163309440949.24017.15314464452259318665.git-patchwork-notify@xxxxxxxxxx/T/#m1a319b6932dd2bffaf78ab2d3b4c399282f7bda2 > 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 >