]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commitdiff
bnxt_en: Log unknown link speed appropriately.
authorMichael Chan <michael.chan@broadcom.com>
Mon, 12 Oct 2020 09:10:51 +0000 (05:10 -0400)
committerStefan Bader <stefan.bader@canonical.com>
Thu, 10 Dec 2020 11:02:56 +0000 (12:02 +0100)
BugLink: https://bugs.launchpad.net/bugs/1904450
[ Upstream commit 8eddb3e7ce124dd6375d3664f1aae13873318b0f ]

If the VF virtual link is set to always enabled, the speed may be
unknown when the physical link is down.  The driver currently logs
the link speed as 4294967295 Mbps which is SPEED_UNKNOWN.  Modify
the link up log message as "speed unknown" which makes more sense.

Reviewed-by: Vasundhara Volam <vasundhara-v.volam@broadcom.com>
Reviewed-by: Edwin Peer <edwin.peer@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Link: https://lore.kernel.org/r/1602493854-29283-7-git-send-email-michael.chan@broadcom.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: William Breathitt Gray <william.gray@canonical.com>
drivers/net/ethernet/broadcom/bnxt/bnxt.c

index cdd3764760ed9415bfbe909dbb260611a9ad5a40..6f777e9b4b93659e383075c018560b9323708ddd 100644 (file)
@@ -8375,6 +8375,11 @@ static void bnxt_report_link(struct bnxt *bp)
                u16 fec;
 
                netif_carrier_on(bp->dev);
+               speed = bnxt_fw_to_ethtool_speed(bp->link_info.link_speed);
+               if (speed == SPEED_UNKNOWN) {
+                       netdev_info(bp->dev, "NIC Link is Up, speed unknown\n");
+                       return;
+               }
                if (bp->link_info.duplex == BNXT_LINK_DUPLEX_FULL)
                        duplex = "full";
                else
@@ -8387,7 +8392,6 @@ static void bnxt_report_link(struct bnxt *bp)
                        flow_ctrl = "ON - receive";
                else
                        flow_ctrl = "none";
-               speed = bnxt_fw_to_ethtool_speed(bp->link_info.link_speed);
                netdev_info(bp->dev, "NIC Link is Up, %u Mbps %s duplex, Flow control: %s\n",
                            speed, duplex, flow_ctrl);
                if (bp->flags & BNXT_FLAG_EEE_CAP)