Hi,
Just a small question about IDE 96: in __ata_end_request(), we do
spin_lock_irqsave(ch->lock, flags);
BUG_ON(!(rq->flags & REQ_STARTED));
Shouldn't we rather flip these two, or much rather move
spin_lock_irqsave() even more down, below
if (!nr_secs)
nr_secs = rq->hard_cur_sectors;
since it hasn't got any use to hold a spin lock until the udma_enable &
co.? However, I'd at least move it below the BUG_ON().
Regards,
Thunder
--
(Use http://www.ebb.org/ungeek if you can't decode)
------BEGIN GEEK CODE BLOCK------
Version: 3.12
GCS/E/G/S/AT d- s++:-- a? C++$ ULAVHI++++$ P++$ L++++(+++++)$ E W-$
N--- o? K? w-- O- M V$ PS+ PE- Y- PGP+ t+ 5+ X+ R- !tv b++ DI? !D G
e++++ h* r--- y-
------END GEEK CODE BLOCK------
On Sat, 6 Jul 2002, Thunder from the hill wrote:
> Hi,
>
> Just a small question about IDE 96: in __ata_end_request(), we do
>
> spin_lock_irqsave(ch->lock, flags);
>
> BUG_ON(!(rq->flags & REQ_STARTED));
>
> Shouldn't we rather flip these two, or much rather move
> spin_lock_irqsave() even more down, below
>
> if (!nr_secs)
> nr_secs = rq->hard_cur_sectors;
>
> since it hasn't got any use to hold a spin lock until the udma_enable &
> co.? However, I'd at least move it below the BUG_ON().
>
> Regards,
> Thunder
We can move spin_lock_irqsave() down, below if (!nr_secs), thanks.
Regards
--
Bartlomiej