KVM: s390: Nullify instruction for certain program exceptions
KVM: s390: Nullify instruction for certain program exceptions

When certain program exceptions (e.g. DAT access exceptions) occur,
the current instruction has to be nullified, i.e. the old PSW that
gets written into the low-core has to point to the beginning of the
instruction again, and not to the beginning of the next instruction.
Thus we have to rewind the PSW before writing it into the low-core.
The list of nullifying exceptions can be found in the POP, chapter 6,
figure 6-1 ("Interruption Action").

Signed-off-by: Thomas Huth <9e65be74847981e55b2564b6266c57d86d3bac05@linux.vnet.ibm.com>
Reviewed-by: Jens Freimann <2fb3f62a871452862a8fef4a376310c98ece9044@linux.vnet.ibm.com>
Reviewed-by: David Hildenbrand <ae115cfa58aaa81618f054056f573d0d78c5ed09@linux.vnet.ibm.com>
Acked-by: Christian Borntraeger <49712f635b03c16d7f4c43df70e49ec8c565813d@de.ibm.com>
Signed-off-by: Christian Borntraeger <49712f635b03c16d7f4c43df70e49ec8c565813d@de.ibm.com>

KristFoundation/Programs,KristFoundation/Programs,KristFoundation/Programs,KristFoundation/Programs,KristFoundation/Programs,KristFoundation/Programs