Andi Kleen wrote:
On Thursday 02 March 2006 13:16, Jeff Garzik wrote:
Yes I've been thinking about adding a new sleeping interface to the IOMMU
that would block for new space to handle this. If I did that - would
libata be able to use it?
No :( We map inside a spin_lock_irqsave.
Would it be easily possible to change that or is it difficult?
Also with the blocking interface there might be possible deadlock issues
because it will be essentially similar to allocating memory during IO.
But I think it's probably safe.
The SCSI layer submits stuff to libata inside spin_lock_irqsave(), and
from there we DMA-map and send straight to hardware.
So, changing the hot path to permit sleeping would be difficult and add
needless complexity, IMO.
I would rather pay the penalty of resubmitting if the
map-inside-spinlock fails, than to slow down the hot path.
Jeff
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]