Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1daf36c0 authored by Jiri Pirko's avatar Jiri Pirko Committed by David S. Miller
Browse files

netdevsim: move device registration on bus to be done earlier in init



As a dependency of the subsequent patch, mode device registration to be
done earlier, directly in nsim_newlink().

Signed-off-by: default avatarJiri Pirko <jiri@mellanox.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 89eb6e09
Loading
Loading
Loading
Loading
+13 −13
Original line number Diff line number Diff line
@@ -174,25 +174,14 @@ static int nsim_init(struct net_device *dev)
	if (err)
		goto err_debugfs_destroy;

	ns->dev.id = nsim_dev_id++;
	ns->dev.bus = &nsim_bus;
	ns->dev.type = &nsim_dev_type;
	err = device_register(&ns->dev);
	if (err)
		goto err_bpf_uninit;

	SET_NETDEV_DEV(dev, &ns->dev);

	err = nsim_devlink_setup(ns);
	if (err)
		goto err_unreg_dev;
		goto err_bpf_uninit;

	nsim_ipsec_init(ns);

	return 0;

err_unreg_dev:
	device_unregister(&ns->dev);
err_bpf_uninit:
	nsim_bpf_uninit(ns);
err_debugfs_destroy:
@@ -514,11 +503,22 @@ static int nsim_newlink(struct net *src_net, struct net_device *dev,
	if (IS_ERR(ns->sdev))
		return PTR_ERR(ns->sdev);

	err = register_netdevice(dev);
	ns->dev.id = nsim_dev_id++;
	ns->dev.bus = &nsim_bus;
	ns->dev.type = &nsim_dev_type;
	err = device_register(&ns->dev);
	if (err)
		goto err_sdev_put;

	SET_NETDEV_DEV(dev, &ns->dev);

	err = register_netdevice(dev);
	if (err)
		goto err_unreg_dev;
	return 0;

err_unreg_dev:
	device_unregister(&ns->dev);
err_sdev_put:
	nsim_sdev_put(ns->sdev);
	return err;