Skip to contentSkip to conversation

samples/bpf: Be consistent with bpf_load_program bpf_insn parameter

tip:perf/urgent tip-bot for Arnaldo Carvalho de Melo 1 participant 1 message Dec 20, 2016 BPF

lore
Share & tools
lore
#0 lore raw
Commit-ID:  811b4f0d785d33eabfff5d0ea60596b6b8bdc825
Gitweb:     http://git.kernel.org/tip/811b4f0d785d33eabfff5d0ea60596b6b8bdc825
Author:     Arnaldo Carvalho de Melo <[email protected]>
AuthorDate: Tue, 20 Dec 2016 11:03:13 -0300
Committer:  Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Tue, 20 Dec 2016 12:00:39 -0300

samples/bpf: Be consistent with bpf_load_program bpf_insn parameter

Only one of the examples declare the bpf_insn bpf proggie as a const:

  $ grep 'struct bpf_insn [a-z]' samples/bpf/*.c
  samples/bpf/fds_example.c:	static const struct bpf_insn insns[] = {
  samples/bpf/sock_example.c:	struct bpf_insn prog[] = {
  samples/bpf/test_cgrp2_attach2.c:	struct bpf_insn prog[] = {
  samples/bpf/test_cgrp2_attach.c:	struct bpf_insn prog[] = {
  samples/bpf/test_cgrp2_sock.c:	struct bpf_insn prog[] = {
  $

Which causes this warning:

[root@f5065a7d6272 linux]# make -j4 O=/tmp/build/linux samples/bpf/
<SNIP>
HOSTCC samples/bpf/fds_example.o
/git/linux/samples/bpf/fds_example.c: In function 'bpf_prog_create':
/git/linux/samples/bpf/fds_example.c:63:6: warning: passing argument 2 of 'bpf_load_program' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]

        insns, insns_cnt, "GPL", 0,
        ^~~~~
  In file included from /git/linux/samples/bpf/libbpf.h:5:0,
                   from /git/linux/samples/bpf/bpf_load.h:4,
                   from /git/linux/samples/bpf/fds_example.c:15:
  /git/linux/tools/lib/bpf/bpf.h:31:5: note: expected 'struct bpf_insn *' but argument is of type 'const struct bpf_insn *'
   int bpf_load_program(enum bpf_prog_type type, struct bpf_insn *insns,
       ^~~~~~~~~~~~~~~~
    HOSTCC  samples/bpf/sockex1_user.o

So just ditch that 'const' to reduce build noise, leaving changing the bpf_load_program() bpf_insn parameter to const to a later patch, if deemed adequate.

---
 samples/bpf/fds_example.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
samples/bpf/fds_example.c +1 -1
index 6245062..a5cddc9 100644
@@ -49,7 +49,7 @@ static int bpf_map_create(void)
 
 static int bpf_prog_create(const char *object)
 {
-	static const struct bpf_insn insns[] = {
+	static struct bpf_insn insns[] = {
 		BPF_MOV64_IMM(BPF_REG_0, 1),
 		BPF_EXIT_INSN(),
 	};