Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp55934imm; Tue, 18 Sep 2018 16:27:57 -0700 (PDT) X-Google-Smtp-Source: ANB0Vdapxk94BuR6E5PjAiERniafjJpKsIr5qXWRNFEYRNOnOqfP0WrZ01FYLped7SVgkYWnue1t X-Received: by 2002:a63:b705:: with SMTP id t5-v6mr28058016pgf.366.1537313277228; Tue, 18 Sep 2018 16:27:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1537313277; cv=none; d=google.com; s=arc-20160816; b=P+OCtkD0oFhKtMpKU7LCM8vY2jVN2rGHddeDOcq5kC7UYu9qBLCtU3wofZkAmtQZFF suHHZlcQPcC5zRJFDASv8A+wmZvE4juAli2g9qZnK0gKwLjdeAk11yCuQg+nG7cwNwuR XnK++QSqVOHLxu/G7Z1qi3oEMBifVG/hZQbVBqKegQBiXXxOEMa7pQu+UnBRDuhBWD6w cejFhdz6fjRtpWToz/MgNYPd+fyykiW5svsxdtbGNUW4hI+Nju5wytSU1ifygowSeSIe 2WT+PMoZjDnGS02HxGLBDlnaBEBowfziKVX/CCfvcz0ltp/TVrw9XzdJKi0RceqXqd2v t5Bg== 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 :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature; bh=BpGSiAICmIavRhhMn7mZEwLTU1xruMCg7GgldrWCXSc=; b=FrQ7JtYzizdarOD1BvpWhBuh8/isdl9SolckBSEoN9sVGa6rgDEcuXd/nFa2SmXd/t kp6OcvVbBu14ChOeGcrvK3u9AgS4plapldS0SbLnlzm3Q07RKcUMf/Xjp+2BtNwFwHnu E+JkPj5xdFjEN0g38kLeCYfU7mXdaBpvQ+8AwxWjGjhnMsMy1/QmLxfcfh+IvJ08pmTt 0zRttW1EEj/gZh1pdMKavevsBZyFPRhUH2UObTdratpi+cCBguxcvjUc2F419iDsEvzD c+nrJAe7syYuPEggNAyakIV+RAUa9iU6SgaPaB7YP+TD5hdeq+qOqvcBRnnOHuStdlFu MYyA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=QL7Gq4Fq; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z21-v6si17143359pgu.163.2018.09.18.16.27.39; Tue, 18 Sep 2018 16:27:57 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=QL7Gq4Fq; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730438AbeISFC0 (ORCPT + 99 others); Wed, 19 Sep 2018 01:02:26 -0400 Received: from mail-pf1-f196.google.com ([209.85.210.196]:35338 "EHLO mail-pf1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726960AbeISFC0 (ORCPT ); Wed, 19 Sep 2018 01:02:26 -0400 Received: by mail-pf1-f196.google.com with SMTP id p12-v6so1749355pfh.2; Tue, 18 Sep 2018 16:27:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=BpGSiAICmIavRhhMn7mZEwLTU1xruMCg7GgldrWCXSc=; b=QL7Gq4FqMrbMDnonX2nTG64iOA8lr780brgGcIvoZJ1V0rbrZCm2M5VfmGd5W59YVy l1YTz9YcgrqOOLtPflDyOwifzmEHgYBK+4YohDIg1iBJh2v2mB/5yAIwpjI33ZXSkdhV byaNsUE9/9YtZ1AaC1w7soRbHiGOP2uWfumNg1dQpTguQgKJp3YhMI4E4r3GJtHxt85O lLje4kNdEPMJjilUDe9T9IyMNBdA09YhnUWKoD15Qufd3EpmwbAZbbQ+kCFoqqRh275l wmp9GcEttCpcZZBhIARSh3gPmK25qdrdzJEqn5Dn7qcwzao18TbH4EubKzb1Ktz6aq3e 7+4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=BpGSiAICmIavRhhMn7mZEwLTU1xruMCg7GgldrWCXSc=; b=iWNMdP45dNv8Lac2gG3XLfOQsl6kUDfRFdcWquh2HVaE9D2JCEMRO4WL6jOgBLrufC lExHG3cLVvwvxh4zNB2jTOKPlm1kiGbHZHijzo9t5v38Fx07rKM+ZvbPAuyMn1HN2raX kZnKM1zxc30sqeOq0cny5vwhSXUu+E1sVoep+9RpsSku/GIU6/WldqrNMcabRXvyoZYK 1Ws/Yx8LkcgbFXcqpclBAkdyyCcSW7jYx2befFI8iQ9X2B8bj5/EtqYuDQF53GEZnE/m YB9KEH5NSqm1Ojkc2yVz8b+Do2/dXr09GR3BIjst1O94r1QrSKIEDWkDg//ZDhhoNlsJ vHow== X-Gm-Message-State: APzg51CqMlVta2MF0oGqJDVYrctqfl+UqxEMqzhuB14LG0XD7at9ekM1 k3LDA+zO6+sNhLp9EKOVhnk= X-Received: by 2002:a62:3241:: with SMTP id y62-v6mr33057401pfy.4.1537313250481; Tue, 18 Sep 2018 16:27:30 -0700 (PDT) Received: from ?IPv6:2620:15c:2c1:200:55c7:81e6:c7d8:94b? ([2620:15c:2c1:200:55c7:81e6:c7d8:94b]) by smtp.gmail.com with ESMTPSA id z22-v6sm26992542pgc.67.2018.09.18.16.27.29 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 18 Sep 2018 16:27:29 -0700 (PDT) Subject: Re: [PATCH] net: apm: xgene: force XGene enet driver to re-balance IRQ usage To: Florian Fainelli , ahs3@redhat.com, "Lendacky, Thomas" , David Miller Cc: "netdev@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "isubramanian@apm.com" , "kchudgar@apm.com" , "qnguyen@apm.com" References: <20180917233533.28626-1-ahs3@redhat.com> <20180917.193531.1424852853827678152.davem@davemloft.net> <4929e93d-508a-4670-9450-66e4fc85be7e@redhat.com> From: Eric Dumazet Message-ID: Date: Tue, 18 Sep 2018 16:27:28 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 09/18/2018 04:21 PM, Florian Fainelli wrote: > On 09/18/2018 04:15 PM, Al Stone wrote: >> On 09/18/2018 05:09 PM, Lendacky, Thomas wrote: >>> >>> >>> On 09/17/2018 09:35 PM, David Miller wrote: >>>> From: Al Stone >>>> Date: Mon, 17 Sep 2018 17:35:33 -0600 >>>> >>>>> @@ -866,8 +866,11 @@ static int xgene_enet_napi(struct napi_struct *napi, const int budget) >>>>> processed = xgene_enet_process_ring(ring, budget); >>>>> >>>>> if (processed != budget) { >>>>> + struct irq_desc *desc = irq_to_desc(ring->irq); >>>>> + >>>>> napi_complete_done(napi, processed); >>> >>> The problem could be that the driver isn't checking the >>> napi_complete_done() return code. It was changed to return a bool and >>> the check should be more like: >>> >>> if ((processed != budget) && napi_complete_done(napi, processed)) { >>> >>> If it returns false, then the driver will get called for polling again >>> after having issued enable_irq() and it well then issue the enable_irq() >>> a second (or more) time without having the matching diable_irq(). >>> >>> Thanks, >>> Tom >> >> Aha, that might be. My apologies -- I play in ACPI but seldom in the network >> drivers, so was not fully aware of that change. I can give that a try. >> >> Thanks for the pointer. > > FWIW this is being discussed in this thread as well: > > https://www.spinics.net/lists/netdev/msg523760.html > > there should be an update to drivers that have a ndo_poll_controller() > and don't check napi_complete_done(), though I am not clear who is doing > that yet. That might be tricky. I remember one of the napi_complete_done() change had to be reverted, for some obscure reason. So clearly, doing a mass update (without being able to test the driver on real hardware) might be risky.