From: Philipp Rudo <prudo@xxxxxxxxxxxxx> [redhat] spec: package decompressor vmlinux for s390 On s390 more and more code from the early boot stage is moved to the decompressor. With this the code complexity and thus the chances to introduce bugs increases. In order to be able to debug these early boot bugs package the decompressors vmlinux together with the other debuginfo for s390. This change requires kernel commit 7a84ffc0471f ("s390/boot: add build-id to decompressor") to work. Upstream Status: RHEL only Signed-off-by: Philipp Rudo <prudo@xxxxxxxxxxxxx> diff a/redhat/kernel.spec.template b/redhat/kernel.spec.template --- a/redhat/kernel.spec.template +++ b/redhat/kernel.spec.template @@ -396,6 +396,7 @@ Summary: The Linux kernel %define hdrarch s390 %define all_arch_configs kernel-%{version}-s390x.config %define kernel_image arch/s390/boot/bzImage +%define vmlinux_decompressor arch/s390/boot/compressed/vmlinux %endif %ifarch %{arm} @@ -1796,6 +1797,16 @@ BuildKernel() { # mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer cp vmlinux $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer + if [ -n "%{vmlinux_decompressor}" ]; then + eu-readelf -n %{vmlinux_decompressor} | grep "Build ID" | awk '{print $NF}' > vmlinux.decompressor.id + # Without build-id the build will fail. But for s390 the build-id + # wasn't added before 5.11. In case it is missing prefer not + # packaging the debuginfo over a build failure. + if [ -s vmlinux.decompressor.id ]; then + cp vmlinux.decompressor.id $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/vmlinux.decompressor.id + cp %{vmlinux_decompressor} $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer/vmlinux.decompressor + fi + fi %endif find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name "*.ko" -type f >modnames -- https://gitlab.com/cki-project/kernel-ark/-/merge_requests/883 _______________________________________________ kernel mailing list -- kernel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to kernel-leave@xxxxxxxxxxxxxxxxxxxxxxx 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@xxxxxxxxxxxxxxxxxxxxxxx