From: Ondrej Mosnáček on gitlab.com Merge Request: https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892
(see individual commits for explanation)
Signed-off-by: Ondrej Mosnacek omosnace@redhat.com
--- redhat/self-test/data/centos-2585cf9dfaad.el7 | 4 ++-- redhat/self-test/data/centos-2585cf9dfaad.fc25 | 4 ++-- redhat/self-test/data/centos-78e36f3b0dae.el7 | 4 ++-- redhat/self-test/data/centos-78e36f3b0dae.fc25 | 4 ++-- redhat/self-test/data/centos-df0cc57e057f.el7 | 4 ++-- redhat/self-test/data/centos-df0cc57e057f.fc25 | 4 ++-- redhat/self-test/data/centos-fce15c45d3fb.el7 | 4 ++-- redhat/self-test/data/centos-fce15c45d3fb.fc25 | 4 ++-- redhat/self-test/data/create-data.sh | 2 +- redhat/self-test/data/fedora-2585cf9dfaad.el7 | 4 ++-- redhat/self-test/data/fedora-2585cf9dfaad.fc25 | 4 ++-- redhat/self-test/data/fedora-78e36f3b0dae.el7 | 4 ++-- redhat/self-test/data/fedora-78e36f3b0dae.fc25 | 4 ++-- redhat/self-test/data/fedora-df0cc57e057f.el7 | 4 ++-- redhat/self-test/data/fedora-df0cc57e057f.fc25 | 4 ++-- redhat/self-test/data/fedora-fce15c45d3fb.el7 | 4 ++-- redhat/self-test/data/fedora-fce15c45d3fb.fc25 | 4 ++-- redhat/self-test/data/rhel-2585cf9dfaad.el7 | 4 ++-- redhat/self-test/data/rhel-2585cf9dfaad.fc25 | 4 ++-- redhat/self-test/data/rhel-78e36f3b0dae.el7 | 4 ++-- redhat/self-test/data/rhel-78e36f3b0dae.fc25 | 4 ++-- redhat/self-test/data/rhel-df0cc57e057f.el7 | 4 ++-- redhat/self-test/data/rhel-df0cc57e057f.fc25 | 4 ++-- redhat/self-test/data/rhel-fce15c45d3fb.el7 | 4 ++-- redhat/self-test/data/rhel-fce15c45d3fb.fc25 | 4 ++-- redhat/Makefile | 26 +++++++++++++------------- 26 files changed, 62 insertions(+), 62 deletions(-)
From: Ondrej Mosnacek omosnace@redhat.com
redhat/Makefile: refactor KABI tarball creation
Place $(KABI_TARBALL) and $(KABIDW_TARBALL) in $(REDHAT) instead of $(SOURCES) and only link/copy them into $(SOURCES) in _setup-source, same as is done with $(TARBALL).
This allows removing duplicate steps to make the KABI tarballs from _setup-source, while avoiding a race with dist-clean-sources (which could otherwise remove the tarballs after being created, because setup-source depends on it).
Signed-off-by: Ondrej Mosnacek omosnace@redhat.com
diff --git a/redhat/Makefile b/redhat/Makefile index blahblah..blahblah 100644 --- a/redhat/Makefile +++ b/redhat/Makefile @@ -331,9 +331,9 @@ endif TARFILE:=linux-$(SPECTARFILE_RELEASE).tar.xz TARBALL:=$(REDHAT)/$(TARFILE)
-KABI_TARBALL:=$(SOURCES)/kernel-abi-stablelists-$(SPECKABIVERSION).tar.xz +KABI_TARBALL:=$(REDHAT)/kernel-abi-stablelists-$(SPECKABIVERSION).tar.xz KABIDW := $(REDHAT)/kabi-dwarf -KABIDW_TARBALL:=$(SOURCES)/kernel-kabi-dw-$(SPECKABIVERSION).tar.xz +KABIDW_TARBALL:=$(REDHAT)/kernel-kabi-dw-$(SPECKABIVERSION).tar.xz
# Taken from tools/lib/bpf/Makefile SPECBPFTOOLVERSION:=$(shell \ @@ -586,6 +586,8 @@ dist-clean-rpmdirs:
dist-clean: dist-clean-sources dist-clean-configs dist-clean-rpmdirs @rm -f $(REDHAT)/linux-*.tar.xz + @rm -f $(REDHAT)/kernel-abi-stablelists-*.tar.xz + @rm -f $(REDHAT)/kernel-kabi-dw-*.tar.xz
dist-stub-key: @echo "Copying pre-generated keys"; @@ -668,8 +670,9 @@ generate-testpatch-tmp: ":(exclude,top)Makefile.rhelver" \ ":(exclude,top)redhat" > $(TESTPATCH).tmp
-sources-rh: $(TARBALL) generate-testpatch-tmp setup-source dist-configs-check - @cp -l $(TARBALL) $(SOURCES)/ || cp $(TARBALL) $(SOURCES)/ +sources-rh: $(TARBALL) $(KABI_TARBALL) $(KABIDW_TARBALL) generate-testpatch-tmp setup-source dist-configs-check + @cp -l $(TARBALL) $(KABI_TARBALL) $(KABIDW_TARBALL) $(SOURCES)/ || \ + cp $(TARBALL) $(KABI_TARBALL) $(KABIDW_TARBALL) $(SOURCES)/ @touch $(TESTPATCH) @diff $(TESTPATCH).tmp $(TESTPATCH) > /dev/null || \ echo "WARNING: There are uncommitted changes in your tree or the changes are not in sync with linux-kernel-test.patch. Either commit the changes or run 'make dist-test-patch'" @@ -711,11 +714,6 @@ sources-rh: $(TARBALL) generate-testpatch-tmp setup-source dist-configs-check cp kabi/Module.kabi_$$KABIARCH $(SOURCES)/; \ cp kabi/Module.kabi_dup_$$KABIARCH $(SOURCES)/; \ done - @(cd kabi && tar -cJf $(KABI_TARBALL) kabi-rhel$(RHEL_MAJOR)* kabi-current) - @if [ ! -d $(KABIDW)/base ]; then \ - mkdir -p $(KABIDW)/base; \ - fi - @(cd kabi-dwarf && tar -cJf $(KABIDW_TARBALL) base run_kabi-dw.sh)
dist-sources: dist-kabi dist-kabi-dup sources-rh
diff --git a/redhat/self-test/data/centos-2585cf9dfaad.el7 b/redhat/self-test/data/centos-2585cf9dfaad.el7 index blahblah..blahblah 100644 --- a/redhat/self-test/data/centos-2585cf9dfaad.el7 +++ b/redhat/self-test/data/centos-2585cf9dfaad.el7 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0-0.rc5.6.test.el7.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0-0.rc5.6.test.el7.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0-0.rc5.6.test.el7.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0-0.rc5.6.test.el7.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/centos-2585cf9dfaad.fc25 b/redhat/self-test/data/centos-2585cf9dfaad.fc25 index blahblah..blahblah 100644 --- a/redhat/self-test/data/centos-2585cf9dfaad.fc25 +++ b/redhat/self-test/data/centos-2585cf9dfaad.fc25 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0-0.rc5.6.test.fc25.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0-0.rc5.6.test.fc25.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0-0.rc5.6.test.fc25.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0-0.rc5.6.test.fc25.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/centos-78e36f3b0dae.el7 b/redhat/self-test/data/centos-78e36f3b0dae.el7 index blahblah..blahblah 100644 --- a/redhat/self-test/data/centos-78e36f3b0dae.el7 +++ b/redhat/self-test/data/centos-78e36f3b0dae.el7 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.17.0-0.rc0.78e36f3b0dae.6.test.el7.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.17.0-0.rc0.78e36f3b0dae.6.test.el7.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.17.0-0.rc0.78e36f3b0dae.6.test.el7.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.17.0-0.rc0.78e36f3b0dae.6.test.el7.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/centos-78e36f3b0dae.fc25 b/redhat/self-test/data/centos-78e36f3b0dae.fc25 index blahblah..blahblah 100644 --- a/redhat/self-test/data/centos-78e36f3b0dae.fc25 +++ b/redhat/self-test/data/centos-78e36f3b0dae.fc25 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.17.0-0.rc0.78e36f3b0dae.6.test.fc25.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.17.0-0.rc0.78e36f3b0dae.6.test.fc25.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.17.0-0.rc0.78e36f3b0dae.6.test.fc25.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.17.0-0.rc0.78e36f3b0dae.6.test.fc25.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/centos-df0cc57e057f.el7 b/redhat/self-test/data/centos-df0cc57e057f.el7 index blahblah..blahblah 100644 --- a/redhat/self-test/data/centos-df0cc57e057f.el7 +++ b/redhat/self-test/data/centos-df0cc57e057f.el7 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0-6.test.el7.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0-6.test.el7.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0-6.test.el7.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0-6.test.el7.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/centos-df0cc57e057f.fc25 b/redhat/self-test/data/centos-df0cc57e057f.fc25 index blahblah..blahblah 100644 --- a/redhat/self-test/data/centos-df0cc57e057f.fc25 +++ b/redhat/self-test/data/centos-df0cc57e057f.fc25 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0-6.test.fc25.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0-6.test.fc25.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0-6.test.fc25.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0-6.test.fc25.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/centos-fce15c45d3fb.el7 b/redhat/self-test/data/centos-fce15c45d3fb.el7 index blahblah..blahblah 100644 --- a/redhat/self-test/data/centos-fce15c45d3fb.el7 +++ b/redhat/self-test/data/centos-fce15c45d3fb.el7 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0-0.rc5.fce15c45d3fb.6.test.el7.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0-0.rc5.fce15c45d3fb.6.test.el7.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0-0.rc5.fce15c45d3fb.6.test.el7.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0-0.rc5.fce15c45d3fb.6.test.el7.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/centos-fce15c45d3fb.fc25 b/redhat/self-test/data/centos-fce15c45d3fb.fc25 index blahblah..blahblah 100644 --- a/redhat/self-test/data/centos-fce15c45d3fb.fc25 +++ b/redhat/self-test/data/centos-fce15c45d3fb.fc25 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0-0.rc5.fce15c45d3fb.6.test.fc25.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0-0.rc5.fce15c45d3fb.6.test.fc25.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0-0.rc5.fce15c45d3fb.6.test.fc25.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0-0.rc5.fce15c45d3fb.6.test.fc25.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/fedora-2585cf9dfaad.el7 b/redhat/self-test/data/fedora-2585cf9dfaad.el7 index blahblah..blahblah 100644 --- a/redhat/self-test/data/fedora-2585cf9dfaad.el7 +++ b/redhat/self-test/data/fedora-2585cf9dfaad.el7 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/fedora-2585cf9dfaad.fc25 b/redhat/self-test/data/fedora-2585cf9dfaad.fc25 index blahblah..blahblah 100644 --- a/redhat/self-test/data/fedora-2585cf9dfaad.fc25 +++ b/redhat/self-test/data/fedora-2585cf9dfaad.fc25 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/fedora-78e36f3b0dae.el7 b/redhat/self-test/data/fedora-78e36f3b0dae.el7 index blahblah..blahblah 100644 --- a/redhat/self-test/data/fedora-78e36f3b0dae.el7 +++ b/redhat/self-test/data/fedora-78e36f3b0dae.el7 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.17.0.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.17.0.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.17.0.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.17.0.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/fedora-78e36f3b0dae.fc25 b/redhat/self-test/data/fedora-78e36f3b0dae.fc25 index blahblah..blahblah 100644 --- a/redhat/self-test/data/fedora-78e36f3b0dae.fc25 +++ b/redhat/self-test/data/fedora-78e36f3b0dae.fc25 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.17.0.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.17.0.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.17.0.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.17.0.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/fedora-df0cc57e057f.el7 b/redhat/self-test/data/fedora-df0cc57e057f.el7 index blahblah..blahblah 100644 --- a/redhat/self-test/data/fedora-df0cc57e057f.el7 +++ b/redhat/self-test/data/fedora-df0cc57e057f.el7 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/fedora-df0cc57e057f.fc25 b/redhat/self-test/data/fedora-df0cc57e057f.fc25 index blahblah..blahblah 100644 --- a/redhat/self-test/data/fedora-df0cc57e057f.fc25 +++ b/redhat/self-test/data/fedora-df0cc57e057f.fc25 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/fedora-fce15c45d3fb.el7 b/redhat/self-test/data/fedora-fce15c45d3fb.el7 index blahblah..blahblah 100644 --- a/redhat/self-test/data/fedora-fce15c45d3fb.el7 +++ b/redhat/self-test/data/fedora-fce15c45d3fb.el7 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/fedora-fce15c45d3fb.fc25 b/redhat/self-test/data/fedora-fce15c45d3fb.fc25 index blahblah..blahblah 100644 --- a/redhat/self-test/data/fedora-fce15c45d3fb.fc25 +++ b/redhat/self-test/data/fedora-fce15c45d3fb.fc25 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/rhel-2585cf9dfaad.el7 b/redhat/self-test/data/rhel-2585cf9dfaad.el7 index blahblah..blahblah 100644 --- a/redhat/self-test/data/rhel-2585cf9dfaad.el7 +++ b/redhat/self-test/data/rhel-2585cf9dfaad.el7 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0-0.rc5.6.test.el7.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0-0.rc5.6.test.el7.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0-0.rc5.6.test.el7.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0-0.rc5.6.test.el7.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/rhel-2585cf9dfaad.fc25 b/redhat/self-test/data/rhel-2585cf9dfaad.fc25 index blahblah..blahblah 100644 --- a/redhat/self-test/data/rhel-2585cf9dfaad.fc25 +++ b/redhat/self-test/data/rhel-2585cf9dfaad.fc25 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.16.0-0.rc5.6.test.fc25.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.16.0-0.rc5.6.test.fc25.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.16.0-0.rc5.6.test.fc25.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.16.0-0.rc5.6.test.fc25.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64 diff --git a/redhat/self-test/data/rhel-78e36f3b0dae.el7 b/redhat/self-test/data/rhel-78e36f3b0dae.el7 index blahblah..blahblah 100644 --- a/redhat/self-test/data/rhel-78e36f3b0dae.el7 +++ b/redhat/self-test/data/rhel-78e36f3b0dae.el7 @@ -35,12 +35,12 @@ INCLUDE_FEDORA_FILES=1 INCLUDE_RHEL_FILES=1 INCLUDE_RT_FILES=1 KABIDW=../redhat/kabi-dwarf -KABIDW_TARBALL=../redhat/rpm/SOURCES/kernel-kabi-dw-5.17.0-0.rc0.78e36f3b0dae.6.test.el7.tar.xz +KABIDW_TARBALL=../redhat/kernel-kabi-dw-5.17.0-0.rc0.78e36f3b0dae.6.test.el7.tar.xz KABI_CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- /usr/bin/ppc64le-linux-gnu- /usr/bin/s390x-linux-gnu- KABI_CROSS_COMPILE_PREFIX=/usr/bin/ KABI_CROSS_COMPILE_SUFFIX=-linux-gnu- KABI_SUPPORTED_ARCHS=aarch64 ppc64le s390x x86_64 -KABI_TARBALL=../redhat/rpm/SOURCES/kernel-abi-stablelists-5.17.0-0.rc0.78e36f3b0dae.6.test.el7.tar.xz +KABI_TARBALL=../redhat/kernel-abi-stablelists-5.17.0-0.rc0.78e36f3b0dae.6.test.el7.tar.xz LANG=C LOCVERFILE=../localversion MACH=x86_64
-- https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892
From: Ondrej Mosnacek omosnace@redhat.com
redhat/Makefile: fix race condition when making the KABI tarball
The recipe for $(KABI_TARBALL) references the kabi/kabi-current file, but it doesn't depend on the target that creates it (dist-kabi), leading to possible build failures under parallel build (make -j). Fix it by making $(KABI_TARBALL) depend on dist-kabi.
Signed-off-by: Ondrej Mosnacek omosnace@redhat.com
diff --git a/redhat/Makefile b/redhat/Makefile index blahblah..blahblah 100644 --- a/redhat/Makefile +++ b/redhat/Makefile @@ -603,7 +603,7 @@ $(TARBALL): @scripts/create-tarball.sh
.PHONY: $(KABI_TARBALL) -$(KABI_TARBALL): +$(KABI_TARBALL): dist-kabi @(cd kabi && tar -cJf $(KABI_TARBALL) kabi-rhel$(RHEL_MAJOR)* kabi-current)
.PHONY: $(KABIDW_TARBALL)
-- https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892
From: Ondrej Mosnacek omosnace@redhat.com
redhat/Makefile: fix setup-source and document its caveat
The current definition of setup-source is racy, since it may cause dist-clean-sources and _setup-source to be "built" in parallel and the former caould then remove the results of the latter. Fix it to ensure the right ordering and document the condition that must be preserved to keep dist-clean-sources from racing with other targets.
_setup-source (and this race) has been introduced in commit 0cce4209d1cc ("redhat/Makefile: Split up setup-source target") in order to be called from redhat/self-test/data/create-data.sh, but that script can apparently work with the cleanup as well, so we can remove it and replace it with setup-source.
Fixes: 0cce4209d1cc ("redhat/Makefile: Split up setup-source target") Signed-off-by: Ondrej Mosnacek omosnace@redhat.com
diff --git a/redhat/Makefile b/redhat/Makefile index blahblah..blahblah 100644 --- a/redhat/Makefile +++ b/redhat/Makefile @@ -638,7 +638,11 @@ dist-get-buildreqs: setup-source echo "PASS: All build dependencies found."; \ fi
-_setup-source: dist-git-version-check +# IMPORTANT: All targets whose recipes read/modify files under $(SOURCES) +# MUST depend on setup-source (at least indirectly). Otherwise such +# recipes may be ordered before/in parallel with dist-clean-sources +# (prerequisite of setup-source), which would then delete their results. +setup-source: dist-clean-sources dist-git-version-check @if [ ! -e $(REDHAT)/$(SPECFILE).template ]; then \ echo "Creating $(REDHAT)/$(SPECFILE).template as a copy of $(REDHAT)/kernel.spec.template"; \ cp $(REDHAT)/kernel.spec.template $(REDHAT)/$(SPECFILE).template; \ @@ -660,8 +664,6 @@ _setup-source: dist-git-version-check @$(REDHAT)/scripts/genspec/genspec.sh @cp $(SOURCES)/$(SPECFILE) $(SOURCES)/../SPECS/
-setup-source: dist-clean-sources _setup-source - generate-testpatch-tmp: @$(GIT) diff --no-renames HEAD ":(exclude,top).get_maintainer.conf" \ ":(exclude,top).gitattributes" \ diff --git a/redhat/self-test/data/create-data.sh b/redhat/self-test/data/create-data.sh index blahblah..blahblah 100755 --- a/redhat/self-test/data/create-data.sh +++ b/redhat/self-test/data/create-data.sh @@ -28,7 +28,7 @@ specfile_helper () {
specfilename=$1 cp ./kernel.spec.template "${varfilename}.spec.template" - make RHSELFTESTDATA=1 SPECFILE="${specfilename}.spec" DIST="${DIST}" DISTRO="${DISTRO}" HEAD="${commit}" _setup-source + make RHSELFTESTDATA=1 SPECFILE="${specfilename}.spec" DIST="${DIST}" DISTRO="${DISTRO}" HEAD="${commit}" setup-source grep -Fvx -f "${specfilename}.spec.template" "${sources}/${specfilename}.spec" > "${destdir}"/"${specfilename}".spec # Ignore bpftoolversion definition as it may change. sed -i '/^%define bpftoolversion /d' "${destdir}"/"${specfilename}".spec
-- https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892
From: Prarit Bhargava on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892#note_1738436...
I approve of the cleanup but I'm not sure I like the idea of moving the KABI tarballs from SOURCES to /redhat. Was there a compelling reason to move them?
From: Ondrej Mosnáček on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892#note_1738452...
Yes, without that the `$(KABI_TARBALL)` and `$(KABIDW_TARBALL)` targets would race with `dist-clean-sources` which could delete them after they have been created.
From: Don Zickus on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892#note_1738665...
hopefully this makes it easier to limits regenerating a duplicate tarball because they are in redhat/, not that they are slow to generate. We do similar things for TARBALL as that takes much longer.
From: Prarit Bhargava on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892#note_1740140...
In case it isn't obvious :) well done @omos :)
From: Justin M. Forbes on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892#note_1745969...
This had to be reverted. It turns out that fixing this race put a new race in which caused CKI to fail more often than not.
From: Ondrej Mosnáček on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892#note_1746039...
That's unfortunate :/ Can you point me to a specific pipeline that failed?
From: Justin M. Forbes on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892#note_1746082...
https://gitlab.com/redhat/red-hat-ci-tools/kernel/cki-internal-pipelines/cki... trusted-contributors/-/jobs/6016814624 is one example. Basically the self-test script creates the data files to test. With this change the script calls 'make setup-source' which now depends on 'make clean-sources' which deletes anything created (the data files to test).
From: Ondrej Mosnáček on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892#note_1746180...
OK, I missed that `create-data.sh` runs the `make setup-source` multiple times in parallel (and I failed to test it with `-j`). Here is a second take that should address that problem: !2913
kernel@lists.fedoraproject.org