blob: 02becbe44a242ed71c29a5bb3c12a05cbc258bcf [file] [log] [blame]
From: Muhammad Usama Anjum <usama.anjum@collabora.com>
Subject: selftests/mm: fix unused parameter warnings for different architectures
Date: Thu, 31 Jul 2025 21:01:32 +0500
There are functions which have unused arguments for different
architectures. Separate the code for each architecture and move #ifdef
arch outside these functions.
Link: https://lkml.kernel.org/r/20250731160132.1795351-9-usama.anjum@collabora.com
Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
Cc: Albert Ou <aou@eecs.berkeley.edu>
Cc: Alexandre Ghiti <alex@ghiti.fr>
Cc: Baolin Wang <baolin.wang@linux.alibaba.com>
Cc: Barry Song <baohua@kernel.org>
Cc: David Hildenbrand <david@redhat.com>
Cc: Dev Jain <dev.jain@arm.com>
Cc: Jason Gunthorpe <jgg@ziepe.ca>
Cc: John Hubbard <jhubbard@nvidia.com>
Cc: Leon Romanovsky <leon@kernel.org>
Cc: Liam Howlett <liam.howlett@oracle.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Cc: Mariano Pache <npache@redhat.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Peter Xu <peterx@redhat.com>
Cc: Ryan Roberts <ryan.roberts@arm.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Sidhartha Kumar <sidhartha.kumar@oracle.com>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Zi Yan <ziy@nvidia.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
tools/testing/selftests/mm/mseal_test.c | 8 +++-
tools/testing/selftests/mm/pkey_sighandler_tests.c | 21 +++++++++--
2 files changed, 24 insertions(+), 5 deletions(-)
--- a/tools/testing/selftests/mm/mseal_test.c~selftests-mm-fix-unused-parameter-warnings-for-different-architectures
+++ a/tools/testing/selftests/mm/mseal_test.c
@@ -131,17 +131,21 @@ static unsigned int __read_pkey_reg(void
return pkey_reg;
}
+#if defined(__i386__) || defined(__x86_64__) /* arch */
static void __write_pkey_reg(u64 pkey_reg)
{
-#if defined(__i386__) || defined(__x86_64__) /* arch */
unsigned int eax = pkey_reg;
unsigned int ecx = 0;
unsigned int edx = 0;
asm volatile(".byte 0x0f,0x01,0xef\n\t"
: : "a" (eax), "c" (ecx), "d" (edx));
-#endif
}
+#else
+static void __write_pkey_reg(u64 __unused pkey_reg)
+{
+}
+#endif
static unsigned long pkey_bit_position(int pkey)
{
--- a/tools/testing/selftests/mm/pkey_sighandler_tests.c~selftests-mm-fix-unused-parameter-warnings-for-different-architectures
+++ a/tools/testing/selftests/mm/pkey_sighandler_tests.c
@@ -41,11 +41,12 @@ static siginfo_t siginfo = {0};
* syscall will attempt to access the PLT in order to call a library function
* which is protected by MPK 0 which we don't have access to.
*/
+#ifdef __x86_64__
static __always_inline
long syscall_raw(long n, long a1, long a2, long a3, long a4, long a5, long a6)
{
unsigned long ret;
-#ifdef __x86_64__
+
register long r10 asm("r10") = a4;
register long r8 asm("r8") = a5;
register long r9 asm("r9") = a6;
@@ -53,12 +54,26 @@ long syscall_raw(long n, long a1, long a
: "=a"(ret)
: "a"(n), "D"(a1), "S"(a2), "d"(a3), "r"(r10), "r"(r8), "r"(r9)
: "rcx", "r11", "memory");
+ return ret;
+}
#elif defined __i386__
+static __always_inline
+long syscall_raw(long n, long a1, long a2, long a3, long a4, long a5, long __unused a6)
+{
+ unsigned long ret;
+
asm volatile ("int $0x80"
: "=a"(ret)
: "a"(n), "b"(a1), "c"(a2), "d"(a3), "S"(a4), "D"(a5)
: "memory");
+ return ret;
+}
#elif defined __aarch64__
+static __always_inline
+long syscall_raw(long n, long a1, long a2, long a3, long a4, long a5, long a6)
+{
+ unsigned long ret;
+
register long x0 asm("x0") = a1;
register long x1 asm("x1") = a2;
register long x2 asm("x2") = a3;
@@ -71,11 +86,11 @@ long syscall_raw(long n, long a1, long a
: "r"(x0), "r"(x1), "r"(x2), "r"(x3), "r"(x4), "r"(x5), "r"(x8)
: "memory");
ret = x0;
+ return ret;
+}
#else
# error syscall_raw() not implemented
#endif
- return ret;
-}
static inline long clone_raw(unsigned long flags, void *stack,
int *parent_tid, int *child_tid)
_