selftests: x86: fix [-Wstringop-overread] warn in test_process_vm_readv()
authorShuah Khan <skhan@linuxfoundation.org>
Thu, 21 Oct 2021 21:33:33 +0000 (15:33 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 11 Jan 2022 14:24:58 +0000 (15:24 +0100)
commit dd40f44eabe1e122c6852fabb298aac05b083fce upstream.

Fix the following [-Wstringop-overread] by passing in the variable
instead of the value.

test_vsyscall.c: In function ‘test_process_vm_readv’:
test_vsyscall.c:500:22: warning: ‘__builtin_memcmp_eq’ specified bound 4096 exceeds source size 0 [-Wstringop-overread]
  500 |                 if (!memcmp(buf, (const void *)0xffffffffff600000, 4096)) {
      |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Cc: Naresh Kamboju <naresh.kamboju@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
tools/testing/selftests/x86/test_vsyscall.c

index 65c141e..5b45e69 100644 (file)
@@ -497,7 +497,7 @@ static int test_process_vm_readv(void)
        }
 
        if (vsyscall_map_r) {
-               if (!memcmp(buf, (const void *)0xffffffffff600000, 4096)) {
+               if (!memcmp(buf, remote.iov_base, sizeof(buf))) {
                        printf("[OK]\tIt worked and read correct data\n");
                } else {
                        printf("[FAIL]\tIt worked but returned incorrect data\n");