On Tue, May 12, 2020 at 8:54 AM Yonghong Song <[email protected]> wrote:
>
> Commit 5fbc220862fc ("tools/libpf: Add offsetof/container_of macro
> in bpf_helpers.h") added macros offsetof/container_of to
> bpf_helpers.h. Unfortunately, it caused compilation warnings
> below for a few samples/bpf programs:
>   In file included from 
> /data/users/yhs/work/net-next/samples/bpf/sockex2_kern.c:4:
>   In file included from 
> /data/users/yhs/work/net-next/include/uapi/linux/in.h:24:
>   In file included from 
> /data/users/yhs/work/net-next/include/linux/socket.h:8:
>   In file included from /data/users/yhs/work/net-next/include/linux/uio.h:8:
>   /data/users/yhs/work/net-next/include/linux/kernel.h:992:9: warning: 
> 'container_of' macro redefined [-Wmacro-redefined]
>           ^
>   /data/users/yhs/work/net-next/tools/lib/bpf/bpf_helpers.h:46:9: note: 
> previous definition is here
>           ^
>   1 warning generated.
>     CLANG-bpf  samples/bpf/sockex3_kern.o
>
> In all these cases, bpf_helpers.h is included first, followed by other
> standard headers. The macro container_of is defined unconditionally
> in kernel.h, causing the compiler warning.
>
> The fix is to move bpf_helpers.h after standard headers.
>
> Signed-off-by: Yonghong Song <[email protected]>
> ---

LGTM.

Acked-by: Andrii Nakryiko <[email protected]>

>  samples/bpf/offwaketime_kern.c | 4 ++--
>  samples/bpf/sockex2_kern.c     | 4 ++--
>  samples/bpf/sockex3_kern.c     | 4 ++--
>  3 files changed, 6 insertions(+), 6 deletions(-)
>

[...]

Reply via email to