On Wed, Jan 23, 2019 at 07:15:07PM -0800, Stanislav Fomichev wrote:
> On 01/23, Alexei Starovoitov wrote:
> > On Wed, Jan 23, 2019 at 09:24:35AM -0800, Stanislav Fomichev wrote:
> > > Before:
> > > $ make -s -C tools/testing/selftests/bpf
> > > readelf: Error: Missing knowledge of 32-bit reloc types used in DWARF
> > > sections of machine number 247
> > > readelf: Warning: unable to apply unsupported reloc type 10 to section
> > > .debug_info
> > > readelf: Warning: unable to apply unsupported reloc type 1 to section
> > > .debug_info
> > > readelf: Warning: unable to apply unsupported reloc type 10 to section
> > > .debug_info
> > > 
> > > After:
> > > $ make -s -C tools/testing/selftests/bpf
> > > 
> > > Signed-off-by: Stanislav Fomichev <s...@google.com>
> > > ---
> > >  tools/testing/selftests/bpf/Makefile | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/tools/testing/selftests/bpf/Makefile 
> > > b/tools/testing/selftests/bpf/Makefile
> > > index 70229de510f5..ff3cab5525c1 100644
> > > --- a/tools/testing/selftests/bpf/Makefile
> > > +++ b/tools/testing/selftests/bpf/Makefile
> > > @@ -131,7 +131,7 @@ BTF_PAHOLE_PROBE := $(shell $(BTF_PAHOLE) --help 2>&1 
> > > | grep BTF)
> > >  BTF_OBJCOPY_PROBE := $(shell $(LLVM_OBJCOPY) --help 2>&1 | grep -i 
> > > 'usage.*llvm')
> > >  BTF_LLVM_PROBE := $(shell echo "int main() { return 0; }" | \
> > >                     $(CLANG) -target bpf -O2 -g -c -x c - -o 
> > > ./llvm_btf_verify.o; \
> > > -                   readelf -S ./llvm_btf_verify.o | grep BTF; \
> > > +                   readelf -S ./llvm_btf_verify.o 2>/dev/null | grep 
> > > BTF; \
> > >                     /bin/rm -f ./llvm_btf_verify.o)
> > 
> > Silencing the warning may hide real issue later.
> > I'd rather fix whatever is necessary in readelf.
> > Does it use bfd? if so bpf support for bfd was practically complete.
> Are you concerned about the situation where llvm has btf support, but
> readelf (binutils) is unaware of it? In this case, we should probably
> use llvm's readelf (llvm-readelf binary). We already have a precedent of
> using llvm's tools with LLVM_OBJCOPY. Let me try it out tomorrow.

llvm-readelf or llvm-objdump are fine options too.

Reply via email to