From patchwork Thu Dec 31 07:11:39 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhu Yanjun X-Patchwork-Id: 561844 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 74129140BC5 for ; Thu, 31 Dec 2015 18:12:23 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751858AbbLaHMT (ORCPT ); Thu, 31 Dec 2015 02:12:19 -0500 Received: from mail5.windriver.com ([192.103.53.11]:57260 "EHLO mail5.wrs.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751769AbbLaHLo (ORCPT ); Thu, 31 Dec 2015 02:11:44 -0500 Received: from ALA-HCA.corp.ad.wrs.com (ala-hca.corp.ad.wrs.com [147.11.189.40]) by mail5.wrs.com (8.15.2/8.15.2) with ESMTPS id tBV7BW97018606 (version=TLSv1 cipher=AES128-SHA bits=128 verify=OK); Wed, 30 Dec 2015 23:11:32 -0800 Received: from sustaining-2.corp.ad.wrs.com (128.224.162.248) by ALA-HCA.corp.ad.wrs.com (147.11.189.50) with Microsoft SMTP Server id 14.3.248.2; Wed, 30 Dec 2015 23:11:32 -0800 From: To: , , , , , , , , , , , CC: , , Subject: [PATCH V6 1/1] ixgbe: synchronize link_up and link_speed of a slave interface Date: Thu, 31 Dec 2015 15:11:39 +0800 Message-ID: <1451545899-16584-2-git-send-email-zyjzyj2000@gmail.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1451545899-16584-1-git-send-email-zyjzyj2000@gmail.com> References: <1451540268.3348.108.camel@intel.com> <1451545899-16584-1-git-send-email-zyjzyj2000@gmail.com> MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Zhu Yanjun According to the suggestions from Rustad, Mark D, to all the slave interfaces, the link_speed and link_up should be synchronized since the time span between link_up and link_speed will make some virtual NICs not work well, such as a bonding driver in 802.3ad mode. Signed-off-by: Zhu Yanjun --- drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index aed8d02..fc461b9 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c @@ -6426,6 +6426,11 @@ static void ixgbe_watchdog_link_is_up(struct ixgbe_adapter *adapter) if (netif_carrier_ok(netdev)) return; + /* For all slave interfaces, wait for the link_speed to be known. */ + if ((netdev->flags & IFF_SLAVE) && + (link_speed == IXGBE_LINK_SPEED_UNKNOWN)) + return; + adapter->flags2 &= ~IXGBE_FLAG2_SEARCH_FOR_SFP; switch (hw->mac.type) {