Re: PCI-DMA: Out of IOMMU space on x86-64 (Athlon64x2), with solution

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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]
  Powered by Linux