lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Thu, 5 Jul 2018 10:35:24 +0200 From: Daniel Borkmann <daniel@...earbox.net> To: Jakub Kicinski <jakub.kicinski@...ronome.com>, alexei.starovoitov@...il.com Cc: oss-drivers@...ronome.com, netdev@...r.kernel.org Subject: Re: [PATCH bpf-next 11/11] tools: bpftool: allow reuse of maps with bpftool prog load On 07/04/2018 04:54 AM, Jakub Kicinski wrote: > Add map parameter to prog load which will allow reuse of existing > maps instead of creating new ones. > > Signed-off-by: Jakub Kicinski <jakub.kicinski@...ronome.com> > Reviewed-by: Quentin Monnet <quentin.monnet@...ronome.com> [...] > + > + fd = map_parse_fd(&argc, &argv); > + if (fd < 0) > + goto err_free_reuse_maps; > + > + map_replace = reallocarray(map_replace, old_map_fds + 1, > + sizeof(*map_replace)); > + if (!map_replace) { > + p_err("mem alloc failed"); > + goto err_free_reuse_maps; Series in general looks good to me. However, above reallocarray() doesn't exist and hence build fails, please see below. Is that from newest glibc? You probably need some fallback implementation or in general have something bpftool internal that doesn't make a bet on its availability. # make Auto-detecting system features: ... libbfd: [ on ] ... disassembler-four-args: [ OFF ] CC bpf_jit_disasm.o LINK bpf_jit_disasm CC bpf_dbg.o LINK bpf_dbg CC bpf_asm.o BISON bpf_exp.yacc.c CC bpf_exp.yacc.o FLEX bpf_exp.lex.c CC bpf_exp.lex.o LINK bpf_asm DESCEND bpftool Auto-detecting system features: ... libbfd: [ on ] ... disassembler-four-args: [ OFF ] CC map_perf_ring.o CC xlated_dumper.o CC perf.o CC prog.o prog.c: In function ‘do_load’: prog.c:785:18: warning: implicit declaration of function ‘reallocarray’ [-Wimplicit-function-declaration] map_replace = reallocarray(map_replace, old_map_fds + 1, ^~~~~~~~~~~~ prog.c:785:16: warning: assignment makes pointer from integer without a cast [-Wint-conversion] map_replace = reallocarray(map_replace, old_map_fds + 1, ^ CC common.o CC cgroup.o CC main.o CC json_writer.o CC cfg.o CC map.o CC jit_disasm.o CC disasm.o Auto-detecting system features: ... libelf: [ on ] ... bpf: [ on ] Warning: Kernel ABI header at 'tools/include/uapi/linux/bpf.h' differs from latest version at 'include/uapi/linux/bpf.h' CC libbpf.o CC bpf.o CC nlattr.o CC btf.o LD libbpf-in.o LINK libbpf.a LINK bpftool prog.o: In function `do_load': prog.c:(.text+0x23d): undefined reference to `reallocarray' collect2: error: ld returned 1 exit status Makefile:89: recipe for target 'bpftool' failed make[1]: *** [bpftool] Error 1 Makefile:99: recipe for target 'bpftool' failed make: *** [bpftool] Error 2 Thanks, Daniel
Powered by blists - more mailing lists