Hi Naresh,
On 2025-09-12 00:48:47+0530, Naresh Kamboju wrote:
> The following build warnings / errors noticed on arm64 defconfig
> with clang-20 and gcc-13 toolchains on the Linux next-20250909
> till next-20250911 tag while building selftests/arm64.
>
> Regression Analysis:
> - New regression? Yes
> - Reproducibility? yes
>
> First seen on next-20250909
> Good: next-20250908
> Bad: next-20250909 till next-20250911
>
> Test regression: next-20250909:
> selftests/arm64/gcs/basic-gcs.c:390:30: error: use of undeclared
> identifier 'HWCAP_GCS'
>
> Reported-by: Linux Kernel Functional Testing <[email protected]>
>
> ## Build log
> selftests/arm64/gcs/basic-gcs.c:390:30: error: use of undeclared
> identifier 'HWCAP_GCS'
> 390 | if (!(getauxval(AT_HWCAP) & HWCAP_GCS))
> | ^
> 1 error generated.
>
> The suspected commit pointing to,
> kselftest/arm64/gcs: Use nolibc's getauxval()
> a985fe638344492727528e52416211dda1c391d5
That suspicion looks correct. I am wondering a bit how this works for
the other selftests which use this symbol.
Can you give this one a try:
diff --git a/tools/testing/selftests/arm64/gcs/gcs-util.h
b/tools/testing/selftests/arm64/gcs/gcs-util.h
index c99a6b39ac14..816b497634d6 100644
--- a/tools/testing/selftests/arm64/gcs/gcs-util.h
+++ b/tools/testing/selftests/arm64/gcs/gcs-util.h
@@ -26,6 +26,10 @@ struct user_gcs {
};
#endif
+#ifndef HWCAP_GCS
+#define HWCAP_GCS (1UL << 32)
+#endif
+
/* Shadow Stack/Guarded Control Stack interface */
#define PR_GET_SHADOW_STACK_STATUS 74
#define PR_SET_SHADOW_STACK_STATUS 75