皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

Linus Torvalds 解决了他最新的 ARM64 烦恼: 安装压缩内核映像

在 Linus Torvalds 从 Ampere Computing 获得 Ampere Altra Max 工作站后,他更多地涉足 ARM64,因为它为他提供了比 Apple Silicon 驱动的 MacBook 更多的 AArch64 计算能力。Torvalds 通过登陆一些他自己的代码来进一步增强 ARM64 内核,从而启动了 Linux 6.11 合并窗口,随着我们本周末接近 v6.11 合并窗口的尾声,他合并了更多的 ARM64 代码。

Linus Torvalds 在 Linux 6.11 中实现了另一个 ARM64 更改,这是由于他个人在他的 Ampere Altra Max 系统上处理了更多的 ARM64 活动。他最近最难的是 ARM64 Linux 内核构建没有在“make install”命令上安装压缩的内核映像。在 Linux 内核上运行“make install”时,其他架构将选择压缩的内核映像(如果已构建),但不会选择 ARM64。由于 ARM 引导加载程序的混合状态,并且没有内置的解压缩器,因此在 ARM64 上安装 Linux 内核时,需要专门运行“make zinstall”来安装压缩的内核镜像。

由于像 Torvalds 这样的内核开发人员和其他经常处理多个 CPU 架构的开发人员,因此必须记住“make zinstall”可能会令人讨厌。

Linus Torvalds 解决了他最新的 ARM64 烦恼: 安装压缩内核映像
ARM64 维护者 Will Deacon 认为在 ARM64 上更改“make install”的默认行为并不明智,因此作为替代方法,Linus Torvalds 添加了一个新的“COMPRESSED_INSTALL”ARM64 Kconfig 选项。启用此选项后,默认情况下将使用“make install”安装压缩映像。

因此,那些感到舒适并知道他们的系统/引导加载程序可以处理压缩的 ARM64 内核镜像的人可以启用 CONFIG_COMPRESSED_INSTALL 选项,这样他们就可以继续依赖“make install”,而不必记住执行“zinstall”。

Torvalds 在补丁中写道,他刚刚合并到 Linux 6.11 Git:

在 arm64 上,我们构建压缩镜像,但默认情况下,“make install”将安装旧的未压缩镜像。要实际安装压缩镜像,您需要使用“make zinstall”,这不是安装内核的常用方法。

这听起来可能不是什么大问题,但是当您处理多个架构时(以及您多年的手指知道常规的“make install”咒语),这种不一致非常烦人。

但正如 Will Deacon 所说:“

可悲的是,引导加载程序的质量与你所期望的一样高,我认为我们无法全面依赖解压缩器支持。我们的Image.gz就是 – 我们没有内置的解压缩器(我认为我们也不想在 arm32 上玩得开心之后再次急于解决这个问题),最近的 EFI zboot 支持为使用 EFI 的平台解决了这个问题。

更改默认的“安装”目标让我感到恐惧。肯定会有一些拥有嵌入式板的人编写了这个脚本,如果我们悄悄地给他们一个他们的引导加载程序不知道如何处理的压缩内核,我们真的可能会毁了他们的一天:/”

因此,以新的“COMPRESSED_INSTALL”选项为条件。

Linus Torvalds 对 ARM64 Linux 内核的可用性进行了一些很好的改进。在 Linux 6.11 ARM64 内核选项中查找COMPRESSED_INSTALL。

转自 Linus Torvalds Addresses His Latest ARM64 Annoyance: Installing Compressed Kernel Images – Phoronix