linux/arch/s390
Heiko Carstens bf3db85311 s390/cmpxchg: fix 1 and 2 byte memory accesses
When accessing a 1 or 2 byte memory operand we cannot use the
passed address since the compare and swap instruction only works
for 4 byte aligned memory operands.
Hence we calculate an aligned address so that compare and swap works
correctly. However we don't pass the calculated address to the inline
assembly. This results in incorrect memory accesses and in a
specification exception if used on non 4 byte aligned memory operands.

Since this didn't happen until now, there don't seem to be
too many users of cmpxchg on unaligned addresses.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2012-05-30 09:07:57 +02:00
..
appldata sched/accounting: Change cpustat fields to an array 2011-12-06 09:06:38 +01:00
boot s390: add various .gitignore files. 2012-05-16 14:42:41 +02:00
crypto Disintegrate asm/system.h for S390 2012-03-28 18:30:02 +01:00
hypfs switch open-coded instances of d_make_root() to new helper 2012-03-20 21:29:35 -04:00
include/asm s390/cmpxchg: fix 1 and 2 byte memory accesses 2012-05-30 09:07:57 +02:00
kernel s390/cpu: remove cpu "capabilities" sysfs attribute 2012-05-30 09:07:30 +02:00
kvm Disintegrate and delete asm/system.h 2012-03-28 15:58:21 -07:00
lib s390/headers: replace __s390x__ with CONFIG_64BIT where possible 2012-05-24 10:10:10 +02:00
math-emu s390: change to new flag variable 2011-03-17 14:02:57 +01:00
mm s390/kernel: Introduce memcpy_absolute() function 2012-05-30 09:04:49 +02:00
oprofile s390/irq: split irq stats for cpu-measurement alert facilities 2012-05-23 17:06:52 +02:00
defconfig s390/crypto des: add missing select statement 2012-05-16 14:42:36 +02:00
Kbuild [S390] make arch/s390 subdirectories depend on config option 2011-12-27 11:27:12 +01:00
Kconfig Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-05-21 19:43:57 -07:00
Kconfig.debug [S390] Write protect module text and RO data 2011-03-15 17:08:23 +01:00
Makefile s390: Use generic init_task 2012-05-05 13:00:25 +02:00