1. 03 Sep, 2022 8 commits
  2. 02 Sep, 2022 11 commits
  3. 01 Sep, 2022 7 commits
  4. 31 Aug, 2022 7 commits
  5. 30 Aug, 2022 1 commit
  6. 29 Aug, 2022 3 commits
    • James Hilliard's avatar
      selftests/bpf: Fix connect4_prog tcp/socket header type conflict · 2eb68040
      James Hilliard authored
      There is a potential for us to hit a type conflict when including
      netinet/tcp.h and sys/socket.h, we can replace both of these includes
      with linux/tcp.h and bpf_tcp_helpers.h to avoid this conflict.
      
      Fixes errors like the below when compiling with gcc BPF backend:
      
        In file included from /usr/include/netinet/tcp.h:91,
                         from progs/connect4_prog.c:11:
        /home/buildroot/opt/cross/lib/gcc/bpf/13.0.0/include/stdint.h:34:23: error: conflicting types for 'int8_t'; have 'char'
           34 | typedef __INT8_TYPE__ int8_t;
              |                       ^~~~~~
        In file included from /usr/include/x86_64-linux-gnu/sys/types.h:155,
                         from /usr/include/x86_64-linux-gnu/bits/socket.h:29,
                         from /usr/include/x86_64-linux-gnu/sys/socket.h:33,
                         from progs/connect4_prog.c:10:
        /usr/include/x86_64-linux-gnu/bits/stdint-intn.h:24:18: note: previous declaration of 'int8_t' with type 'int8_t' {aka 'signed char'}
           24 | typedef __int8_t int8_t;
              |                  ^~~~~~
        /home/buildroot/opt/cross/lib/gcc/bpf/13.0.0/include/stdint.h:43:24: error: conflicting types for 'int64_t'; have 'long int'
           43 | typedef __INT64_TYPE__ int64_t;
              |                        ^~~~~~~
        /usr/include/x86_64-linux-gnu/bits/stdint-intn.h:27:19: note: previous declaration of 'int64_t' with type 'int64_t' {aka 'long long int'}
           27 | typedef __int64_t int64_t;
              |                   ^~~~~~~
      Signed-off-by: default avatarJames Hilliard <james.hilliard1@gmail.com>
      Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
      Link: https://lore.kernel.org/bpf/20220829154710.3870139-1-james.hilliard1@gmail.com
      2eb68040
    • James Hilliard's avatar
      selftests/bpf: Fix bind{4,6} tcp/socket header type conflict · 3721359d
      James Hilliard authored
      There is a potential for us to hit a type conflict when including
      netinet/tcp.h with sys/socket.h, we can remove these as they are not
      actually needed.
      
      Fixes errors like the below when compiling with gcc BPF backend:
      
        In file included from /usr/include/netinet/tcp.h:91,
                         from progs/bind4_prog.c:10:
        /home/buildroot/opt/cross/lib/gcc/bpf/13.0.0/include/stdint.h:34:23: error: conflicting types for 'int8_t'; have 'char'
           34 | typedef __INT8_TYPE__ int8_t;
              |                       ^~~~~~
        In file included from /usr/include/x86_64-linux-gnu/sys/types.h:155,
                         from /usr/include/x86_64-linux-gnu/bits/socket.h:29,
                         from /usr/include/x86_64-linux-gnu/sys/socket.h:33,
                         from progs/bind4_prog.c:9:
        /usr/include/x86_64-linux-gnu/bits/stdint-intn.h:24:18: note: previous declaration of 'int8_t' with type 'int8_t' {aka 'signed char'}
           24 | typedef __int8_t int8_t;
              |                  ^~~~~~
        /home/buildroot/opt/cross/lib/gcc/bpf/13.0.0/include/stdint.h:43:24: error: conflicting types for 'int64_t'; have 'long int'
           43 | typedef __INT64_TYPE__ int64_t;
              |                        ^~~~~~~
        /usr/include/x86_64-linux-gnu/bits/stdint-intn.h:27:19: note: previous declaration of 'int64_t' with type 'int64_t' {aka 'long long int'}
           27 | typedef __int64_t int64_t;
              |                   ^~~~~~~
        make: *** [Makefile:537: /home/buildroot/bpf-next/tools/testing/selftests/bpf/bpf_gcc/bind4_prog.o] Error 1
      Signed-off-by: default avatarJames Hilliard <james.hilliard1@gmail.com>
      Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
      Link: https://lore.kernel.org/bpf/20220826052925.980431-1-james.hilliard1@gmail.com
      3721359d
    • Tiezhu Yang's avatar
      bpf, mips: No need to use min() to get MAX_TAIL_CALL_CNT · bbcf0f55
      Tiezhu Yang authored
      MAX_TAIL_CALL_CNT is 33, so min(MAX_TAIL_CALL_CNT, 0xffff) is always
      MAX_TAIL_CALL_CNT, it is better to use MAX_TAIL_CALL_CNT directly.
      
      At the same time, add BUILD_BUG_ON(MAX_TAIL_CALL_CNT > 0xffff) with a
      comment on why the assertion is there.
      Suggested-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
      Suggested-by: default avatarJohan Almbladh <johan.almbladh@anyfinetworks.com>
      Signed-off-by: default avatarTiezhu Yang <yangtiezhu@loongson.cn>
      Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
      Link: https://lore.kernel.org/bpf/1661742309-2320-1-git-send-email-yangtiezhu@loongson.cn
      bbcf0f55
  7. 27 Aug, 2022 2 commits
  8. 26 Aug, 2022 1 commit
    • James Hilliard's avatar
      selftests/bpf: fix type conflict in test_tc_dtime · ab9ac19c
      James Hilliard authored
      The sys/socket.h header isn't required to build test_tc_dtime and may
      cause a type conflict.
      
      Fixes the following error:
      In file included from /usr/include/x86_64-linux-gnu/sys/types.h:155,
                       from /usr/include/x86_64-linux-gnu/bits/socket.h:29,
                       from /usr/include/x86_64-linux-gnu/sys/socket.h:33,
                       from progs/test_tc_dtime.c:18:
      /usr/include/x86_64-linux-gnu/bits/stdint-intn.h:24:18: error: conflicting types for 'int8_t'; have '__int8_t' {aka 'signed char'}
         24 | typedef __int8_t int8_t;
            |                  ^~~~~~
      In file included from progs/test_tc_dtime.c:5:
      /home/buildroot/opt/cross/lib/gcc/bpf/13.0.0/include/stdint.h:34:23: note: previous declaration of 'int8_t' with type 'int8_t' {aka 'char'}
         34 | typedef __INT8_TYPE__ int8_t;
            |                       ^~~~~~
      /usr/include/x86_64-linux-gnu/bits/stdint-intn.h:27:19: error: conflicting types for 'int64_t'; have '__int64_t' {aka 'long long int'}
         27 | typedef __int64_t int64_t;
            |                   ^~~~~~~
      /home/buildroot/opt/cross/lib/gcc/bpf/13.0.0/include/stdint.h:43:24: note: previous declaration of 'int64_t' with type 'int64_t' {aka 'long int'}
         43 | typedef __INT64_TYPE__ int64_t;
            |                        ^~~~~~~
      make: *** [Makefile:537: /home/buildroot/bpf-next/tools/testing/selftests/bpf/bpf_gcc/test_tc_dtime.o] Error 1
      Signed-off-by: default avatarJames Hilliard <james.hilliard1@gmail.com>
      Link: https://lore.kernel.org/r/20220826050703.869571-1-james.hilliard1@gmail.comSigned-off-by: default avatarMartin KaFai Lau <kafai@fb.com>
      ab9ac19c