Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752610AbbBWXIT (ORCPT ); Mon, 23 Feb 2015 18:08:19 -0500 Received: from shards.monkeyblade.net ([149.20.54.216]:38855 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752545AbbBWXIS (ORCPT ); Mon, 23 Feb 2015 18:08:18 -0500 Date: Mon, 23 Feb 2015 18:08:15 -0500 (EST) Message-Id: <20150223.180815.2270832900387656053.davem@davemloft.net> To: vbridger@opensource.altera.com Cc: netdev@vger.kernel.org, nios2-dev@lists.rocketboards.org, linux-kernel@vger.kernel.org, vbridger@altera.com, setka@vsis.cz, rpisl@kky.zcu.cz Subject: Re: [PATCH net-next] altera_tse: Fixes in NAPI and interrupt handling paths From: David Miller In-Reply-To: <1424712629-24330-1-git-send-email-vbridger@opensource.altera.com> References: <1424712629-24330-1-git-send-email-vbridger@opensource.altera.com> X-Mailer: Mew version 6.5 on Emacs 24.1 / Mule 6.0 (HANACHIRUSATO) 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.7 (shards.monkeyblade.net [149.20.54.216]); Mon, 23 Feb 2015 15:08:17 -0800 (PST) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1506 Lines: 37 From: Vince Bridgers Date: Mon, 23 Feb 2015 11:30:29 -0600 > From: Vlastimil Setka > > Incorrect NAPI polling caused WARNING at net/core/dev.c net_rx_action. > Some stability issues were also seen at high throughput and system > load before this patch. > > This patch contains several changes in altera_tse_main.c: > > - tse_rx() is fixed to not process more than `limit` frames > > - tse_poll() is refactored to match NAPI logic > - only received frames are counted for return value > - removed bogus condition `(rxcomplete >= budget || txcomplete > 0)` > - replace by: if (rxcomplete < budget) -> call __napi_complete and enable irq > > - altera_isr() > - replace spin_lock_irqsave() by spin_lock() - we are in isr > - use spinlocks just over irq manipulation, not over __napi_schedule > - reset IRQ first, then disable and schedule napi > > This is a cleaned up resubmission from Vlastimil's recent submission. > > Signed-off-by: Vlastimil Setka > Signed-off-by: Roman Pisl > Signed-off-by: Vince Bridgers This is also a bug fix, and therefore not appropriate to target at 'net-next'. I've applied it to 'net' instead. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/