diff options
author | Anton Blanchard <anton@samba.org> | 2012-10-03 20:57:10 +0200 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2012-10-04 10:03:20 +0200 |
commit | d900bd7366463fd96a907b2c212242e2b68b27d8 (patch) | |
tree | b1837bc8c27d32a159ebc9edea9b1944e9231444 /arch/powerpc/kernel/prom_init.c | |
parent | powerpc: Fix VMX fix for memcpy case (diff) | |
download | linux-d900bd7366463fd96a907b2c212242e2b68b27d8.tar.xz linux-d900bd7366463fd96a907b2c212242e2b68b27d8.zip |
powerpc/iommu: Fix multiple issues with IOMMU pools code
There are a number of issues in the recent IOMMU pools code:
- On a preempt kernel we might switch CPUs in the middle of building
a scatter gather list. When this happens the handle hint passed in
no longer falls within the local CPU's pool. Check for this and
fall back to the pool hint.
- We were missing a spin_unlock/spin_lock in one spot where we
switch pools.
- We need to provide locking around dart_tlb_invalidate_all and
dart_tlb_invalidate_one now that the global lock is gone.
Reported-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
CC: <stable@kernel.org> [v3.6]
Diffstat (limited to 'arch/powerpc/kernel/prom_init.c')
0 files changed, 0 insertions, 0 deletions