igb: display a warning message when SmartSpeed works
authorKoki Sanagi <sanagi.koki@jp.fujitsu.com>
Wed, 16 Jan 2013 11:05:53 +0000 (11:05 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Thu, 25 Apr 2013 03:24:18 +0000 (20:24 -0700)
Current igb driver doesn't tell nothing when Link Speed is downgraded due to
SmartSpeed.  As a result, users suspect that there is something wrong with
NIC.  If the cause of it is SmartSpeed, there is no means to replace NIC. This
patch make igb notify users that SmartSpeed worked.

Signed-off-by: Koki Sanagi <sanagi.koki@jp.fujitsu.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/igb/igb_main.c

index b94a3c551d31ed5b61c018ace6cead25a59ce215..93be6eced2e3a54ce8af118f8dda37d3a4464ec9 100644 (file)
@@ -3901,6 +3901,7 @@ static void igb_watchdog_task(struct work_struct *work)
                                                   struct igb_adapter,
                                                   watchdog_task);
        struct e1000_hw *hw = &adapter->hw;
+       struct e1000_phy_info *phy = &hw->phy;
        struct net_device *netdev = adapter->netdev;
        u32 link;
        int i;
@@ -3929,6 +3930,11 @@ static void igb_watchdog_task(struct work_struct *work)
                               (ctrl & E1000_CTRL_RFCE) ?  "RX" :
                               (ctrl & E1000_CTRL_TFCE) ?  "TX" : "None");
 
+                       /* check if SmartSpeed worked */
+                       igb_check_downshift(hw);
+                       if (phy->speed_downgraded)
+                               netdev_warn(netdev, "Link Speed was downgraded by SmartSpeed\n");
+
                        /* check for thermal sensor event */
                        if (igb_thermal_sensor_event(hw,
                            E1000_THSTAT_LINK_THROTTLE)) {