net/mlx5e: Set en auxiliary devlink instance as nested
authorJiri Pirko <jiri@nvidia.com>
Wed, 13 Sep 2023 07:12:43 +0000 (09:12 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sun, 17 Sep 2023 13:01:47 +0000 (14:01 +0100)
Benefit from the previous commit introducing exposure of devlink
instances relationship and set the nested instance for en auxiliary
device.

Signed-off-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlx5/core/en/devlink.c

index c6b6e290fd79d5d62fa6fcc04dfb06e11e3e41d7..0b1ac6e5c8900d1b58370d258f5ca56e39a61b21 100644 (file)
@@ -12,11 +12,19 @@ struct mlx5e_dev *mlx5e_create_devlink(struct device *dev,
 {
        struct mlx5e_dev *mlx5e_dev;
        struct devlink *devlink;
+       int err;
 
        devlink = devlink_alloc_ns(&mlx5e_devlink_ops, sizeof(*mlx5e_dev),
                                   devlink_net(priv_to_devlink(mdev)), dev);
        if (!devlink)
                return ERR_PTR(-ENOMEM);
+
+       err = devl_nested_devlink_set(priv_to_devlink(mdev), devlink);
+       if (err) {
+               devlink_free(devlink);
+               return ERR_PTR(err);
+       }
+
        devlink_register(devlink);
        return devlink_priv(devlink);
 }