kernel_optimize_test/arch/x86/xen
David Vrabel 7eb7ce4d2e xen: correctly check for pending events when restoring irq flags
In xen_restore_fl_direct(), xen_force_evtchn_callback() was being
called even if no events were pending.  This resulted in (depending on
workload) about a 100 times as many xen_version hypercalls as
necessary.

Fix this by correcting the sense of the conditional jump.

This seems to give a significant performance benefit for some
workloads.

There is some subtle tricksy "..since the check here is trying to
check both pending and masked in a single cmpw, but I think this is
correct. It will call check_events now only when the combined
mask+pending word is 0x0001 (aka unmasked, pending)." (Ian)

CC: stable@kernel.org
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
2012-04-27 16:04:21 -04:00
..
debugfs.c
debugfs.h
enlighten.c xen/enlighten: Disable MWAIT_LEAF so that acpi-pad won't be loaded. 2012-04-26 17:46:20 -04:00
grant-table.c
irq.c
Kconfig
Makefile
mmu.c Two fixes for regressions: 2012-04-06 17:54:53 -07:00
mmu.h
multicalls.c
multicalls.h
p2m.c Revert "xen/p2m: m2p_find_override: use list_for_each_entry_safe" 2012-04-20 11:56:00 -04:00
pci-swiotlb-xen.c
platform-pci-unplug.c
setup.c
smp.c xen/smp: Fix crash when booting with ACPI hotplug CPUs. 2012-04-26 22:07:21 -04:00
spinlock.c
suspend.c
time.c
trace.c
vdso.h
vga.c
xen-asm_32.S
xen-asm_64.S
xen-asm.h
xen-asm.S xen: correctly check for pending events when restoring irq flags 2012-04-27 16:04:21 -04:00
xen-head.S
xen-ops.h