On Tue, Mar 19, 2024 at 1:20 AM Eduard Zingerman <eddyz87@xxxxxxxxx> 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@xxxxxxxxxx> > > [...] > > > @@ -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