linux/arch/x86/include/asm
Joerg Roedel 7d0c5cc5be x86/amd-iommu: Flush all internal TLBs when IOMMUs are enabled
The old code only flushed a DTE or a domain TLB before it is
actually used by the IOMMU driver. While this is efficient
and works when done right it is more likely to introduce new
bugs when changing code (which happened in the past).
This patch adds code to flush all DTEs and all domain TLBs
in each IOMMU right after it is enabled (at boot and after
resume). This reduces the complexity of the driver and makes
it less likely to introduce stale-TLB bugs in the future.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2011-04-07 11:04:32 +02:00
..
uv x86, UV: Initialize the broadcast assist unit base destination node id properly 2011-03-09 16:36:16 +01:00
visws
xen x86: Fix common misspellings 2011-03-18 10:39:30 +01:00
a.out-core.h
a.out.h
acpi.h Merge branch 'linus' into release 2011-03-23 02:34:54 -04:00
aes.h
agp.h
alternative-asm.h
alternative.h
amd_iommu_proto.h x86/amd-iommu: Flush all internal TLBs when IOMMUs are enabled 2011-04-07 11:04:32 +02:00
amd_iommu_types.h x86/amd-iommu: Remove command buffer resetting logic 2011-04-07 10:46:05 +02:00
amd_iommu.h
amd_nb.h Merge branch 'linus' into x86/urgent 2011-03-18 10:39:00 +01:00
apb_timer.h
apic.h x86: Stop including <linux/delay.h> in two asm header files 2011-03-29 09:37:42 +02:00
apicdef.h x86: Move ioapic_irq_destination_types to apicdef.h 2011-02-23 11:38:44 +01:00
apm.h
arch_hweight.h
asm-offsets.h
asm.h
atomic64_32.h
atomic64_64.h
atomic.h
auxvec.h
bios_ebda.h
bitops.h bitops: remove minix bitops from asm/bitops.h 2011-03-23 19:46:22 -07:00
bitsperlong.h
boot.h
bootparam.h x86: Add device tree support 2011-02-23 22:27:52 +01:00
bug.h
bugs.h
byteorder.h
cache.h
cacheflush.h x86: Fix common misspellings 2011-03-18 10:39:30 +01:00
calgary.h
calling.h
ce4100.h x86: ce4100: Set pci ops via callback instead of module init 2011-03-14 15:13:23 +01:00
checksum_32.h
checksum_64.h
checksum.h
cmpxchg_32.h
cmpxchg_64.h
cmpxchg.h
compat.h
cpu.h
cpufeature.h perf, x86: Add support for AMD family 15h core counters 2011-02-16 13:30:53 +01:00
cpumask.h
cputime.h
current.h
debugreg.h
delay.h
desc_defs.h
desc.h
device.h
div64.h
dma-mapping.h
dma.h x86: Stop including <linux/delay.h> in two asm header files 2011-03-29 09:37:42 +02:00
dmi.h
dwarf2.h
e820.h x86: e820: Remove conditional early mapping in parse_e820_ext 2011-02-23 22:27:52 +01:00
edac.h
efi.h
elf.h
emergency-restart.h
entry_arch.h x86: Allocate 32 tlb_invalidate_interrupt handler stubs 2011-02-14 13:03:08 +01:00
errno.h
fb.h
fcntl.h
fixmap.h
floppy.h
frame.h x86: Use {push,pop}_cfi in more places 2011-02-28 18:06:22 +01:00
ftrace.h
futex.h futex: Sanitize futex ops argument types 2011-03-11 12:23:31 +01:00
gart.h
genapic.h
geode.h
gpio.h
hardirq.h
highmem.h
hpet.h
hugetlb.h
hw_breakpoint.h
hw_irq.h x86: Allocate 32 tlb_invalidate_interrupt handler stubs 2011-02-14 13:03:08 +01:00
hypertransport.h
hyperv.h
hypervisor.h
i387.h
i8253.h
i8259.h
ia32_unistd.h
ia32.h
idle.h
inat_types.h
inat.h
init.h x86: Rename e820_table_* to pgt_buf_* 2011-02-24 14:52:18 +01:00
insn.h
inst.h
intel_scu_ipc.h
io_apic.h x86: ioapic: Move trigger defines to io_apic.h 2011-02-23 19:58:09 +01:00
io.h
ioctl.h
ioctls.h
iomap.h
iommu_table.h
iommu.h
ipcbuf.h
ipi.h
irq_controller.h x86: dtb: Add irq domain abstraction 2011-02-23 22:27:53 +01:00
irq_regs.h
irq_remapping.h
irq_vectors.h x86: Work around old gas bug 2011-03-03 12:47:08 +01:00
irq.h x86: Add device tree support 2011-02-23 22:27:52 +01:00
irqflags.h
ist.h
jump_label.h
Kbuild
kdebug.h x86, dumpstack: Correct stack dump info when frame pointer is available 2011-03-18 10:51:42 +01:00
kexec.h
kgdb.h
kmap_types.h
kmemcheck.h
kprobes.h
kvm_emulate.h KVM: emulator: Fix io permission checking for 64bit guest 2011-03-17 13:08:33 -03:00
kvm_host.h KVM: MMU: cleanup pte write path 2011-03-17 13:08:35 -03:00
kvm_para.h
kvm.h
ldt.h
lguest_hcall.h
lguest.h
linkage.h
local64.h
local.h
mach_timer.h
mach_traps.h
math_emu.h
mc146818rtc.h
mca_dma.h
mca.h
mce.h
memblock.h
microcode.h
mman.h
mmconfig.h
mmu_context.h
mmu.h x86: add context tag to mark mm when running a task in 32-bit compatibility mode 2011-03-23 16:36:52 -04:00
mmx.h
mmzone_32.h
mmzone_64.h
mmzone.h
module.h
mpspec_def.h
mpspec.h
mrst-vrtc.h
mrst.h
msgbuf.h
mshyperv.h
msidef.h
msr-index.h KVM: x86: handle guest access to BBL_CR_CTL3 MSR 2011-03-17 13:08:27 -03:00
msr.h
mtrr.h
mutex_32.h
mutex_64.h
mutex.h
mwait.h
nmi.h x86: Fix common misspellings 2011-03-18 10:39:30 +01:00
nops.h x86: Fix common misspellings 2011-03-18 10:39:30 +01:00
numa_32.h
numa_64.h x86-64, NUMA: Unify emulated distance mapping 2011-02-16 17:11:10 +01:00
numa.h x86-64, NUMA: Factor out memblk handling into numa_{add|register}_memblk() 2011-02-16 17:11:07 +01:00
numaq.h
olpc_ofw.h x86: OLPC: Make OLPC=n build again 2011-02-23 11:54:02 +01:00
olpc.h x86: Fix common misspellings 2011-03-18 10:39:30 +01:00
page_32_types.h
page_32.h
page_64_types.h
page_64.h
page_types.h x86-64, NUMA: Revert NUMA affine page table allocation 2011-03-04 10:26:36 +01:00
page.h
param.h
paravirt_types.h
paravirt.h
parport.h
pat.h
pci_64.h
pci_x86.h
pci-direct.h
pci-functions.h
pci.h
percpu.h percpu: Omit segment prefix in the UP case for cmpxchg_double 2011-03-27 19:25:36 -07:00
perf_event_p4.h x86: Fix common misspellings 2011-03-18 10:39:30 +01:00
perf_event.h
pgalloc.h
pgtable_32_types.h
pgtable_32.h
pgtable_64_types.h
pgtable_64.h
pgtable_types.h
pgtable-2level_types.h
pgtable-2level.h
pgtable-3level_types.h
pgtable-3level.h x86: Flush TLB if PGD entry is changed in i386 PAE mode 2011-03-18 11:44:01 +01:00
pgtable.h
poll.h
posix_types_32.h
posix_types_64.h
posix_types.h
prctl.h
processor-cyrix.h
processor-flags.h x86: Fix common misspellings 2011-03-18 10:39:30 +01:00
processor.h
prom.h x86: dt: Cleanup local apic setup 2011-02-25 16:18:52 +01:00
proto.h
ptrace-abi.h x86: Fix common misspellings 2011-03-18 10:39:30 +01:00
ptrace.h x86: Fix common misspellings 2011-03-18 10:39:30 +01:00
pvclock-abi.h
pvclock.h
reboot_fixups.h
reboot.h x86, reboot: Move the real-mode reboot code to an assembly file 2011-02-17 21:05:34 -08:00
required-features.h
resource.h
resume-trace.h
rio.h
rtc.h
rwlock.h
rwsem.h
scatterlist.h
seccomp_32.h
seccomp_64.h
seccomp.h
sections.h
segment.h x86: Make the GDT_ENTRY() macro in <asm/segment.h> safe for assembly 2011-02-17 21:05:13 -08:00
sembuf.h
serial.h
setup_arch.h
setup.h
shmbuf.h
shmparam.h
sigcontext32.h
sigcontext.h
sigframe.h
siginfo.h
signal.h
smp.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2011-03-15 19:49:10 -07:00
smpboot_hooks.h x86: Use u32 instead of long to set reset vector back to 0 2011-02-28 16:22:18 +01:00
socket.h
sockios.h
sparsemem.h
spinlock_types.h
spinlock.h
srat.h
stackprotector.h
stacktrace.h x86, dumpstack: Correct stack dump info when frame pointer is available 2011-03-18 10:51:42 +01:00
stat.h
statfs.h
string_32.h
string_64.h
string.h
suspend_32.h
suspend_64.h
suspend.h
svm.h
swab.h
swiotlb.h
sync_bitops.h
sys_ia32.h
syscall.h
syscalls.h
system.h x86, system.h: Drop unused __SAVE/__RESTORE macros 2011-02-20 13:38:47 +01:00
tce.h
termbits.h
termios.h
thread_info.h mm: NUMA aware alloc_thread_info_node() 2011-03-22 17:44:01 -07:00
time.h
timer.h
timex.h
tlb.h
tlbflush.h
topology.h x86-64, NUMA: Implement generic node distance handling 2011-02-16 17:11:09 +01:00
trampoline.h x86, trampoline: Use the unified trampoline setup for ACPI wakeup 2011-02-17 21:05:06 -08:00
traps.h
tsc.h x86: Fix common misspellings 2011-03-18 10:39:30 +01:00
types.h remove dma64_addr_t 2011-03-23 19:47:18 -07:00
uaccess_32.h
uaccess_64.h
uaccess.h
ucontext.h
unaligned.h
unistd_32.h introduce sys_syncfs to sync a single file system 2011-03-21 00:40:29 -04:00
unistd_64.h introduce sys_syncfs to sync a single file system 2011-03-21 00:40:29 -04:00
unistd.h
user32.h
user_32.h
user_64.h
user.h
vdso.h
vga.h
vgtod.h
virtext.h
vm86.h
vmx.h
vsyscall.h
x86_init.h x86/platform: Add a wallclock_init func to x86_init.timers ops 2011-02-14 18:20:43 +01:00
xcr.h
xor_32.h
xor_64.h
xor.h
xsave.h