net/mlx5e: Fix possible non-initialized struct usage
authorVladyslav Tarasiuk <vladyslavt@nvidia.com>
Tue, 13 Apr 2021 08:15:49 +0000 (11:15 +0300)
committerSaeed Mahameed <saeedm@nvidia.com>
Tue, 20 Apr 2021 03:17:06 +0000 (20:17 -0700)
commit6a5689ba0259acded00f69856fc364b158c54c2e
tree190eebc289b79fa87b53889558a443e6ce5e79b3
parentd408c01caef41d8ab1b43203164c8b6cbf18d084
net/mlx5e: Fix possible non-initialized struct usage

If mlx5e_devlink_port_register() fails, driver may try to register
devlink health TX and RX reporters on non-registered devlink port.

Instead, create health reporters only if mlx5e_devlink_port_register()
does not fail. And destroy reporters only if devlink_port is registered.

Also, change mlx5e_get_devlink_port() behavior and return NULL in case
port is not registered to replicate devlink's wrapper when ndo is not
implemented.

Signed-off-by: Vladyslav Tarasiuk <vladyslavt@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
drivers/net/ethernet/mellanox/mlx5/core/en/devlink.c
drivers/net/ethernet/mellanox/mlx5/core/en_main.c