xen/events/fifo: correctly align bitops
authorVladimir Murzin <murzin.v@gmail.com>
Sun, 27 Apr 2014 09:09:12 +0000 (10:09 +0100)
committerDavid Vrabel <david.vrabel@citrix.com>
Mon, 28 Apr 2014 10:09:40 +0000 (11:09 +0100)
commit05a812ac474d0d6aef6d54b66bb08b81abde79c6
tree016ab4001a17411758548428af3c4cced70cb052
parent063aa8e68e53cc0d0961ea90c12cea40c6b94828
xen/events/fifo: correctly align bitops

FIFO event channels require bitops on 32-bit aligned values (the event
words).  Linux's bitops require unsigned long alignment which may be
64-bits.

On arm64 an incorrectly unaligned access will fault.

Fix this by aligning the bitops along with an adjustment for bit
position and using an unsigned long for the local copy of the ready
word.

Cc: stable@vger.kernel.org
Signed-off-by: Vladimir Murzin <murzin.v@gmail.com>
Tested-by: Pranavkumar Sawargaonkar <pranavkumar@linaro.org>
Reviewed-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
drivers/xen/events/events_fifo.c