[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <266eae62-bef2-6c51-415f-cbacc1669e30@redhat.com>
Date: Wed, 14 Mar 2018 13:27:41 -0400
From: Jonathan Toppins <jtoppins@...hat.com>
To: Michael Chan <michael.chan@...adcom.com>
Cc: Netdev <netdev@...r.kernel.org>,
Andy Gospodarek <andy@...yhouse.net>,
Siva Reddy Kallam <siva.kallam@...adcom.com>,
Prashant Sreedharan <prashant@...adcom.com>,
Michael Chan <mchan@...adcom.com>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH net] tg3: prevent scheduling while atomic splat
On 03/14/2018 01:22 PM, Michael Chan wrote:
> On Wed, Mar 14, 2018 at 9:36 AM, Jonathan Toppins <jtoppins@...hat.com> wrote:
>> The problem was introduced in commit
>> 506b0a395f26 ("[netdrv] tg3: APE heartbeat changes"). The bug occurs
>> because tp->lock spinlock is held which is obtained in tg3_start
>> by way of tg3_full_lock(), line 11571. The documentation for usleep_range()
>> specifically states it cannot be used inside a spinlock.
>>
>> Fixes: 506b0a395f26 ("[netdrv] tg3: APE heartbeat changes")
>> Signed-off-by: Jonathan Toppins <jtoppins@...hat.com>
>> ---
>>
>> Notes:
>> The thing I need reviewed from Broadcom is if the udelay should be 20
>> instead of 10, due to any timing changes introduced by the offending
>> patch.
>
> Thanks. 10 us is correct.
>
> As a future improvement, we might want to see if we can release the
> spinlock and go back to usleep_range(). The wait time is potentially
> up to 20 msec which is quite long.
Agreed, glad it is not just me wondering why a lock needs to be held for
reads. :-)
Powered by blists - more mailing lists