linux_dsm_epyc7002/arch/x86/xen
Linus Torvalds 706a1ea65e Merge branch 'tlb-fixes'
Merge fixes for missing TLB shootdowns.

This fixes a couple of cases that involved us possibly freeing page
table structures before the required TLB shootdown had been done.

There are a few cleanup patches to make the code easier to follow, and
to avoid some of the more problematic cases entirely when not necessary.

To make this easier for backports, it undoes the recent lazy TLB
patches, because the cleanups and fixes are more important, and Rik is
ok with re-doing them later when things have calmed down.

The missing TLB flush was only delayed, and the wrong ordering only
happened under memory pressure (and in theory under a couple of other
fairly theoretical situations), so this may have been all very unlikely
to have hit people in practice.

But getting the TLB shootdown wrong is _so_ hard to debug and see that I
consider this a crticial fix.

Many thanks to Jann Horn for having debugged this.

* tlb-fixes:
  x86/mm: Only use tlb_remove_table() for paravirt
  mm: mmu_notifier fix for tlb_end_vma
  mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE
  mm/tlb: Remove tlb_remove_table() non-concurrent condition
  mm: move tlb_table_flush to tlb_flush_mmu_free
  x86/mm/tlb: Revert the recent lazy TLB patches
2018-08-23 14:55:01 -07:00
..
apic.c Merge branch 'WIP.x86/asm' into x86/urgent, because the topic is ready 2018-04-12 09:42:34 +02:00
debugfs.c
debugfs.h
efi.c x86/xen/efi: Initialize UEFI secure boot state during dom0 boot 2018-05-14 08:57:46 +02:00
enlighten_hvm.c x86/xen: Reset VCPU0 info pointer after shared_info remap 2018-05-07 15:03:43 -04:00
enlighten_pv.c x86/xen: enable early use of set_fixmap in 32-bit Xen PV guest 2018-08-20 14:46:26 -04:00
enlighten_pvh.c xen: share start flags between PV and PVH 2018-06-19 13:51:00 +02:00
enlighten.c Merge 4.18-rc7 into master to pick up the KVM dependcy 2018-08-05 16:39:29 +02:00
grant-table.c
irq.c xen: setup pv irq ops vector earlier 2018-07-13 08:23:27 +02:00
Kconfig
Makefile
mmu_hvm.c
mmu_pv.c Merge branch 'tlb-fixes' 2018-08-23 14:55:01 -07:00
mmu.c xen: fixes and features for v4-18-rc1 2018-06-08 09:24:54 -07:00
mmu.h
multicalls.c xen: don't use privcmd_call() from xen_mc_flush() 2018-08-07 11:37:01 -04:00
multicalls.h
p2m.c
pci-swiotlb-xen.c
platform-pci-unplug.c
pmu.c
pmu.h
setup.c x86/xen: remove unused function xen_auto_xlated_memory_setup() 2018-08-20 14:46:18 -04:00
smp_hvm.c
smp_pv.c x86/xen: Add call of speculative_store_bypass_ht_init() to PV paths 2018-06-21 10:55:52 +02:00
smp.c
smp.h
spinlock.c xen/spinlock: Don't use pvqspinlock if only 1 vCPU 2018-07-26 23:05:14 -04:00
suspend_hvm.c
suspend_pv.c x86/xen/time: Initialize pv xen time in init_hypervisor_platform() 2018-07-20 00:02:39 +02:00
suspend.c
time.c x86/xen/time: Output xen sched_clock time from 0 2018-07-20 00:02:40 +02:00
trace.c
vdso.h
vga.c
xen-asm_32.S
xen-asm_64.S
xen-asm.S
xen-head.S
xen-ops.h x86/xen: remove unused function xen_auto_xlated_memory_setup() 2018-08-20 14:46:18 -04:00
xen-pvh.S xen/PVH: Make GDT selectors PVH-specific 2018-06-04 10:06:08 +02:00