[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1076724: fails to boot on some Arm64 laptops



Package: shim-unsigned
Version: 15.8-1
Severity: important

The shim binaries are being built with relaxed file alignment
requirements. This makes some of UEFI implementations reject shim
binaries. For example Lenovo Miix 630 boots grubaa64.efi, but rejects
shimaa64.efi. Most likely this is because of the header differences.
Compare:


objdump -p shimaa64.efi:
...
BaseOfCode              000000000001e000
ImageBase               0000000000000000
SectionAlignment        00001000
FileAlignment           00000200
...

objdump -p grubaa64.efi:
...
AddressOfEntryPoint     0000000000001000
BaseOfCode              0000000000001000
ImageBase               0000000000000000
SectionAlignment        00001000
FileAlignment           00001000
...

Reference for the alignment story:
- https://git.savannah.gnu.org/cgit/grub.git/commit/include/grub/efi/pe32.h?id=a51f953f4ee87cbfbf25a7df564304c5e9fea6a0
- https://web.archive.org/web/20200619041814/https://www.linaro.org/blog/porting-linux-to-aarch64-laptops/


-- System Information:
Debian Release: trixie/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: arm64 (aarch64)

Kernel: Linux 6.10.0-test-dp+ (SMP w/8 CPU threads; PREEMPT)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)

-- no debconf information


Reply to: