[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20130904.145611.744777528462788964.davem@davemloft.net>
Date: Wed, 04 Sep 2013 14:56:11 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: sergei.shtylyov@...entembedded.com
Cc: netdev@...r.kernel.org, nobuhiro.iwamatsu.yj@...esas.com,
linux-sh@...r.kernel.org
Subject: Re: [PATCH] sh_eth: fix napi_{en|dis}able() calls racing against
interrupts
From: Sergei Shtylyov <sergei.shtylyov@...entembedded.com>
Date: Wed, 4 Sep 2013 02:41:27 +0400
> While implementing NAPI for the driver, I overlooked the race conditions where
> interrupt handler might have called napi_schedule_prep() before napi_enable()
> was called or after napi_disable() was called. If RX interrupt happens, this
> would cause the endless interrupts and messages like:
>
> sh-eth eth0: ignoring interrupt, status 0x00040000, mask 0x01ff009f.
>
> The interrupt wouldn't even be masked by the kernel eventually since the handler
> would return IRQ_HANDLED all the time.
>
> As a fix, move napi_enable() call before request_irq() call and napi_disable()
> call after free_irq() call.
>
> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@...entembedded.com>
Applied and queued up for -stable, thanks!
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists