linux-stable/arch/x86/xen
Dou Liyang ca5d376e17 x86/paravirt: Set up the virt_spin_lock_key after static keys get initialized
Commit:

  9043442b43 ("locking/paravirt: Use new static key for controlling call of virt_spin_lock()")

sets the static virt_spin_lock_key to a value before jump_label_init()
has been called, which will result in a WARN().

Reorder the initialization sequence:

 - Move the native_pv_lock_init() into native_smp_prepare_cpus()
 - set the value in xen_init_lock_cpu()

to avoid calling into the not yet initialized static keys subsystem.

Suggested-by: Juergen Gross <jgross@suse.com>
Reported-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Dou Liyang <douly.fnst@cn.fujitsu.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: boris.ostrovsky@oracle.com
Cc: bp@suse.de
Cc: luto@kernel.org
Cc: vkuznets@redhat.com
Cc: xen-devel@lists.xenproject.org
Link: http://lkml.kernel.org/r/1509170804-3813-1-git-send-email-douly.fnst@cn.fujitsu.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-10-30 09:17:29 +01:00
..
apic.c x86/apic: Move cpumask and to core code 2017-06-22 18:21:22 +02:00
debugfs.c x86/xen: Audit and remove any unnecessary uses of module.h 2016-07-14 15:06:59 +02:00
debugfs.h
efi.c x86/xen/efi: Initialize only the EFI struct members used by Xen 2017-06-23 11:11:03 +02:00
enlighten.c xen/vcpu: Use a unified name about cpu hotplug state for pv and pvhvm 2017-10-10 08:40:02 -04:00
enlighten_hvm.c xen: fix hvm guest with kaslr enabled 2017-08-11 15:50:26 +02:00
enlighten_pv.c x86/paravirt: Remove no longer used paravirt functions 2017-09-13 10:55:15 +02:00
enlighten_pvh.c xen/pvh: Do not fill kernel's e820 map in init_pvh_bootparams() 2017-05-02 11:17:39 +02:00
grant-table.c xen/grant-table: Use kmalloc_array() in arch_gnttab_valloc() 2016-08-26 10:44:22 +01:00
irq.c x86/xen: Get rid of paravirt op adjust_exception_frame 2017-08-31 21:35:10 +02:00
Kconfig x86: Enable 5-level paging support via CONFIG_X86_5LEVEL=y 2017-07-21 10:05:19 +02:00
Makefile objtool, x86: Add several functions and files to the objtool whitelist 2017-06-30 10:19:19 +02:00
mmu.c xen/mmu: set MMU_NORMAL_PT_UPDATE in remap_area_mfn_pte_fn 2017-08-31 09:45:55 -04:00
mmu.h x86/xen: Change __xen_pgd_walk() and xen_cleanmfnmap() to support p4d 2017-03-27 08:56:49 +02:00
mmu_hvm.c x86/xen: split off mmu_hvm.c 2017-05-02 11:05:10 +02:00
mmu_pv.c xen: fixes for 4.14-rc3 2017-09-29 12:24:28 -07:00
multicalls.c x86: Replace __get_cpu_var uses 2014-08-26 13:45:49 -04:00
multicalls.h
p2m.c locking/atomics: COCCINELLE/treewide: Convert trivial ACCESS_ONCE() patterns to READ_ONCE()/WRITE_ONCE() 2017-10-25 11:01:08 +02:00
pci-swiotlb-xen.c xen-swiotlb: consolidate xen_swiotlb_dma_ops 2017-06-20 11:12:59 +02:00
platform-pci-unplug.c xen/pvh: PVH guests always have PV devices 2017-02-07 08:07:01 -05:00
pmu.c xen: Make VPMU init message look less scary 2016-08-24 18:45:38 +01:00
pmu.h x86/xen: put setup.c, pmu.c and apic.c under CONFIG_XEN_PV 2017-05-02 11:09:28 +02:00
setup.c xen: remove tests for pvh mode in pure pv paths 2017-08-31 09:45:55 -04:00
smp.c xen/vcpu: Handle xen_vcpu_setup() failure at boot 2017-06-13 16:10:58 +02:00
smp.h xen/vcpu: Handle xen_vcpu_setup() failure at boot 2017-06-13 16:10:58 +02:00
smp_hvm.c xen/vcpu: Handle xen_vcpu_setup() failure at boot 2017-06-13 16:10:58 +02:00
smp_pv.c xen/x86: fix cpu hotplug 2017-07-23 08:13:11 +02:00
spinlock.c x86/paravirt: Set up the virt_spin_lock_key after static keys get initialized 2017-10-30 09:17:29 +01:00
suspend.c x86/xen: split suspend.c for PV and PVHVM guests 2017-05-02 11:09:17 +02:00
suspend_hvm.c xen/pvh*: Support > 32 VCPUs at domain restore 2017-06-13 16:05:17 +02:00
suspend_pv.c x86/xen: split suspend.c for PV and PVHVM guests 2017-05-02 11:09:17 +02:00
time.c xen/x86: Don't BUG on CPU0 offlining 2017-07-23 08:09:24 +02:00
trace.c xen: use generated hypervisor symbols in arch/x86/xen/trace.c 2015-03-16 14:49:13 +00:00
vdso.h
vga.c
xen-asm.S x86/paravirt/xen: Remove xen_patch() 2017-08-24 09:57:24 +02:00
xen-asm_32.S x86/paravirt/xen: Remove xen_patch() 2017-08-24 09:57:24 +02:00
xen-asm_64.S x86/xen: Get rid of paravirt op adjust_exception_frame 2017-08-31 21:35:10 +02:00
xen-head.S x86/xen: Redefine XEN_ELFNOTE_INIT_P2M using PUD_SIZE * PTRS_PER_PUD 2017-07-21 10:05:18 +02:00
xen-ops.h x86/xen: Get rid of paravirt op adjust_exception_frame 2017-08-31 21:35:10 +02:00
xen-pvh.S x86/boot/64: Rename init_level4_pgt and early_level4_pgt 2017-06-13 08:56:55 +02:00