lkml.org 
[lkml]   [2015]   [Feb]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH net-next] altera_tse: Fixes in NAPI and interrupt handling paths
From
From: Vince Bridgers <vbridger@opensource.altera.com>
Date: Mon, 23 Feb 2015 11:30:29 -0600

> From: Vlastimil Setka <setka@vsis.cz>
>
> 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 <setka@vsis.cz>
> Signed-off-by: Roman Pisl <rpisl@kky.zcu.cz>
> Signed-off-by: Vince Bridgers <vbridger@opensource.altera.com>

This is also a bug fix, and therefore not appropriate to target at 'net-next'.

I've applied it to 'net' instead.


\
 
 \ /
  Last update: 2015-02-24 00:21    [W:0.029 / U:0.324 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site