s390/kvm: do not rely on the ILC on kvm host protection fauls
authorChristian Borntraeger <borntraeger@de.ibm.com>
Mon, 15 May 2017 12:11:03 +0000 (14:11 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 17 Jun 2017 04:39:38 +0000 (06:39 +0200)
commitd80aa84235ff7b2b13cd204e23a5823770512690
treefaea44557169893e230ef290803db64d62dd16b1
parentafb415f72daa0d9d8169a20f3ea3efbf05f630ca
s390/kvm: do not rely on the ILC on kvm host protection fauls

commit c0e7bb38c07cbd8269549ee0a0566021a3c729de upstream.

For most cases a protection exception in the host (e.g. copy
on write or dirty tracking) on the sie instruction will indicate
an instruction length of 4. Turns out that there are some corner
cases (e.g. runtime instrumentation) where this is not necessarily
true and the ILC is unpredictable.

Let's replace our 4 byte rewind_pad with 3 byte nops to prepare for
all possible ILCs.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/s390/kernel/entry.S