# git rev-parse -q --verify 3596c721c4348b2a964e43f9296a0c01509ba927^{commit} 3596c721c4348b2a964e43f9296a0c01509ba927 already have revision, skipping fetch # git checkout -q -f -B kisskb 3596c721c4348b2a964e43f9296a0c01509ba927 # git clean -qxdf # < git log -1 # commit 3596c721c4348b2a964e43f9296a0c01509ba927 # Author: Parth Pancholi # Date: Thu Nov 14 15:56:44 2024 +0100 # # kbuild: switch from lz4c to lz4 for compression # # Replace lz4c with lz4 for kernel image compression. # Although lz4 and lz4c are functionally similar, lz4c has been deprecated # upstream since 2018. Since as early as Ubuntu 16.04 and Fedora 25, lz4 # and lz4c have been packaged together, making it safe to update the # requirement from lz4c to lz4. # # Consequently, some distributions and build systems, such as OpenEmbedded, # have fully transitioned to using lz4. OpenEmbedded core adopted this # change in commit fe167e082cbd ("bitbake.conf: require lz4 instead of # lz4c"), causing compatibility issues when building the mainline kernel # in the latest OpenEmbedded environment, as seen in the errors below. # # This change also updates the LZ4 compression commands to make it backward # compatible by replacing stdin and stdout with the '-' option, due to some # unclear reason, the stdout keyword does not work for lz4 and '-' works for # both. In addition, this modifies the legacy '-c1' with '-9' which is also # compatible with both. This fixes the mainline kernel build failures with # the latest master OpenEmbedded builds associated with the mentioned # compatibility issues. # # LZ4 arch/arm/boot/compressed/piggy_data # /bin/sh: 1: lz4c: not found # ... # ... # ERROR: oe_runmake failed # # Link: https://github.com/lz4/lz4/pull/553 # Suggested-by: Francesco Dolcini # Signed-off-by: Parth Pancholi # Signed-off-by: Masahiro Yamada # < /opt/cross/kisskb/korg/gcc-13.1.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-13.1.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 3596c721c4348b2a964e43f9296a0c01509ba927 # make -s -j 40 ARCH=powerpc O=/kisskb/build/kbuild_ppc44x_defconfig_powerpc-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/powerpc64-linux/bin/powerpc64-linux- ppc44x_defconfig # < make -s -j 40 ARCH=powerpc O=/kisskb/build/kbuild_ppc44x_defconfig_powerpc-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 40 ARCH=powerpc O=/kisskb/build/kbuild_ppc44x_defconfig_powerpc-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig # make -s -j 40 ARCH=powerpc O=/kisskb/build/kbuild_ppc44x_defconfig_powerpc-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/powerpc64-linux/bin/powerpc64-linux- /kisskb/src/arch/powerpc/boot/dts/sam440ep.dts:266.22-287.5: Warning (interrupt_provider): /plb/pci@ec000000: '#interrupt-cells' found, but node is not an interrupt provider arch/powerpc/boot/dts/sam440ep.dtb: Warning (interrupt_map): Failed prerequisite 'interrupt_provider' Completed OK # rm -rf /kisskb/build/kbuild_ppc44x_defconfig_powerpc-gcc13 # Build took: 0:00:46.798608