]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
ixgbe: move reset code into a separate function
authorEmil Tantilov <emil.s.tantilov@intel.com>
Fri, 13 May 2011 02:22:45 +0000 (02:22 +0000)
committerJoe Jin <joe.jin@oracle.com>
Fri, 3 Feb 2012 01:15:52 +0000 (09:15 +0800)
Move reset code into a separate function to allow for reuse in other
parts of the code.

Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
(cherry picked from commit c988ee829074073d3cd80090ef56a6e370b5c9b4)

Signed-off-by: Joe Jin <joe.jin@oracle.com>
drivers/net/ixgbe/ixgbe_ethtool.c

index 4a3abc68f7d5daabf760c74d4efddc021c81faf5..ec5f2842f5d345ce476bafd0c4ada232ae8d1494 100644 (file)
@@ -441,6 +441,16 @@ static int ixgbe_set_pauseparam(struct net_device *netdev,
        return 0;
 }
 
+static void ixgbe_do_reset(struct net_device *netdev)
+{
+       struct ixgbe_adapter *adapter = netdev_priv(netdev);
+
+       if (netif_running(netdev))
+               ixgbe_reinit_locked(adapter);
+       else
+               ixgbe_reset(adapter);
+}
+
 static u32 ixgbe_get_rx_csum(struct net_device *netdev)
 {
        struct ixgbe_adapter *adapter = netdev_priv(netdev);
@@ -2253,12 +2263,8 @@ static int ixgbe_set_coalesce(struct net_device *netdev,
         * correctly w.r.t stopping tx, and changing TXDCTL.WTHRESH settings
         * also locks in RSC enable/disable which requires reset
         */
-       if (need_reset) {
-               if (netif_running(netdev))
-                       ixgbe_reinit_locked(adapter);
-               else
-                       ixgbe_reset(adapter);
-       }
+       if (need_reset)
+               ixgbe_do_reset(netdev);
 
        return 0;
 }
@@ -2332,12 +2338,8 @@ static int ixgbe_set_flags(struct net_device *netdev, u32 data)
                need_reset = true;
        }
 
-       if (need_reset) {
-               if (netif_running(netdev))
-                       ixgbe_reinit_locked(adapter);
-               else
-                       ixgbe_reset(adapter);
-       }
+       if (need_reset)
+               ixgbe_do_reset(netdev);
 
        return 0;
 }