ionic: stop devlink warn on mgmt device
authorShannon Nelson <snelson@pensando.io>
Tue, 17 Mar 2020 03:22:06 +0000 (20:22 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 18 Mar 2020 04:18:25 +0000 (21:18 -0700)
If we don't set a port type, the devlink code will eventually
print a WARN in the kernel log.  Because the mgmt device is
not really a useful port, don't register it as a devlink port.

Fixes: b3f064e9746d ("ionic: add support for device id 0x1004")
Signed-off-by: Shannon Nelson <snelson@pensando.io>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/pensando/ionic/ionic_devlink.c

index ed14164..273c889 100644 (file)
@@ -77,12 +77,16 @@ int ionic_devlink_register(struct ionic *ionic)
                return err;
        }
 
+       /* don't register the mgmt_nic as a port */
+       if (ionic->is_mgmt_nic)
+               return 0;
+
        devlink_port_attrs_set(&ionic->dl_port, DEVLINK_PORT_FLAVOUR_PHYSICAL,
                               0, false, 0, NULL, 0);
        err = devlink_port_register(dl, &ionic->dl_port, 0);
        if (err)
                dev_err(ionic->dev, "devlink_port_register failed: %d\n", err);
-       else if (!ionic->is_mgmt_nic)
+       else
                devlink_port_type_eth_set(&ionic->dl_port,
                                          ionic->master_lif->netdev);
 
@@ -93,6 +97,7 @@ void ionic_devlink_unregister(struct ionic *ionic)
 {
        struct devlink *dl = priv_to_devlink(ionic);
 
-       devlink_port_unregister(&ionic->dl_port);
+       if (ionic->dl_port.registered)
+               devlink_port_unregister(&ionic->dl_port);
        devlink_unregister(dl);
 }