linux_dsm_epyc7002/arch/s390
Christian Borntraeger 0c29b2293b s390/kvm: Fix instruction decoding
Instructions with long displacement have a signed displacement.
Currently the sign bit is interpreted as 2^20: Lets fix it by doing the
sign extension from 20bit to 32bit and then use it as a signed variable
in the addition (see kvm_s390_get_base_disp_rsy).

Furthermore, there are lots of "int" in that code. This is problematic,
because shifting on a signed integer is undefined/implementation defined
if the bit value happens to be negative.
Fortunately the promotion rules will make the right hand side unsigned
anyway, so there is no real problem right now.
Let's convert them anyway to unsigned where appropriate to avoid
problems if the code is changed or copy/pasted later on.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Gleb Natapov <gleb@redhat.com>
2013-01-30 12:35:59 +02:00
..
appldata s390/vtimer: rework virtual timer interface 2012-07-20 11:15:08 +02:00
boot s390: fix linker script for 31 bit builds 2012-10-18 17:50:10 +02:00
crypto s390/crypto: Don't panic after crypto instruction failures 2012-11-23 11:14:27 +01:00
hypfs Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2012-10-02 20:25:04 -07:00
include KVM: s390: Add support for channel I/O instructions. 2013-01-07 19:53:43 -02:00
kernel KVM: s390: Add a channel I/O based virtio transport driver. 2012-12-18 14:37:13 +02:00
kvm s390/kvm: Fix instruction decoding 2013-01-30 12:35:59 +02:00
lib s390/mm: use pmd_large() instead of pmd_huge() 2012-10-26 16:44:23 +02:00
math-emu s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
mm s390/ptrace: race of single stepping vs signal delivery 2012-11-23 11:14:33 +01:00
net s390/bpf,jit: add support for XOR instruction 2012-12-03 10:44:05 -05:00
oprofile oprofile, s390: Fix uninitialized memory access when writing to oprofilefs 2012-08-27 14:49:23 +02:00
pci s390/pci: remove obsolete email addresses 2012-12-11 14:52:45 +01:00
defconfig s390: update defconfig 2012-09-26 15:45:29 +02:00
Kbuild s390/pci: base support 2012-11-30 15:40:45 +01:00
Kconfig Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2012-12-13 14:20:19 -08:00
Kconfig.debug s390/mm: add page table dumper 2012-10-09 14:16:58 +02:00
Makefile s390: add zEC12 code generation support 2012-11-23 11:14:31 +01:00