On Wed, 27 Jun 2012 18:59:48 +0200
Stephen Warren <[email protected]> wrote:

> On 06/27/2012 03:54 AM, Hiroshi DOYU wrote:
> > allo_pdir() is called in smmu_iommu_domain_init() with spin_lock
> > held. memory allocations in it have to be atomic/unsleepable.
> 
> Presumably this will cause allocation failures in situations with heavy
> memory pressure, rather than triggering swapping. Is it normal for IOMMU
> drivers to work that way? If so, I'm fine with it. Otherwise, can the
> allocations be performed before the spinlock is taken?

There are some requirement for atomic allocation from DMA mapping API,
but it's not normla for IOMMU, especiall not for
iommu_domain_alloc(). It has already used GFP_KERNEL and then, calls
->iommu_domain_init() in it.

The update patch v2 follows.
_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to