>
>
>
> On Fri, 8 Dec 2000, Alan Cox wrote:
>
> > > Yes, and I believe that this is what's broken about the SCSI midlayer. The the
> > > io_request_lock cannot be completely released in a SCSI HBA because the flags
> >
> > You can drop it with spin_unlock_irq and that is fine. I do that with no
> > problems in the I2O scsi driver for example
>
> I am (like, I think I *finally* got locking sorta right in my QLogic driver),
> but doesn't this still leave ints blocked for this CPU at least?
>
> -matt
>
>
>
I am actually concerned about the following case:
The add_request ON CPU_1 function calls
spin_lock_irqsave(&io_request_lock,flags);
Our I/O Function unlocks the spinlock and goes to sleep.
Finally, the add_request function, NOW ON CPU_2 calls
spin_unlock_irqrestore(&io_request_lock,flags);
and restores the flags of CPU_1 on CPU_2.
What am I missing? Are the flags which we restore valid for all the CPU's the same?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/