Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.kernel > #78572

Bug#1033301: linux: arm64 kernel size increased from 31 to 39 MB, causing u-boot-rpi to fail

From Aurelien Jarno <aurel32@debian.org>
Newsgroups linux.debian.bugs.dist, linux.debian.kernel
Subject Bug#1033301: linux: arm64 kernel size increased from 31 to 39 MB, causing u-boot-rpi to fail
Date 2023-03-21 23:20 +0100
Message-ID <GbSuJ-ea4V-3@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Cross-posted to 2 groups.

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

Source: linux
Version: 6.1.15-1
Severity: important
Tags: upstream
X-Debbugs-Cc: vagrant@debian.org
Control: affects -1 + u-boot-rpi

Hi,

Following the upgrade of the kernel from 6.1.12-1 to 6.1.15-1 on a
Raspberry Pi 3 Model B Plus, u-boot (from the u-boot-rpi package) failed
to boot with:

| 40175552 bytes read in 1695 ms (23 MiB/s)
| 43794863 bytes read in 1817 ms (23 MiB/s)
| Moving Image from 0x80000 to 0x200000, end=2990000
| ERROR: RD image overlaps OS image (OS=0x200000..0x2990000)

I tracked the issue to a significant increase of the kernel size between
version 6.1.12-1 and 6.15-1:

| 31492   /boot/vmlinuz-6.1.0-5-arm64
| 39236   /boot/vmlinuz-6.1.0-6-arm64

This is more than the 36MB that is allowed by u-boot with the default
load addresses. A workaround is to shift the load addresses at the
u-boot level as in the attached patch.

I have tracked issue on the upstream kernel side to the following commit
on the stable tree:

| commit 3e3e4d234d46e48480a7c7c35399fa811182e8ef
| Author: Masahiro Yamada <masahiroy@kernel.org>
| Date:   Thu Oct 13 08:35:00 2022 +0900
| 
|     arm64: remove special treatment for the link order of head.o
|     
|     commit 994b7ac1697b4581b7726d2ac64321e3c840229b upstream.
|     
|     In the previous discussion (see the Link tag), Ard pointed out that
|     arm/arm64/kernel/head.o does not need any special treatment - the only
|     piece that must appear right at the start of the binary image is the
|     image header which is emitted into .head.text.
|     
|     The linker script does the right thing to do. The build system does
|     not need to manipulate the link order of head.o.
|     
|     Link: https://lore.kernel.org/lkml/CAMj1kXH77Ja8bSsq2Qj8Ck9iSZKw=1F8Uy-uAWGVDm4-CG=EuA@mail.gmail.com/
|     Suggested-by: Ard Biesheuvel <ardb@kernel.org>
|     Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
|     Reviewed-by: Nicolas Schier <nicolas@fjasle.eu>
|     Link: https://lore.kernel.org/r/20221012233500.156764-1-masahiroy@kernel.org
|     Signed-off-by: Will Deacon <will@kernel.org>
|     Signed-off-by: Tom Saeger <tom.saeger@oracle.com>
|     Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

The problem is still reproducible on Linus' master.

I am reporting the bug to the linux package as I believed there is no
real reason for such an increase in the kernel size. In case I missed
something and this is actually wanted, the bug can be reassigned to the
u-boot package.

Regards
Aurelien

Back to linux.debian.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

Bug#1033301: linux: arm64 kernel size increased from 31 to 39 MB, causing u-boot-rpi to fail Aurelien Jarno <aurel32@debian.org> - 2023-03-21 23:20 +0100
  Processed: linux: arm64 kernel size increased from 31 to 39 MB,  causing u-boot-rpi to fail "Debian Bug Tracking System" <owner@bugs.debian.org> - 2023-03-21 23:20 +0100
  Bug#1033301: linux: arm64 kernel size increased from 31 to 39 MB, causing u-boot-rpi to fail Salvatore Bonaccorso <carnil@debian.org> - 2023-03-22 07:30 +0100
    Bug#1033301: linux: arm64 kernel size increased from 31 to 39 MB, causing u-boot-rpi to fail Vagrant Cascadian <vagrant@debian.org> - 2023-03-24 22:10 +0100
      Bug#1033301: linux: arm64 kernel size increased from 31 to 39 MB, causing u-boot-rpi to fail Aurelien Jarno <aurel32@debian.org> - 2023-03-26 13:40 +0200
  Re: linux: arm64 kernel size increased from 31 to 39 MB, causing  u-boot-rpi to fail Aurelien Jarno <aurel32@debian.org> - 2023-04-29 10:00 +0200
    Bug#1033301: linux: arm64 kernel size increased from 31 to 39 MB, causing u-boot-rpi to fail Salvatore Bonaccorso <carnil@debian.org> - 2023-04-29 12:10 +0200
      Bug#1033301: linux: arm64 kernel size increased from 31 to 39 MB, causing u-boot-rpi to fail Domenico Andreoli <cavokz@gmail.com> - 2023-05-02 20:00 +0200
  Processed (with 1 error): Re: linux: arm64 kernel size increased  from 31 to 39 MB, causing u-boot-rpi to fail "Debian Bug Tracking System" <owner@bugs.debian.org> - 2023-04-29 10:00 +0200

csiph-web