linux/arch
Mike Waychison 5b20192727 [PATCH] x86_64: Fix a race in the free_iommu path
We do this by removing a micro-optimization that tries to avoid grabbing
the iommu_bitmap_lock spinlock and using a bus-locked operation.

This still races with other simultaneous alloc_iommu or free_iommu(size >
1) which both use bus-unlocked operations.

The end result of this race is eventually ending up with an
iommu_gart_bitmap that has bits errornously set all over, making large
contiguous iommu space allocations fail with 'PCI-DMA: Out of IOMMU space'.

Signed-off-by: Mike Waychison <mikew@google.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-04-22 09:19:52 -07:00
..
alpha [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00
arm [ARM] for_each_possible_cpu 2006-04-20 21:48:02 +01:00
arm26 [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00
cris [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00
frv [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00
h8300 [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00
i386 [PATCH] i386/x86-64: Fix x87 information leak between processes 2006-04-20 07:58:11 -07:00
ia64 [PATCH] Switch Kprobes inline functions to __kprobes for ia64 2006-04-19 09:13:53 -07:00
m32r [PATCH] m32r: update switch_to macro for tuning 2006-04-19 09:13:51 -07:00
m68k [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00
m68knommu [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00
mips [MIPS] Use __ffs() instead of ffs() for waybit calculation. 2006-04-19 04:14:30 +02:00
parisc [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00
powerpc [PATCH] Switch Kprobes inline functions to __kprobes for ppc64 2006-04-19 09:13:53 -07:00
ppc Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge 2006-04-18 10:34:24 -07:00
s390 [PATCH] arch/s390/Makefile: remove -finline-limit=10000 2006-04-11 06:18:39 -07:00
sh [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00
sh64 [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00
sparc [SPARC]: Hook up sys_tee() into syscall tables. 2006-04-14 15:29:32 -07:00
sparc64 [PATCH] Switch Kprobes inline functions to __kprobes for sparc64 2006-04-19 09:13:53 -07:00
um [PATCH] uml: add missing __volatile__ 2006-04-19 09:13:51 -07:00
v850 [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00
x86_64 [PATCH] x86_64: Fix a race in the free_iommu path 2006-04-22 09:19:52 -07:00
xtensa [PATCH] No arch-specific strpbrk implementations 2006-04-11 06:18:40 -07:00