[OS-BUILD PATCH 3/3] Don't use upstream bpftool version for Fedora package
From: Justin M. Forbes Don't use upstream bpftool version for Fedora package Upstream bpftool went with their own versioning. While this works in rawhide and RHEL where release is bumped wth every build, it does not work with Fedora. Because bpftool sublevel is not bumped with stable updates, and we don't update the release in Fedora when the version has changed, we ended up with a failure because the bpftool subpackage version already exists. For Fedora, we will stick with the kernel versioning for the package. bpftool -V still displays the upstream bpftool version number. Signed-off-by: Justin M. Forbes diff --git a/redhat/kernel.spec.template b/redhat/kernel.spec.template index blahblah..blahblah 100644 --- a/redhat/kernel.spec.template +++ b/redhat/kernel.spec.template @@ -1227,7 +1227,14 @@ analysing the logical and timing behavior of Linux. %if %{with_bpftool} +%if 0%{?fedora} +# bpftoolverion doesn't bump with stable updates so let's stick with +# upstream kernel version for the package name. We still get correct +# output with bpftool -V. +%define bpftoolversion %specrpmversion +%else %define bpftoolversion %%SPECBPFTOOLVERSION%% +%endif %package -n bpftool Summary: Inspection and simple manipulation of eBPF programs and maps -- https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2907 -- ___ kernel mailing list -- kernel@lists.fedoraproject.org To unsubscribe send an email to kernel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/kernel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
[OS-BUILD PATCH 1/3] add libperf packages and enable perf, libperf, tools and bpftool packages
From: Thorsten Leemhuis add libperf packages and enable perf, libperf, tools and bpftool packages Signed-off-by: Thorsten Leemhuis diff --git a/redhat/kernel.spec.template b/redhat/kernel.spec.template index blahblah..blahblah 100644 --- a/redhat/kernel.spec.template +++ b/redhat/kernel.spec.template @@ -224,6 +224,8 @@ Summary: The Linux kernel %define with_cross_headers %{?_without_cross_headers: 0} %{?!_without_cross_headers: 1} # perf %define with_perf %{?_without_perf: 0} %{?!_without_perf: 1} +# libperf +%define with_libperf %{?_without_libperf: 0} %{?!_without_libperf: 1} # tools %define with_tools %{?_without_tools: 0} %{?!_without_tools: 1} # bpf tool @@ -300,9 +302,10 @@ Summary: The Linux kernel # no stablelist %define with_kernel_abi_stablelists 0 # Fedora builds these separately -%define with_perf 0 -%define with_tools 0 -%define with_bpftool 0 +%define with_perf 1 +%define with_libperf 1 +%define with_tools 1 +%define with_bpftool 1 # No realtime fedora variants %define with_realtime 0 %define with_arm64_64k 0 @@ -388,6 +391,7 @@ Summary: The Linux kernel %define with_realtime 0 %define with_vdso_install 0 %define with_perf 0 +%define with_libperf 0 %define with_tools 0 %define with_bpftool 0 %define with_kernel_abi_stablelists 0 @@ -402,6 +406,7 @@ Summary: The Linux kernel %define with_base 0 %define with_vdso_install 0 %define with_perf 0 +%define with_libperf 0 %define with_tools 0 %define with_bpftool 0 %define with_kernel_abi_stablelists 0 @@ -417,6 +422,7 @@ Summary: The Linux kernel %define with_debuginfo 0 %define with_vdso_install 0 %define with_perf 0 +%define with_libperf 0 %define with_tools 0 %define with_bpftool 0 %define with_kernel_abi_stablelists 0 @@ -480,6 +486,7 @@ Summary: The Linux kernel %define with_cross_headers 0 %define with_tools 0 %define with_perf 0 +%define with_libperf 0 %define with_bpftool 0 %define with_selftests 0 %define with_debug 0 @@ -572,6 +579,7 @@ Summary: The Linux kernel %define with_debuginfo 0 %define with_perf 0 +%define with_libperf 0 %define with_tools 0 %define with_bpftool 0 %define with_selftests 0 @@ -1124,6 +1132,23 @@ This package provides debug information for the perf python bindings. # with_perf %endif +%if %{with_libperf} +%package -n libperf +Summary: The perf library from kernel source +License: GPL-2.0-only AND (LGPL-2.1-only OR BSD-2-Clause) +%description -n libperf +This package contains the kernel source perf library. + +%package -n libperf-devel +Summary: Developement files for the perf library from kernel source +License: GPL-2.0-only AND (LGPL-2.1-only OR BSD-2-Clause) +%description -n libperf-devel +This package includes libraries and header files needed for development +of applications which use perf library from kernel source. + +# with_libperf +%endif + %if %{with_tools} %package -n %{package_name}-tools Summary: Assortment of tools for the Linux kernel @@ -2728,6 +2753,12 @@ chmod +x tools/perf/check-headers.sh %{perf_make} DESTDIR=$RPM_BUILD_ROOT all %endif +%if %{with_libperf} +%global libperf_make \ + %{__make} %{?make_opts} EXTRA_CFLAGS="${RPM_OPT_FLAGS}" LDFLAGS="%{__global_ldflags}" %{?cross_opts} -C tools/lib/perf V=1 +%{libperf_make} DESTDIR=$RPM_BUILD_ROOT +%endif + %global tools_make \ CFLAGS="${RPM_OPT_FLAGS}" LDFLAGS="%{__global_ldflags}" %{make} %{?make_opts} @@ -3009,6 +3040,10 @@ mkdir -p %{buildroot}/%{_mandir}/man1 rm -rf %{buildroot}%{_libdir}/traceevent %endif +%if %{with_libperf} +%{libperf_make} DESTDIR=%{buildroot} prefix=%{_prefix} libdir=%{_libdir} install install_headers +%endif + %if %{with_tools} %ifarch %{cpupowerarchs} %{make} -C tools/power/cpupower DESTDIR=$RPM_BUILD_ROOT libdir=%{_libdir} mandir=%{_mandir} CPUFREQ_BENCH=false install @@ -3494,6 +3529,37 @@ fi\ # with_perf %endif +%if %{with_libperf} +%files -n libperf +%{_libdir}/libperf.so.0 +%{_libdir}/libperf.so.0.0.1 + +%files -n libperf-devel +%{_libdir}/libperf.so +%{_libdir}/pkgconfig/libperf.pc +%{_includedir}/internal/*.h +%{_includedir}/perf/bpf_perf.h +%{_includedir}/perf/core.h +%{_includedir}/perf/cpumap.h +%{_includedir}/perf/perf_dlfilter.h +%{_includedir}/perf/event.h +%{_includedir}/perf/evlist.h +%{_includedir}/perf/evsel.h +%{_includedir}/perf/mmap.h +%{_includedir}/perf/threadmap.h +%{_mandir}/man3/libperf.3.gz +%{_mandir}/man7/libperf-counting.7.gz +%{_mandir}/man7/libperf-sampling.7.gz +%{_docdir}/libperf/examples/sampling.c +%{_docdir}/libperf/examples/counting.c +%{_docdir}/libperf/html/libperf.html +%{_docdir}/libperf/html/libperf-counting.html +%{_docdir}/libperf/html/libperf-sampling.html + +# with_libperf +%endif + + %if %{with_tools} %ifnarch %{cpupowerarchs} %files -n %{package_name}-tools @@ -3543,6 +3609,8 @@ fi\ %files -n %{package_name}-tools-libs-devel %{_libdir}/libcpupower.so %{_includedir}/cpufreq.h +%{_includedir}/cpuidle.h +%{_includedir}/powercap.h %endif %files -n
[OS-BUILD PATCH 2/3] Don't ship libperf.a in libperf-devel
From: Justin M. Forbes Don't ship libperf.a in libperf-devel Signed-off-by: Justin M. Forbes diff --git a/redhat/kernel.spec.template b/redhat/kernel.spec.template index blahblah..blahblah 100644 --- a/redhat/kernel.spec.template +++ b/redhat/kernel.spec.template @@ -3042,6 +3042,8 @@ rm -rf %{buildroot}%{_libdir}/traceevent %if %{with_libperf} %{libperf_make} DESTDIR=%{buildroot} prefix=%{_prefix} libdir=%{_libdir} install install_headers +# This is installed on some arches and we don't want to ship it +rm -rf %{buildroot}%{_libdir}/libperf.a %endif %if %{with_tools} -- https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2907 -- ___ kernel mailing list -- kernel@lists.fedoraproject.org To unsubscribe send an email to kernel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/kernel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
[OS-BUILD PATCH 0/3] Add libperf packages and build kernel tools for Fedora
From: Justin M. Forbes on gitlab.com Merge Request: https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2907 When kernel-tools was split out to a separate package in Fedora, it was due to several factors. Most of those issues have been mitigated in other ways, and there are advantages to building tools with the kernel build. Let's turn on tools for Fedora. To do so, we need to add the libperf packages, but this enables them for Fedora only. It is worth noting that the Fedora package for bpftool will retain the upstream kernel versioning. This is because the bpftool versioning scheme is incompatible with the stable Fedora process. --- redhat/kernel.spec.template | 83 +++- 1 files changed, 80 insertions(+), 3 deletions(-) -- ___ kernel mailing list -- kernel@lists.fedoraproject.org To unsubscribe send an email to kernel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/kernel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: [OS-BUILD PATCH 0/3] configs: netfilter: update settings
From: Colin Walters (Red Hat) on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2823#note_1739124559 Today, podman (really https://github.com/containers/netavark/ ) still uses these compat interfaces...I'm a little surprised that there's no "can run a container" gating here on MRs. I think we need to more formally track dependencies of these iptables interfaces before we can remove them. (To be clear I am not sure this is the MR that caused this behavior, but it's my best guess) -- ___ kernel mailing list -- kernel@lists.fedoraproject.org To unsubscribe send an email to kernel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/kernel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: [OS-BUILD PATCHv7] Add new os-build targets: rt-devel and automotive-devel
From: Scott Weaver on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2732#note_1739120434 Hi @dzickusrh. I was playing with your rt merge script and I wasn't sure what the initial conditions should be. Is this what you had in mind? ``` git checkout -b master-rt-devel linux-rt-devel/linux-6.7.y-rt git branch os-build-rt-devel git branch os-build-automotive-devel ``` But there was an error when I ran the script because `os-build-rt-automated` didn't exist. Should the script create that since it sounds like a temporary branch? Once I create that branch (based on `os-build-rt-devel`) I think everything worked as expected. Also, the remote to `linux-rt-devel` will be created in `.gitlab-ci.yaml`? I guess maybe that's where `os-build-rt-automated` will get created. Just a nit, but in order to see that I needed to create a gitlab remote I moved the `set -e` to after you source `ark-ci-env.sh` or it fails quietly. I also removed the `TO_PUSH` check in `ci_pre_check()` so the error gets printed (I don't want to set `DIST_PUSH`). -- ___ kernel mailing list -- kernel@lists.fedoraproject.org To unsubscribe send an email to kernel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/kernel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: [OS-BUILD PATCHv8 0/3] redhat/Makefile: fix and clean up some of the logic
From: Don Zickus on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892#note_1738665872 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. -- ___ kernel mailing list -- kernel@lists.fedoraproject.org To unsubscribe send an email to kernel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/kernel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: [OS-BUILD PATCHv8 0/3] redhat/Makefile: fix and clean up some of the logic
From: Ondrej Mosnáček on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892#note_1738452500 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. -- ___ kernel mailing list -- kernel@lists.fedoraproject.org To unsubscribe send an email to kernel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/kernel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: [OS-BUILD PATCHv8 0/3] redhat/Makefile: fix and clean up some of the logic
From: Prarit Bhargava on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2892#note_1738436678 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? -- ___ kernel mailing list -- kernel@lists.fedoraproject.org To unsubscribe send an email to kernel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/kernel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
[OS-BUILD PATCH] gitlab-ci: merge ark-latest before building in MR pipelines
From: Michael Hofmann gitlab-ci: merge ark-latest before building in MR pipelines Fixes https://gitlab.com/cki-project/kernel-ark/-/issues/110 Signed-off-by: Michael Hofmann diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index blahblah..blahblah 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -161,6 +161,11 @@ workflow: - *only-cki-gating-head - *on-success +.merge_ark_latest: + variables: +merge_tree: ${CI_MERGE_REQUEST_PROJECT_URL}.git +merge_branch: ark-latest + # variants .rawhide_up: variables: @@ -254,35 +259,35 @@ workflow: # Rawhide CI ark_merge_request: - extends: [.merge_request, .trigger_rawhide, .no_tests, .srpm_for_bot, + extends: [.merge_request, .trigger_rawhide, .no_tests, .merge_ark_latest, .srpm_for_bot, .rawhide_up] ark_debug_merge_request: - extends: [.merge_request, .trigger_rawhide, .no_tests, .manual_for_bot, + extends: [.merge_request, .trigger_rawhide, .no_tests, .merge_ark_latest, .manual_for_bot, .rawhide_up_debug] ark_16k_merge_request: - extends: [.merge_request, .trigger_rawhide, .no_tests, .manual_for_bot, + extends: [.merge_request, .trigger_rawhide, .no_tests, .merge_ark_latest, .manual_for_bot, .rawhide_16k] ark_16k_debug_merge_request: - extends: [.merge_request, .trigger_rawhide, .no_tests, .manual_for_bot, + extends: [.merge_request, .trigger_rawhide, .no_tests, .merge_ark_latest, .manual_for_bot, .rawhide_16k_debug] ark_clang_merge_request: - extends: [.merge_request, .trigger_rawhide, .no_tests, .manual_for_bot, + extends: [.merge_request, .trigger_rawhide, .no_tests, .merge_ark_latest, .manual_for_bot, .rawhide_clang_up] ark_clang_debug_merge_request: - extends: [.merge_request, .trigger_rawhide, .no_tests, .manual_for_bot, + extends: [.merge_request, .trigger_rawhide, .no_tests, .merge_ark_latest, .manual_for_bot, .rawhide_clang_up_debug] ark_clanglto_merge_request: - extends: [.merge_request, .trigger_rawhide, .no_tests, .manual_for_bot, + extends: [.merge_request, .trigger_rawhide, .no_tests, .merge_ark_latest, .manual_for_bot, .rawhide_clanglto_up] ark_clanglto_debug_merge_request: - extends: [.merge_request, .trigger_rawhide, .no_tests, .manual_for_bot, + extends: [.merge_request, .trigger_rawhide, .no_tests, .merge_ark_latest, .manual_for_bot, .rawhide_clanglto_up_debug] # Rawhide baselines @@ -320,7 +325,7 @@ ark_clanglto_debug_baseline: # Rawhide CKI container image gating ark_cki_gating: - extends: [.baseline, .trigger_rawhide, .no_tests, .cki_gating_head, + extends: [.baseline, .trigger_rawhide, .no_tests, .merge_ark_latest, .cki_gating_head, .rawhide_up, .cki_gating_overrides] # ELN CI -- https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2867 -- ___ kernel mailing list -- kernel@lists.fedoraproject.org To unsubscribe send an email to kernel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/kernel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue