s390x/css: fix ilen in IO instruction handlers
When initiating a program check interruption by calling program_interrupt the instruction length (ilen) of the current instruction is supplied as the third parameter. On s390x all the IO instructions are of instruction format S and their ilen is 4. The calls to program_interrupt (introduced by commits 7b18aad5 ("s390: Add channel I/O instructions.", 2013-01-24) and 61bf0dcb ("s390x/ioinst: Add missing alignment checks for IO instructions", 2013-06-21)) however use ilen == 2. This is probably due to a confusion between ilen which specifies the instruction length in bytes and ILC which does the same but in halfwords. If kvm_enabled() this does not actually matter, because the ilen parameter of program_interrupt is effectively unused. Let's provide the correct ilen to program_interrupt. Signed-off-by: NHalil Pasic <pasic@linux.vnet.ibm.com> Fixes: 7b18aad5 ("s390: Add channel I/O instructions.") Fixes: 61bf0dcb ("s390x/ioinst: Add missing alignment checks for IO instructions") Reviewed-by: NDavid Hildenbrand <david@redhat.com> Message-Id: <20170724143452.55534-1-pasic@linux.vnet.ibm.com> Reviewed-by: NDong Jia Shi <bjsdjshi@linux.vnet.ibm.com> Signed-off-by: NCornelia Huck <cohuck@redhat.com>
Showing
想要评论请 注册 或 登录