OpenCloudOS-Kernel/arch/x86
Yang Xiaowei 2496afbf1e xen: use stronger barrier after unlocking lock
We need to have a stronger barrier between releasing the lock and
checking for any waiting spinners.  A compiler barrier is not sufficient
because the CPU's ordering rules do not prevent the read xl->spinners
from happening before the unlock assignment, as they are different
memory locations.

We need to have an explicit barrier to enforce the write-read ordering
to different memory locations.

Because of it, I can't bring up > 4 HVM guests on one SMP machine.

[ Code and commit comments expanded -J ]

[ Impact: avoid deadlock when using Xen PV spinlocks ]

Signed-off-by: Yang Xiaowei <xiaowei.yang@intel.com>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
2009-09-09 16:38:44 -07:00
..
boot x86: add vmlinux.lds to targets in arch/x86/boot/compressed/Makefile 2009-08-20 16:08:58 -07:00
configs Merge branch 'x86-kbuild-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-06-10 15:30:41 -07:00
crypto crypto: aes-ni - Remove CRYPTO_TFM_REQ_MAY_SLEEP from fpu template 2009-06-18 19:44:01 +08:00
ia32 Merge branch 'core/signal' into perfcounters/core 2009-04-30 21:16:49 +02:00
include/asm x86, pat: Allow ISA memory range uncacheable mapping requests 2009-08-17 14:12:44 -07:00
kernel x86: Fix vSMP boot crash 2009-08-26 10:13:17 +02:00
kvm KVM: MMU: limit rmap chain length 2009-08-06 12:06:54 +03:00
lguest lguest: update commentry 2009-07-30 16:03:46 +09:30
lib x86, msr: execute on the correct CPU subset 2009-08-03 14:48:13 -07:00
math-emu Merge branch 'core/percpu' into percpu-cpumask-x86-for-linus-2 2009-03-27 17:28:43 +01:00
mm xen: make -fstack-protector work under Xen 2009-09-09 16:37:39 -07:00
oprofile x86/oprofile: rename kernel parameter for architectural perfmon to arch_perfmon 2009-07-10 05:22:50 +02:00
pci x86/pci: insert ioapic resource before assigning unassigned resources 2009-07-10 13:03:14 -07:00
power x86: Fix resume from suspend when CONFIG_CC_STACKPROTECTOR 2009-07-08 13:20:13 +02:00
vdso gcov: enable GCOV_PROFILE_ALL for x86_64 2009-06-18 13:03:58 -07:00
video
xen xen: use stronger barrier after unlocking lock 2009-09-09 16:38:44 -07:00
Kbuild x86: standardize Kbuild rules 2009-04-16 18:09:02 +02:00
Kconfig perf_counter, x86: Fix/improve apic fallback 2009-08-12 14:12:49 +02:00
Kconfig.cpu Revert "x86, bts: reenable ptrace branch trace support" 2009-06-11 00:32:00 +02:00
Kconfig.debug kmemcheck: make kconfig accessible for other architectures 2009-06-15 15:49:17 +02:00
Makefile kmemcheck: add the kmemcheck core 2009-06-13 15:37:30 +02:00
Makefile_32.cpu