[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <552C48F7.5030901@gmx.de>
Date: Tue, 14 Apr 2015 00:53:43 +0200
From: Lino Sanfilippo <LinoSanfilippo@....de>
To: Ben Hutchings <ben.hutchings@...ethink.co.uk>
CC: Sergei Shtylyov <sergei.shtylyov@...entembedded.com>,
robh+dt@...nel.org, pawel.moll@....com, mark.rutland@....com,
ijc+devicetree@...lion.org.uk, devicetree@...r.kernel.org,
galak@...eaurora.org, netdev@...r.kernel.org,
linux-sh@...r.kernel.org
Subject: Re: [PATCH resend] Renesas Ethernet AVB driver
On 14.04.2015 00:31, Ben Hutchings wrote:
>> >> This driver looks somewhat similar to sh-eth, but lacks some of the
>> >> recent bug fixes made to that. At least commit 283e38db65e7 ("sh_eth:
>> >> Fix serialisation of interrupt disable with interrupt & NAPI handler")
>> >> appears to be applicable, but there are probably others.
>> >
>> > I suspect this issue applies to many drivers...
>> > I couldn't reproduce the bug that patch was fixing, so left this fix out
>> > for the time being. Others cases were fixed (if applicable).
>>
>> Maybe its just harder to trigger but it indeed looks similar to what Ben
>> has fixed for sh-eth. I wonder if that shutdown flag in the fix is
>> really needed though. IMHO it should be save if we simply call
>> napi_disable first, then disable irqs on hardware and finally
>> synchronize_irq...
>
> In sh_eth: if we call napi_disable() first, EESR_RX_CHECK can still be
> set and nothing will clear it. If only one CPU is online this can hard
> hang the system. Please trust that I did consider and rule out the
> simpler approaches first.
>
The idea was to check the return value from napi_schedule_prep() and in
case it returns "false" use this as an indication for a shutdown. In
case of sh_eth this would be sh_eth_write(ndev, 0, EESIPR) for example.
Lino
--
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