The '-- \n2.54.0\n\n' trailer added in989b884was wrong. The underlying problem was the malformed @@ hunk counts (off by 1 in both old and new), fixed ina840f76. With correct @@ counts, patch(1) processes the hunk fully and then sees the orphan trailer at EOF — which it tries to parse as the start of a new patch header ('malformed patch at line N: 2.54.0'). The original (no-trailer) shape works correctly in the concatenated cumulative as long as the @@ counts are right. Removing the trailer brings the file back to the original 1562-byte size and the cumulative b2sum to 334c37b5d37067982bd9... (size unchanged 157 458 -> 157 446 since the 12 byte trailer is gone). Lesson for ka-promote: when concatenating patches as a stream for patch(1), the LAST patch must not carry a trailing '-- \n<version>\n' sentinel — the previous patches' sentinels are fine because they are followed by 'From <sha>' headers that patch(1) recognises as the next patch boundary. Documented in series-dir README as a gotcha.
patches/arch/arm64/
Cross-cutting patches that touch arch/arm64/Kconfig or other
non-board-specific arch-level files. Apply only where explicitly
manifested.
Patches
0006-arm64-Kconfig-do-not-select-HAVE_GCC_PLUGINS.patch
Local-build workaround that makes arch/arm64 not select
HAVE_GCC_PLUGINS. NOT for upstream — it papers over a missing
host-side GCC plugin dependency at build time rather than fixing the
makepkg/distro packaging that should provide gcc-plugin-devel (or
equivalent) when needed.
Used on ampere when building the kernel from a clean Arch ARM userspace that doesn't have the gcc plugins development headers installed. The proper fix is to install the headers; this patch is a fallback for when the user wants a working kernel without touching the userspace package set.
Source: github.com/marfrit/misc_patches/genbook/kernel/0006
Author: Markus Fritsche