From: Peter Oberparleiter Date: Fri, 18 Dec 2015 11:59:28 +0000 (+0100) Subject: s390/cio: Fix incorrect xsch opcode specification X-Git-Tag: v5.15~14418^2~18 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ac357c4105ef6b2d44227aa349850a3c1a2994a5;p=platform%2Fkernel%2Flinux-starfive.git s390/cio: Fix incorrect xsch opcode specification The numeric representation of the xsch instruction was incorrectly specified, resulting in reserved fields of the instruction opcode potentially being set to a non-zero value. While this doesn't currently cause any problem, a future architecture might make use of these fields so that the current specification could result in an exception or unwanted side-effects. Fix this by using the xsch instruction code for which support in binutils was added in 2003. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky --- diff --git a/drivers/s390/cio/io_sch.h b/drivers/s390/cio/io_sch.h index b108f4a..789ce78 100644 --- a/drivers/s390/cio/io_sch.h +++ b/drivers/s390/cio/io_sch.h @@ -205,7 +205,7 @@ static inline int xsch(struct subchannel_id schid) int ccode; asm volatile( - " .insn rre,0xb2760000,%1,0\n" + " xsch\n" " ipm %0\n" " srl %0,28" : "=d" (ccode)