android_kernel_google_msm/drivers
David Vrabel b7d2a5e8cf xen/events: mask events when changing their VCPU binding
commit 5e72fdb8d827560893642e85a251d339109a00f4 upstream.

commit 4704fe4f03 upstream.

When a event is being bound to a VCPU there is a window between the
EVTCHNOP_bind_vpcu call and the adjustment of the local per-cpu masks
where an event may be lost.  The hypervisor upcalls the new VCPU but
the kernel thinks that event is still bound to the old VCPU and
ignores it.

There is even a problem when the event is being bound to the same VCPU
as there is a small window beween the clear_bit() and set_bit() calls
in bind_evtchn_to_cpu().  When scanning for pending events, the kernel
may read the bit when it is momentarily clear and ignore the event.

Avoid this by masking the event during the whole bind operation.

Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
[bwh: Backported to 3.2: remove the BM() cast]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Cc: Yijing Wang <wangyijing@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-03-11 16:10:07 -07:00
..
accessibility
acpi ACPI / processor: Rework processor throttling with work_on_cpu() 2014-03-11 16:10:01 -07:00
amba
ata sata_sil: apply MOD15WRITE quirk to TOSHIBA MK2561GSYN 2014-03-11 16:10:00 -07:00
atm atm: idt77252: fix dev refcnt leak 2013-12-08 07:29:42 -08:00
auxdisplay
base drivers/base/memory.c: fix show_mem_removable() to handle missing sections 2013-09-07 21:58:14 -07:00
bcma
block xen/blkback: Check for insane amounts of request on the ring (v6). 2014-03-11 16:10:07 -07:00
bluetooth
cdrom
char raw: test against runtime value of max_raw_minors 2014-02-22 10:32:45 -08:00
clk
clocksource
connector proc connector: reject unprivileged listener bumps 2014-03-11 16:10:03 -07:00
cpufreq
cpuidle
crypto
dca
devfreq
dio
dma dma: ste_dma40: don't dereference free:d descriptor 2014-03-11 16:10:02 -07:00
edac i7core_edac: Fix PCI device reference count 2014-03-11 16:10:01 -07:00
eisa
firewire firewire: fix libdc1394/FlyCap2 iso event regression 2013-08-04 16:26:02 +08:00
firmware
gpio gpio: msm: Fix irq mask/unmask by writing bits instead of numbers 2014-01-08 09:42:12 -08:00
gpu drm/i915: kick any firmware framebuffers before claiming the gtt 2014-02-20 10:45:32 -08:00
hid HID: picolcd_core: validate output report details 2013-12-08 07:29:42 -08:00
hsi
hv
hwmon hwmon: (max1668) Fix writing the minimum temperature 2014-03-11 16:10:01 -07:00
hwspinlock
i2c i2c: i801: SMBus patch for Intel Avoton DeviceIDs 2013-12-11 22:34:11 -08:00
ide
idle intel_idle: enable IVB Xeon support 2014-01-08 09:42:11 -08:00
ieee802154
infiniband IB/qib: Add missing serdes init sequence 2014-02-22 10:32:46 -08:00
input Input: synaptics - handle out of bounds values from the hardware 2014-02-20 10:45:33 -08:00
iommu intel-iommu: fix off-by-one in pagetable freeing 2014-02-13 11:51:08 -08:00
isdn net: rework recvmsg handler msg_name and msg_namelen logic 2013-12-08 07:29:41 -08:00
leds
lguest
macintosh
mca
md dm mpath: fix stalls when handling invalid ioctls 2014-03-11 16:10:02 -07:00
media saa7134: Fix unlocked snd_pcm_stop() call 2014-03-11 16:10:06 -07:00
memstick
message
mfd
misc SCSI: enclosure: fix WARN_ON in dual path device removing 2013-12-11 22:34:10 -08:00
mmc mmc: atmel-mci: fix timeout errors in SDIO mode when using DMA 2014-02-13 11:51:08 -08:00
mtd mtd: mxc_nand: remove duplicated ecc_stats counting 2014-02-13 11:51:10 -08:00
net xen-netback: don't disconnect frontend when seeing oversize packet 2014-03-11 16:10:07 -07:00
nfc
nubus
of of: Fix missing memory initialization on FDT unflattening 2013-09-26 17:15:51 -07:00
oprofile
parisc
parport parport: parport_pc: remove double PCI ID for NetMos 2014-02-06 11:05:47 -08:00
pci PCI: Enable ARI if dev and upstream bridge support it; disable otherwise 2014-02-13 11:51:17 -08:00
pcmcia
pinctrl
platform hp_accel: Add a new PnP ID HPQ6007 for new HP laptops 2014-02-06 11:05:47 -08:00
pnp
power power: max17040: Fix NULL pointer dereference when there is no platform_data 2014-02-22 10:32:46 -08:00
pps
ps3
ptp
rapidio
regulator
remoteproc
rpmsg
rtc rtc-cmos: Add an alarm disable quirk 2014-02-13 11:51:20 -08:00
s390 qeth: avoid buffer overflow in snmp ioctl 2013-12-04 10:50:30 -08:00
sbus
scsi SCSI: bfa: Chinook quad port 16G FC HBA claim issue 2014-02-06 11:05:48 -08:00
sfi
sh
sn
spi spi: Fix crash with double message finalisation on error handling 2014-02-22 10:32:45 -08:00
ssb
staging staging:iio:ad799x fix error_free_irq which was freeing an irq that may not have been requested 2014-02-22 10:32:45 -08:00
target target/file: Re-enable optional fd_buffered_io=1 operation 2014-02-20 10:45:33 -08:00
tc
thermal
tty tty: n_gsm: Fix for modems with brk in modem status control 2014-02-22 10:32:45 -08:00
uio Fix a few incorrectly checked [io_]remap_pfn_range() calls 2013-11-29 10:50:32 -08:00
usb USB: ftdi_sio: add Cressi Leonardo PID 2014-03-11 16:10:01 -07:00
uwb
vhost vhost: zerocopy: poll vq in zerocopy callback 2013-09-14 06:02:10 -07:00
video video: kyro: fix incorrect sizes when copying to userspace 2013-12-08 07:29:43 -08:00
virt
virtio virtio: support unlocked queue poll 2013-08-04 16:26:03 +08:00
vlynq
w1
watchdog sc1200_wdt: Fix oops 2013-12-20 07:34:21 -08:00
xen xen/events: mask events when changing their VCPU binding 2014-03-11 16:10:07 -07:00
zorro
Kconfig
Makefile