Re: linux-next: manual merge of the bpf-next tree with the bpf tree

From: Stephen Rothwell
Date: Tue Oct 15 2019 - 19:29:33 EST


Hi all,

This is now a conflict between the net and net-next trees.

On Wed, 9 Oct 2019 09:47:25 +1100 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> Today's linux-next merge of the bpf-next tree got a conflict in:
>
> tools/lib/bpf/Makefile
>
> between commit:
>
> 1bd63524593b ("libbpf: handle symbol versioning properly for libbpf.a")
>
> from the bpf tree and commit:
>
> e01a75c15969 ("libbpf: Move bpf_{helpers, helper_defs, endian, tracing}.h into libbpf")
>
> from the bpf-next tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
>
> --
> Cheers,
> Stephen Rothwell
>
> diff --cc tools/lib/bpf/Makefile
> index 56ce6292071b,1270955e4845..000000000000
> --- a/tools/lib/bpf/Makefile
> +++ b/tools/lib/bpf/Makefile
> @@@ -143,7 -133,9 +143,9 @@@ LIB_TARGET := $(addprefix $(OUTPUT),$(L
> LIB_FILE := $(addprefix $(OUTPUT),$(LIB_FILE))
> PC_FILE := $(addprefix $(OUTPUT),$(PC_FILE))
>
> + TAGS_PROG := $(if $(shell which etags 2>/dev/null),etags,ctags)
> +
> -GLOBAL_SYM_COUNT = $(shell readelf -s --wide $(BPF_IN) | \
> +GLOBAL_SYM_COUNT = $(shell readelf -s --wide $(BPF_IN_SHARED) | \
> cut -d "@" -f1 | sed 's/_v[0-9]_[0-9]_[0-9].*//' | \
> awk '/GLOBAL/ && /DEFAULT/ && !/UND/ {print $$8}' | \
> sort -u | wc -l)
> @@@ -165,7 -157,7 +167,7 @@@ all: fixde
>
> all_cmd: $(CMD_TARGETS) check
>
> - $(BPF_IN_SHARED): force elfdep bpfdep
> -$(BPF_IN): force elfdep bpfdep bpf_helper_defs.h
> ++$(BPF_IN_SHARED): force elfdep bpfdep bpf_helper_defs.h
> @(test -f ../../include/uapi/linux/bpf.h -a -f ../../../include/uapi/linux/bpf.h && ( \
> (diff -B ../../include/uapi/linux/bpf.h ../../../include/uapi/linux/bpf.h >/dev/null) || \
> echo "Warning: Kernel ABI header at 'tools/include/uapi/linux/bpf.h' differs from latest version at 'include/uapi/linux/bpf.h'" >&2 )) || true
> @@@ -181,14 -173,15 +183,18 @@@
> @(test -f ../../include/uapi/linux/if_xdp.h -a -f ../../../include/uapi/linux/if_xdp.h && ( \
> (diff -B ../../include/uapi/linux/if_xdp.h ../../../include/uapi/linux/if_xdp.h >/dev/null) || \
> echo "Warning: Kernel ABI header at 'tools/include/uapi/linux/if_xdp.h' differs from latest version at 'include/uapi/linux/if_xdp.h'" >&2 )) || true
> - $(Q)$(MAKE) $(build)=libbpf
> + $(Q)$(MAKE) $(build)=libbpf OUTPUT=$(SHARED_OBJDIR) CFLAGS="$(CFLAGS) $(SHLIB_FLAGS)"
> +
> +$(BPF_IN_STATIC): force elfdep bpfdep
> + $(Q)$(MAKE) $(build)=libbpf OUTPUT=$(STATIC_OBJDIR)
>
> + bpf_helper_defs.h: $(srctree)/include/uapi/linux/bpf.h
> + $(Q)$(srctree)/scripts/bpf_helpers_doc.py --header \
> + --file $(srctree)/include/uapi/linux/bpf.h > bpf_helper_defs.h
> +
> $(OUTPUT)libbpf.so: $(OUTPUT)libbpf.so.$(LIBBPF_VERSION)
>
> -$(OUTPUT)libbpf.so.$(LIBBPF_VERSION): $(BPF_IN)
> +$(OUTPUT)libbpf.so.$(LIBBPF_VERSION): $(BPF_IN_SHARED)
> $(QUIET_LINK)$(CC) --shared -Wl,-soname,libbpf.so.$(LIBBPF_MAJOR_VERSION) \
> -Wl,--version-script=$(VERSION_SCRIPT) $^ -lelf -o $@
> @ln -sf $(@F) $(OUTPUT)libbpf.so
> @@@ -268,9 -266,9 +279,10 @@@ config-clean
> $(Q)$(MAKE) -C $(srctree)/tools/build/feature/ clean >/dev/null
>
> clean:
> - $(call QUIET_CLEAN, libbpf) $(RM) $(TARGETS) $(CXX_TEST_TARGET) \
> + $(call QUIET_CLEAN, libbpf) $(RM) -rf $(TARGETS) $(CXX_TEST_TARGET) \
> *.o *~ *.a *.so *.so.$(LIBBPF_MAJOR_VERSION) .*.d .*.cmd \
> - *.pc LIBBPF-CFLAGS $(SHARED_OBJDIR) $(STATIC_OBJDIR)
> - *.pc LIBBPF-CFLAGS bpf_helper_defs.h
> ++ *.pc LIBBPF-CFLAGS $(SHARED_OBJDIR) $(STATIC_OBJDIR) \
> ++ bpf_helper_defs.h
> $(call QUIET_CLEAN, core-gen) $(RM) $(OUTPUT)FEATURE-DUMP.libbpf
>
>

--
Cheers,
Stephen Rothwell

Attachment: pgpzwk3HRCvlK.pgp
Description: OpenPGP digital signature