Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp3879125ybz; Mon, 4 May 2020 11:22:45 -0700 (PDT) X-Google-Smtp-Source: APiQypKygM3aFMaa+bGXAmCyxUrQDvXpxvOAWsiyvbGvbA9Qk4pjGnUcnGC0FccbnPpZuKwrQshc X-Received: by 2002:a50:e68e:: with SMTP id z14mr16272387edm.307.1588616565175; Mon, 04 May 2020 11:22:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588616565; cv=none; d=google.com; s=arc-20160816; b=ooDpTzBrvmTBQPHFu8oDtAY6hBdLgbEDpAzJQByYgUXYs/I1BjbNg5/nml1BC8buNm 7xxwv0p35PNMCYaVUmqGH+15uweY/Dc+BebSr7kT0vnbZj9EtpMkstFRC/08ODCjI9ua iN+2JSsTDR1USJCfb1N+DBeqGJp6N1AAu56WBhQgJMRxeYAfutrFPHLlSfEPybyPUZh6 cDf6pvktDW+vOSQNMS2DpYxD0zXt+K8OpnrWewdPcpDvTBSxtWfg4bx9Setxc5bJGwVn ANh1Dx4TA/aytXPhq78Lk+p2UYy/LR5NiOXjO34ZTm9GO7T+17vJz/GvSZ+GpVfXFGp6 3R0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:from:subject:cc:to:message-id:date; bh=xO6xtj0TKz69DfNlDilqaurTSR9+aK5JinabFyRZ+90=; b=KinJIe2TowZbCxO+DwwLToKAWSS5vI4Ho9whYQn9Dwmy3U5ZhfSzDivnusZ0A6eoLW XU9bGyO19fd52xXRV1Z4KB/ofQ/fHKm7CzX9Uaj9edbDtChr4bvSymz7AOYa5XP98RqZ P0BL4ejAskV4zyqHHQNPFm5EUpwz9ABfDvthLnCQMVeo6JoIel88pIYfPHRACnVYa6wr ZxP4pMdyI8AwfS93veRPdz0vnM5Orzko2tFLOa2S7VC7qSTsd/QXIC8oaGEsMc419m3y ZQoCSgTNBCbhxG+TwU57HLEI+mCBsAgNdh4vTOAUW++Wyj33W5whugjDnkfLnsbYCIHe I24A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bc23si7003379edb.241.2020.05.04.11.22.21; Mon, 04 May 2020 11:22:45 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730696AbgEDSU5 (ORCPT + 99 others); Mon, 4 May 2020 14:20:57 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60226 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1729958AbgEDSU5 (ORCPT ); Mon, 4 May 2020 14:20:57 -0400 Received: from shards.monkeyblade.net (shards.monkeyblade.net [IPv6:2620:137:e000::1:9]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 33846C061A0E; Mon, 4 May 2020 11:20:57 -0700 (PDT) Received: from localhost (unknown [IPv6:2601:601:9f00:477::3d5]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: davem-davemloft) by shards.monkeyblade.net (Postfix) with ESMTPSA id C311711F5F61A; Mon, 4 May 2020 11:20:56 -0700 (PDT) Date: Mon, 04 May 2020 11:20:56 -0700 (PDT) Message-Id: <20200504.112056.1400711844642835898.davem@davemloft.net> To: kai.heng.feng@canonical.com Cc: jeffrey.t.kirsher@intel.com, intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] igb: Report speed and duplex as unknown when device is runtime suspended From: David Miller In-Reply-To: <20200504173218.1724-1-kai.heng.feng@canonical.com> References: <20200504173218.1724-1-kai.heng.feng@canonical.com> X-Mailer: Mew version 6.8 on Emacs 26.1 Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Mon, 04 May 2020 11:20:57 -0700 (PDT) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Kai-Heng Feng Date: Tue, 5 May 2020 01:32:18 +0800 > igb device gets runtime suspended when there's no link partner. We can't > get correct speed under that state: > $ cat /sys/class/net/enp3s0/speed > 1000 > > In addition to that, an error can also be spotted in dmesg: > [ 385.991957] igb 0000:03:00.0 enp3s0: PCIe link lost > > Since device can only be runtime suspended when there's no link partner, > we can directly report the speed and duplex as unknown. > > The more generic approach will be wrap get_link_ksettings() with begin() > and complete() callbacks. However, for this particular issue, begin() > calls igb_runtime_resume() , which tries to rtnl_lock() while the lock > is already hold by upper ethtool layer. > > So let's take this approach until the igb_runtime_resume() no longer > needs to hold rtnl_lock. > > Suggested-by: Alexander Duyck > Signed-off-by: Kai-Heng Feng I'm assuming I will get this from upstream via Jeff K.