lkml.org 
[lkml]   [2013]   [May]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: function call fw_iso_resource_mange(..) (core-iso.c) does not return
On 05/21/2013 05:13 PM, Stefan Richter wrote:
>> FWIW, I still believe that we should revert to the original bus reset
>> as tasklet and redo the TI workaround to use TI-workaround-specific versions
>> of non-sleeping PHY accesses.
>>
>> Regards,
>> Peter Hurley
>
> I am a friend of the self-ID-complete worklet, for two reasons:
> - Even if there was no need for the TI TSB41BA3D workaround (e.g. even
> if we simply stopped supporting TSB41BA3D), it would still be
> worthwhile to have at least the self-ID-complete IRQ BH performed in
> a non-atomic context. We should try to move as much of the
> firewire-core self-ID-complete handler as possible out of the currently
> spinlock protected section in order make more of this stuff
> preemptible and replace a few GFP_ATOMIC slab allocations by GFP_NOFS
> ones. (Could be GFP_KERNEL in absence of firewire-sbp2.)
> I would have liked to work on this already long ago, but such is life.

Sure. I understand reducing the card->lock critical section is desirable
(although even more care would be required when switching the work item).

> - How do you propose to access the PHY registers without sleeping?
> Or more to the point: How do you propose to mix sleeping and
> non-sleeping PHY register accesses? (Since we can't get rid of
> the sleeping ones.) If the accesses are not fully serialized, you will
> get corrupt PHY reg reads or writes. If they are fully serialized, the
> non-sleeping PHY reg accesses need to go a try-lock route and will be
> forced to error out during periods when a sleeping PHY reg access goes
> on, without even the ability to reschedule if it is done in a tasklet
> context.

Although this point is largely irrelevant now, I wasn't suggesting mixing
sleeping and non-sleeping PHY access -- simply that the TI quirk would
require non-sleeping PHY access and every other host controller would
use sleeping PHY access.

Regards,
Peter Hurley


\
 
 \ /
  Last update: 2013-05-22 16:21    [W:0.106 / U:1.608 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site