Subject: Re: Changes to firewire code
To: None <jchacon@genuity.net>
From: Manuel Bouyer <bouyer@antioche.lip6.fr>
List: tech-ports
Date: 04/29/2001 11:25:38
On Sun, Apr 29, 2001 at 04:59:12AM -0400, jchacon@genuity.net wrote:
> As some folks are aware I've been working recently on the firewire code
> to begin the framework for adding real device support into the code (mainly so
> my newly purchased hard drive isn't a large paper weight...).
> 
> At this point I've got enough of a baseline I'm about to check things in but
> wanted to give anyone who's currently using the code a heads up as to what's
> going to change/break/etc.
> 
> So far the list of things changing:
> 
> 1. The bus code runs in it's own kthread now and interrupt processing has been
>    changed to do 99% of the work inside the thread. The interrupt handler
>    deals with acknowledging the interrupt and waking up the kthread to deal 
>    with the DMA. This avoids a lot of race condition/possible deadlocks/etc
>    in the older structure that I started tripping over when adding in fwnode
>    support.
> 
> 2. Move everything to splbio and let the underlying devices raise spl as
>    appropriate for their specific function (i.e. the if_fw code needs to raise
>    splnet when moving packets around).

Why at splbio ? While we deal with firewire internal states internally,
there's no need to block other's devices interrupt I think. As you're
in a kthread anyway, maybe you could use real locks ?

--
Manuel Bouyer <bouyer@antioche.eu.org>
--