[PATCH] capability: test_deny_namespace breakage due to capability conversion to u64

From: Sasha Levin
Date: Fri Mar 24 2023 - 08:36:44 EST


Commit f122a08b197d ("capability: just use a 'u64' instead of a 'u32[2]'
array") attempts to use BIT_LL() but actually wanted to use BIT_ULL(),
fix it up to make the test compile and run again.

Fixes: f122a08b197d ("capability: just use a 'u64' instead of a 'u32[2]' array")
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
tools/testing/selftests/bpf/Makefile | 2 +-
tools/testing/selftests/bpf/progs/test_deny_namespace.c | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests/bpf/Makefile
index b677dcd0b77af..91a4e61b61f6d 100644
--- a/tools/testing/selftests/bpf/Makefile
+++ b/tools/testing/selftests/bpf/Makefile
@@ -353,7 +353,7 @@ endif
CLANG_SYS_INCLUDES = $(call get_sys_includes,$(CLANG),$(CLANG_TARGET_ARCH))
BPF_CFLAGS = -g -Werror -D__TARGET_ARCH_$(SRCARCH) $(MENDIAN) \
-I$(INCLUDE_DIR) -I$(CURDIR) -I$(APIDIR) \
- -I$(abspath $(OUTPUT)/../usr/include)
+ -I$(abspath $(OUTPUT)/../usr/include) -I$(TOOLSINCDIR)

CLANG_CFLAGS = $(CLANG_SYS_INCLUDES) \
-Wno-compare-distinct-pointer-types
diff --git a/tools/testing/selftests/bpf/progs/test_deny_namespace.c b/tools/testing/selftests/bpf/progs/test_deny_namespace.c
index 591104e79812e..0a619c34d692d 100644
--- a/tools/testing/selftests/bpf/progs/test_deny_namespace.c
+++ b/tools/testing/selftests/bpf/progs/test_deny_namespace.c
@@ -4,6 +4,7 @@
#include <bpf/bpf_tracing.h>
#include <errno.h>
#include <linux/capability.h>
+#include <vdso/bits.h>

struct kernel_cap_struct {
__u64 val;
@@ -19,7 +20,7 @@ SEC("lsm.s/userns_create")
int BPF_PROG(test_userns_create, const struct cred *cred, int ret)
{
struct kernel_cap_struct caps = cred->cap_effective;
- __u64 cap_mask = BIT_LL(CAP_SYS_ADMIN);
+ __u64 cap_mask = BIT_ULL(CAP_SYS_ADMIN);

if (ret)
return 0;
--
2.39.2