On Tue, Mar 19, 2024 at 1:20 AM Eduard Zingerman eddyz87@gmail.com wrote:
On Fri, 2024-03-15 at 15:29 +0100, Benjamin Tissoires wrote:
bpf_experimental.h and ../bpf_testmod/bpf_testmod_kfunc.h are both including vmlinux.h, which is not compatible with including time.h or bpf_tcp_helpers.h.
So prevent vmlinux.h to be included, and override the few missing types.
Signed-off-by: Benjamin Tissoires bentiss@kernel.org
[...]
@@ -6,6 +6,14 @@ #include <bpf/bpf_helpers.h> #include "bpf_tcp_helpers.h"
+#define __VMLINUX_H__ +#define u32 __u32 +#define u64 __u64 +#include "bpf_experimental.h" +struct prog_test_member1; +#include "../bpf_testmod/bpf_testmod_kfunc.h" +#undef __VMLINUX_H__
Tbh, this looks very ugly.
heh :)
Would it be possible to create a new tests file sleepable_timer.c and include bpf_experimental.h there, skipping time.h?
Sounds like an option, yeah :)
It appears that for the new tests the only necessary definition from time.h is CLOCK_MONOTONIC.
Yeah, that #define should be the only one missing.
I'll try to come up with better tests in v5 :)
Cheers, Benjamin