Upgrade Linux Kernel for main from 6.1.66 to 6.6.7

To upgrade, the following changes were required:

  * added Changelog
  * switched to Linux kernel 6.6.7 sources
  * reverted pahole flags - the system halts otherwise with
    Linux kernel / initrd modules not found
  * removed the source symlink deletion, as it the symlink
    is no longer generated
  * updated or removed Linux kernel configs:
     * CONFIG_AUTOFS4_FS -> renamed to AUTOFS_FS
     * CONFIG_IXGB -> renamed to CONFIG_IXGB
     * CONFIG_EDAC_I5000 -> CONFIG_BROKEN
     * CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER -> removed
     * CONFIG_IP_NF_TARGET_CLUSTERIP -> removed
     * CONFIG_MICROCODE_AMD -> removed
     * CONFIG_NET_SCH_CBQ -> removed
     * CONFIG_NET_SCH_DSMARK -> removed
     * CONFIG_NFT_OBJREF -> removed
This commit is contained in:
Adrian Vladu 2023-12-18 22:17:07 +00:00
parent 65c3c4835f
commit f1c8d36616
14 changed files with 62 additions and 48 deletions

View File

@ -0,0 +1 @@
- Linux ([6.6.7](https://lwn.net/Articles/954990/) (includes [6.6](https://kernelnewbies.org/Linux_6.6)))

View File

@ -195,7 +195,7 @@ install_build_source() {
| grep -v dt-bindings )) | grep -v dt-bindings ))
# remove the broken symlinks referencing $ROOT # remove the broken symlinks referencing $ROOT
rm "${D}/usr/lib/modules/${KV_FULL}"/{build,source} || die rm "${D}/usr/lib/modules/${KV_FULL}/build" || die
# Compose list of architectures to be excluded from the kernel modules # Compose list of architectures to be excluded from the kernel modules
# tree in the final image. It is an array to be used as a pattern for # tree in the final image. It is an array to be used as a pattern for

View File

@ -49,7 +49,7 @@ src_install() {
INSTALL_FW_PATH="${T}/fw" \ INSTALL_FW_PATH="${T}/fw" \
modules_install modules_install
rm "${D}/usr/lib/debug/usr/lib/modules/${KV_FULL}/"modules.* || die rm "${D}/usr/lib/debug/usr/lib/modules/${KV_FULL}/"modules.* || die
rm "${D}/usr/lib/debug/usr/lib/modules/${KV_FULL}/"{source,build} || die rm "${D}/usr/lib/debug/usr/lib/modules/${KV_FULL}/build" || die
# Clean up the build tree # Clean up the build tree
shred_keys shred_keys

View File

@ -32,7 +32,6 @@ CONFIG_EDAC_DECODE_MCE=m
CONFIG_EDAC_E752X=m CONFIG_EDAC_E752X=m
CONFIG_EDAC_I3000=m CONFIG_EDAC_I3000=m
CONFIG_EDAC_I3200=m CONFIG_EDAC_I3200=m
CONFIG_EDAC_I5000=m
CONFIG_EDAC_I5100=m CONFIG_EDAC_I5100=m
CONFIG_EDAC_I5400=m CONFIG_EDAC_I5400=m
CONFIG_EDAC_I7300=m CONFIG_EDAC_I7300=m
@ -81,7 +80,6 @@ CONFIG_MEMORY_FAILURE=y
CONFIG_MEMORY_HOTPLUG=y CONFIG_MEMORY_HOTPLUG=y
CONFIG_MEMORY_HOTREMOVE=y CONFIG_MEMORY_HOTREMOVE=y
CONFIG_MEM_SOFT_DIRTY=y CONFIG_MEM_SOFT_DIRTY=y
CONFIG_MICROCODE_AMD=y
CONFIG_MICROSOFT_MANA=m CONFIG_MICROSOFT_MANA=m
CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE=m
CONFIG_MLXSW_SPECTRUM=m CONFIG_MLXSW_SPECTRUM=m

View File

@ -20,7 +20,7 @@ CONFIG_ATL1C=m
CONFIG_ATL1E=m CONFIG_ATL1E=m
CONFIG_ATL2=m CONFIG_ATL2=m
CONFIG_AUDIT=y CONFIG_AUDIT=y
CONFIG_AUTOFS4_FS=y CONFIG_AUTOFS_FS=y
CONFIG_B44=m CONFIG_B44=m
# CONFIG_BACKLIGHT_CLASS_DEVICE is not set # CONFIG_BACKLIGHT_CLASS_DEVICE is not set
CONFIG_BCACHE=m CONFIG_BCACHE=m
@ -175,7 +175,6 @@ CONFIG_EDAC=m
# CONFIG_EDAC_LEGACY_SYSFS is not set # CONFIG_EDAC_LEGACY_SYSFS is not set
CONFIG_EFI=y CONFIG_EFI=y
CONFIG_EFIVAR_FS=y CONFIG_EFIVAR_FS=y
CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=y
CONFIG_EFI_STUB=y CONFIG_EFI_STUB=y
# CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_WARN_DEPRECATED is not set
CONFIG_ENA_ETHERNET=m CONFIG_ENA_ETHERNET=m
@ -353,7 +352,6 @@ CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_NAT=m CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_RAW=m CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_SECURITY=m CONFIG_IP_NF_SECURITY=m
CONFIG_IP_NF_TARGET_CLUSTERIP=m
CONFIG_IP_NF_TARGET_ECN=m CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_MASQUERADE=m CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_NETMAP=m CONFIG_IP_NF_TARGET_NETMAP=m
@ -407,7 +405,6 @@ CONFIG_ISCSI_BOOT_SYSFS=m
CONFIG_ISCSI_TARGET=m CONFIG_ISCSI_TARGET=m
CONFIG_ISCSI_TCP=m CONFIG_ISCSI_TCP=m
CONFIG_ISO9660_FS=m CONFIG_ISO9660_FS=m
CONFIG_IXGB=m
CONFIG_IXGBE=m CONFIG_IXGBE=m
CONFIG_IXGBEVF=m CONFIG_IXGBEVF=m
CONFIG_JME=m CONFIG_JME=m
@ -591,11 +588,9 @@ CONFIG_NET_KEY=m
CONFIG_NET_L3_MASTER_DEV=y CONFIG_NET_L3_MASTER_DEV=y
# CONFIG_NET_PACKET_ENGINE is not set # CONFIG_NET_PACKET_ENGINE is not set
CONFIG_NET_SCHED=y CONFIG_NET_SCHED=y
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_CHOKE=m CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m CONFIG_NET_SCH_CODEL=m
CONFIG_NET_SCH_DRR=m CONFIG_NET_SCH_DRR=m
CONFIG_NET_SCH_DSMARK=m
CONFIG_NET_SCH_FQ=m CONFIG_NET_SCH_FQ=m
CONFIG_NET_SCH_FQ_CODEL=m CONFIG_NET_SCH_FQ_CODEL=m
CONFIG_NET_SCH_GRED=m CONFIG_NET_SCH_GRED=m
@ -667,7 +662,6 @@ CONFIG_NFT_LOG=m
CONFIG_NFT_MASQ=m CONFIG_NFT_MASQ=m
CONFIG_NFT_NAT=m CONFIG_NFT_NAT=m
CONFIG_NFT_NUMGEN=m CONFIG_NFT_NUMGEN=m
CONFIG_NFT_OBJREF=m
CONFIG_NFT_QUEUE=m CONFIG_NFT_QUEUE=m
CONFIG_NFT_QUOTA=m CONFIG_NFT_QUOTA=m
CONFIG_NFT_REDIR=m CONFIG_NFT_REDIR=m

View File

@ -1,2 +1,2 @@
DIST linux-6.1.tar.xz 134728520 BLAKE2B ae60257860b2bd1bd708d183f0443afc60ebbd2b3d535c45e44c2e541bd0928530a3b62de6385dd4e4726ebbedcc0a871d4f3ffb4105b9f1f6d8ed7467f5688e SHA512 6ed2a73c2699d0810e54753715635736fc370288ad5ce95c594f2379959b0e418665cd71bc512a0273fe226fe90074d8b10d14c209080a6466498417a4fdda68 DIST linux-6.6.tar.xz 140064536 BLAKE2B 5f02fd8696d42f7ec8c5fbadec8e7270bdcfcb1f9844a6c4db3e1fd461c93ce1ccda650ca72dceb4890ebcbbf768ba8fba0bce91efc49fbd2c307b04e95665f2 SHA512 458b2c34d46206f9b4ccbac54cc57aeca1eaecaf831bc441e59701bac6eadffc17f6ce24af6eadd0454964e843186539ac0d63295ad2cc32d112b60360c39a35
DIST patch-6.1.66.xz 3696692 BLAKE2B 1d29e5c7dc110b5b4cccc56a470ec4482cb95d7e7226f6fbc8a9191d6791e018f59866a743560ce1215cd2a5998c33e94e46c971be909980dbffe7fd8abbe0f6 SHA512 b046cb1b158d4baad7dbea3fd3939444ec1c57a9a851da398ebe39a24ea30fec38483994d7cc189c116dcb6420b86fac38bc890eea7a6fa68993e36d25a5cf7b DIST patch-6.6.7.xz 528908 BLAKE2B b29f7c9708199b792685c0758c4a1a8593cd930d9b0f7639b81b7746ae23c5ef019c56ba3386dd622226c9f2f7580532a975a87ac419bb06c568f2c16ff55ca3 SHA512 fffb1dd7cb74c7eaba08bc3f954ce04cf4ea799fdf1d0835fc0fce268b9a108c6b041dfb45b5e5691dde823c6b6d0071ef925e8e21056f41ec9b0171747004b9

View File

@ -36,5 +36,5 @@ IUSE=""
# local patches overlap with the upstream patch. # local patches overlap with the upstream patch.
UNIPATCH_LIST=" UNIPATCH_LIST="
${PATCH_DIR}/z0001-kbuild-derive-relative-path-for-srctree-from-CURDIR.patch \ ${PATCH_DIR}/z0001-kbuild-derive-relative-path-for-srctree-from-CURDIR.patch \
${PATCH_DIR}/z0002-Revert-scripts-pahole-flags.sh-Parse-DWARF-and-gener.patch \ ${PATCH_DIR}/z0002-revert-pahole-flags.patch \
" "

View File

@ -1,32 +0,0 @@
From 7246ee058019099c59f9cce29b861df0613c0236 Mon Sep 17 00:00:00 2001
From: Jeremi Piotrowski <jpiotrowski@microsoft.com>
Date: Wed, 10 May 2023 08:48:09 +0200
Subject: [PATCH 2/2] Revert "scripts/pahole-flags.sh: Parse DWARF and generate
BTF with multithreading."
This breaks reproducibility of vmlinux btf output. The '--sort' arg does not
seem to work.
This reverts commit b4f72786429cc57383ff41e02407726313ca178d.
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
---
scripts/pahole-flags.sh | 3 ---
1 file changed, 3 deletions(-)
diff --git a/scripts/pahole-flags.sh b/scripts/pahole-flags.sh
index 0d99ef17e4a5..c293941612e7 100755
--- a/scripts/pahole-flags.sh
+++ b/scripts/pahole-flags.sh
@@ -16,8 +16,5 @@ fi
if [ "${pahole_ver}" -ge "121" ]; then
extra_paholeopt="${extra_paholeopt} --btf_gen_floats"
fi
-if [ "${pahole_ver}" -ge "122" ]; then
- extra_paholeopt="${extra_paholeopt} -j"
-fi
echo ${extra_paholeopt}
--
2.25.1

View File

@ -0,0 +1,53 @@
diff --git a/init/Kconfig b/init/Kconfig
index 6d35728b94b2..9ae94bf60971 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1888,7 +1888,7 @@ config RUST
depends on !MODVERSIONS
depends on !GCC_PLUGINS
depends on !RANDSTRUCT
- depends on !DEBUG_INFO_BTF || PAHOLE_HAS_LANG_EXCLUDE
+ depends on !DEBUG_INFO_BTF
select CONSTRUCTORS
help
Enables Rust support in the kernel.
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index fa307f93fa2e..f18386d4712f 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -394,15 +394,6 @@ config PAHOLE_HAS_BTF_TAG
btf_decl_tag) or not. Currently only clang compiler implements
these attributes, so make the config depend on CC_IS_CLANG.
-config PAHOLE_HAS_LANG_EXCLUDE
- def_bool PAHOLE_VERSION >= 124
- help
- Support for the --lang_exclude flag which makes pahole exclude
- compilation units from the supplied language. Used in Kbuild to
- omit Rust CUs which are not supported in version 1.24 of pahole,
- otherwise it would emit malformed kernel and module binaries when
- using DEBUG_INFO_BTF_MODULES.
-
config DEBUG_INFO_BTF_MODULES
def_bool y
depends on DEBUG_INFO_BTF && MODULES && PAHOLE_HAS_SPLIT_BTF
diff --git a/scripts/pahole-flags.sh b/scripts/pahole-flags.sh
index 728d55190d97..c293941612e7 100755
--- a/scripts/pahole-flags.sh
+++ b/scripts/pahole-flags.sh
@@ -16,15 +16,5 @@ fi
if [ "${pahole_ver}" -ge "121" ]; then
extra_paholeopt="${extra_paholeopt} --btf_gen_floats"
fi
-if [ "${pahole_ver}" -ge "122" ]; then
- extra_paholeopt="${extra_paholeopt} -j"
-fi
-if [ "${pahole_ver}" -ge "124" ]; then
- # see PAHOLE_HAS_LANG_EXCLUDE
- extra_paholeopt="${extra_paholeopt} --lang_exclude=rust"
-fi
-if [ "${pahole_ver}" -ge "125" ]; then
- extra_paholeopt="${extra_paholeopt} --skip_encoding_btf_inconsistent_proto --btf_gen_optimized"
-fi
echo ${extra_paholeopt}

View File

@ -88,7 +88,7 @@ RDEPEND="
" "
DEPEND="${RDEPEND} DEPEND="${RDEPEND}
>=sys-kernel/linux-headers-5.10 >=sys-kernel/linux-headers-6.6
java? ( virtual/jdk ) java? ( virtual/jdk )
" "

View File

@ -17,7 +17,7 @@ SRC_URI="
" "
S="${WORKDIR}/linux-${PV}" S="${WORKDIR}/linux-${PV}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
BDEPEND=" BDEPEND="
app-arch/xz-utils app-arch/xz-utils