lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20251106114440.850468-1-wangyuli@aosc.io>
Date: Thu,  6 Nov 2025 19:44:40 +0800
From: WangYuli <wangyuli@...c.io>
To: kees@...nel.org,
	luto@...capital.net,
	wad@...omium.org,
	shuah@...nel.org
Cc: linux-kselftest@...r.kernel.org,
	linux-kernel@...r.kernel.org,
	WangYuli <wangyl5933@...naunicom.cn>,
	WangYuli <wangyuli@...c.io>
Subject: [PATCH] selftests/seccomp: Fix pointer type mismatch in uprobe function declarations

From: WangYuli <wangyl5933@...naunicom.cn>

Add __nocf_check attribute to probed_uretprobe on x86_64 to match
probed_uprobe's function signature.

[ Fix follow error with gcc-15: ]
    CC       seccomp_bpf
  seccomp_bpf.c: In function ‘UPROBE_setup’:
  seccomp_bpf.c:5175:74: error: pointer type mismatch in conditional expression [-Wincompatible-pointer-types]
   5175 |         offset = get_uprobe_offset(variant->uretprobe ? probed_uretprobe : probed_uprobe);
        |                                                                          ^
  seccomp_bpf.c:5175:57: note: first expression has type ‘int (*)(void)’
   5175 |         offset = get_uprobe_offset(variant->uretprobe ? probed_uretprobe : probed_uprobe);
        |                                                         ^~~~~~~~~~~~~~~~
  seccomp_bpf.c:5175:76: note: second expression has type ‘int (__attribute__((nocf_check)) *)(void)’
   5175 |         offset = get_uprobe_offset(variant->uretprobe ? probed_uretprobe : probed_uprobe);
        |                                                                            ^~~~~~~~~~~~~

Signed-off-by: WangYuli <wangyl5933@...naunicom.cn>
Signed-off-by: WangYuli <wangyuli@...c.io>
---
 tools/testing/selftests/seccomp/seccomp_bpf.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/tools/testing/selftests/seccomp/seccomp_bpf.c b/tools/testing/selftests/seccomp/seccomp_bpf.c
index 874f17763536..19df80d18619 100644
--- a/tools/testing/selftests/seccomp/seccomp_bpf.c
+++ b/tools/testing/selftests/seccomp/seccomp_bpf.c
@@ -5057,17 +5057,23 @@ __naked __nocf_check noinline int probed_uprobe(void)
 }
 #pragma GCC diagnostic pop
 
-#else
+int __nocf_check noinline probed_uretprobe(void)
+{
+	return 1;
+}
+
+#else /* !__x86_64__ */
+
 noinline int probed_uprobe(void)
 {
 	return 1;
 }
-#endif
 
 noinline int probed_uretprobe(void)
 {
 	return 1;
 }
+#endif /* __x86_64__ */
 
 static int parse_uint_from_file(const char *file, const char *fmt)
 {
-- 
2.51.0


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ