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
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Sat, 6 Nov 2021 18:05:07 -0300
From:   Arnaldo Carvalho de Melo <acme@...nel.org>
To:     Quentin Monnet <quentin@...valent.com>
Cc:     Andrii Nakryiko <andrii.nakryiko@...il.com>,
        Alexei Starovoitov <ast@...nel.org>,
        Daniel Borkmann <daniel@...earbox.net>,
        Andrii Nakryiko <andrii@...nel.org>,
        Networking <netdev@...r.kernel.org>, bpf <bpf@...r.kernel.org>,
        Song Liu <songliubraving@...com>, Jiri Olsa <jolsa@...nel.org>,
        Namhyung Kim <namhyung@...nel.org>,
        Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: [BUG] Re: [PATCH bpf-next] perf build: Install libbpf headers
 locally when building

Em Sat, Nov 06, 2021 at 05:12:48PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Sat, Nov 06, 2021 at 04:29:16PM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Fri, Nov 05, 2021 at 11:38:50AM -0700, Andrii Nakryiko escreveu:
> > > On Thu, Nov 4, 2021 at 7:02 PM Quentin Monnet <quentin@...valent.com> wrote:
> > > >
> > > > API headers from libbpf should not be accessed directly from the
> > > > library's source directory. Instead, they should be exported with "make
> > > > install_headers". Let's adjust perf's Makefile to install those headers
> > > > locally when building libbpf.
> > > >
> > > > Signed-off-by: Quentin Monnet <quentin@...valent.com>
> > > > ---
> > > > Note: Sending to bpf-next because it's directly related to libbpf, and
> > > > to similar patches merged through bpf-next, but maybe Arnaldo prefers to
> > > > take it?
> > > 
> > > Arnaldo would know better how to thoroughly test it, so I'd prefer to
> > > route this through perf tree. Any objections, Arnaldo?
> > 
> > Preliminary testing passed for 'BUILD_BPF_SKEL=1' with without
> > LIBBPF_DYNAMIC=1 (using the system's libbpf-devel to build perf), so far
> > so good, so I tentatively applied it, will see with the full set of
> > containers.
> 
> Because all the preliminary tests used O= to have that OUTPUT variable
> set, when we do simply:
> 
> 	make -C tools/perf

So I'll have to remove it now as my container builds test both O= and
in-place builds (make -C tools/perf), I know many people (Jiri for
instance) don't use O=.

I tried to fix this but run out of time today, visits arriving soon, so
I'll try to come back to this tomorrow early morning, to push what I
have in to Linus, that is blocked by this now :-\

- Arnaldo
 
> it breaks:
> 
> ⬢[acme@...lbox perf]$ make -C tools clean > /dev/null 2>&1
> ⬢[acme@...lbox perf]$ make JOBS=1 -C tools/perf
> make: Entering directory '/var/home/acme/git/perf/tools/perf'
>   BUILD:   Doing 'make -j1' parallel build
>   HOSTCC  fixdep.o
>   HOSTLD  fixdep-in.o
>   LINK    fixdep
> <SNIP ABI sync warnings>
> 
> Auto-detecting system features:
> ...                         dwarf: [ on  ]
> ...            dwarf_getlocations: [ on  ]
> ...                         glibc: [ on  ]
> ...                        libbfd: [ on  ]
> ...                libbfd-buildid: [ on  ]
> ...                        libcap: [ on  ]
> ...                        libelf: [ on  ]
> ...                       libnuma: [ on  ]
> ...        numa_num_possible_cpus: [ on  ]
> ...                       libperl: [ on  ]
> ...                     libpython: [ on  ]
> ...                     libcrypto: [ on  ]
> ...                     libunwind: [ on  ]
> ...            libdw-dwarf-unwind: [ on  ]
> ...                          zlib: [ on  ]
> ...                          lzma: [ on  ]
> ...                     get_cpuid: [ on  ]
> ...                           bpf: [ on  ]
> ...                        libaio: [ on  ]
> ...                       libzstd: [ on  ]
> ...        disassembler-four-args: [ on  ]
> 
> 
>   CC      fd/array.o
>   LD      fd/libapi-in.o
>   CC      fs/fs.o
>   CC      fs/tracing_path.o
>   CC      fs/cgroup.o
>   LD      fs/libapi-in.o
>   CC      cpu.o
>   CC      debug.o
>   CC      str_error_r.o
>   LD      libapi-in.o
>   AR      libapi.a
>   CC      exec-cmd.o
>   CC      help.o
>   CC      pager.o
>   CC      parse-options.o
>   CC      run-command.o
>   CC      sigchain.o
>   CC      subcmd-config.o
>   LD      libsubcmd-in.o
>   AR      libsubcmd.a
>   CC      core.o
>   CC      cpumap.o
>   CC      threadmap.o
>   CC      evsel.o
>   CC      evlist.o
>   CC      mmap.o
>   CC      zalloc.o
>   CC      xyarray.o
>   CC      lib.o
>   LD      libperf-in.o
>   AR      libperf.a
> make[2]: *** No rule to make target 'libbpf', needed by 'libbpf/libbpf.a'.  Stop.
> make[1]: *** [Makefile.perf:240: sub-make] Error 2
> make: *** [Makefile:70: all] Error 2
> make: Leaving directory '/var/home/acme/git/perf/tools/perf'
> ⬢[acme@...lbox perf]$
> 
> Trying to fix...
> 
> - Arnaldo

-- 

- Arnaldo

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ