KVM: s390: selftest: memop: Fix integer literal
authorJanis Schoetterl-Glausch <scgl@linux.ibm.com>
Mon, 6 Feb 2023 16:45:55 +0000 (17:45 +0100)
committerJanosch Frank <frankja@linux.ibm.com>
Tue, 7 Feb 2023 17:05:59 +0000 (18:05 +0100)
The address is a 64 bit value, specifying a 32 bit value can crash the
guest. In this case things worked out with -O2 but not -O0.

Signed-off-by: Janis Schoetterl-Glausch <scgl@linux.ibm.com>
Fixes: 1bb873495a9e ("KVM: s390: selftests: Add more copy memop tests")
Reviewed-by: Thomas Huth <thuth@redhat.com>
Link: https://lore.kernel.org/r/20230206164602.138068-8-scgl@linux.ibm.com
Message-Id: <20230206164602.138068-8-scgl@linux.ibm.com>
Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
tools/testing/selftests/kvm/s390x/memop.c

index 1ae5c01..c5fec84 100644 (file)
@@ -514,7 +514,7 @@ static void guest_copy_key_fetch_prot_override(void)
        GUEST_SYNC(STAGE_INITED);
        set_storage_key_range(0, PAGE_SIZE, 0x18);
        set_storage_key_range((void *)last_page_addr, PAGE_SIZE, 0x0);
-       asm volatile ("sske %[key],%[addr]\n" :: [addr] "r"(0), [key] "r"(0x18) : "cc");
+       asm volatile ("sske %[key],%[addr]\n" :: [addr] "r"(0L), [key] "r"(0x18) : "cc");
        GUEST_SYNC(STAGE_SKEYS_SET);
 
        for (;;) {