mirror of
https://github.com/torvalds/linux
synced 2024-09-20 19:17:24 +00:00
netdevsim: Register devlink rate leaf objects per VF
Register devlink rate leaf objects per VF. Co-developed-by: Vlad Buslov <vladbu@nvidia.com> Signed-off-by: Vlad Buslov <vladbu@nvidia.com> Signed-off-by: Dmytro Linkin <dlinkin@nvidia.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
4677efc486
commit
885dfe121b
|
@ -1055,11 +1055,20 @@ static int __nsim_dev_port_add(struct nsim_dev *nsim_dev, enum nsim_dev_port_typ
|
|||
goto err_port_debugfs_exit;
|
||||
}
|
||||
|
||||
if (nsim_dev_port_is_vf(nsim_dev_port)) {
|
||||
err = devlink_rate_leaf_create(&nsim_dev_port->devlink_port,
|
||||
nsim_dev_port);
|
||||
if (err)
|
||||
goto err_nsim_destroy;
|
||||
}
|
||||
|
||||
devlink_port_type_eth_set(devlink_port, nsim_dev_port->ns->netdev);
|
||||
list_add(&nsim_dev_port->list, &nsim_dev->port_list);
|
||||
|
||||
return 0;
|
||||
|
||||
err_nsim_destroy:
|
||||
nsim_destroy(nsim_dev_port->ns);
|
||||
err_port_debugfs_exit:
|
||||
nsim_dev_port_debugfs_exit(nsim_dev_port);
|
||||
err_dl_port_unregister:
|
||||
|
@ -1074,6 +1083,8 @@ static void __nsim_dev_port_del(struct nsim_dev_port *nsim_dev_port)
|
|||
struct devlink_port *devlink_port = &nsim_dev_port->devlink_port;
|
||||
|
||||
list_del(&nsim_dev_port->list);
|
||||
if (nsim_dev_port_is_vf(nsim_dev_port))
|
||||
devlink_rate_leaf_destroy(&nsim_dev_port->devlink_port);
|
||||
devlink_port_type_clear(devlink_port);
|
||||
nsim_destroy(nsim_dev_port->ns);
|
||||
nsim_dev_port_debugfs_exit(nsim_dev_port);
|
||||
|
|
Loading…
Reference in a new issue