booting linux-generic-lpae armhf kernel under qemu results in relocation out of range, and thus no modules can be loaded
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Release Notes for Ubuntu |
Won't Fix
|
Undecided
|
Unassigned | ||
linux (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
Groovy |
Fix Released
|
High
|
Unassigned |
Bug Description
[Impact]
Groovy armhf LPAE kernel fails to load kmods (and thus fail to boot).
[Fix]
Enable CONFIG_
[Regression potential]
Quoting the arch/arm/Kconfig:
"This [option] allows modules to be allocated in the generic
vmalloc area after the dedicated module memory area has been
exhausted. The modules will use slightly more memory, but after
rounding up to page size, the actual memory footprint is usually
the same.
Disabling this is usually safe for small single-platform
configurations.
"
---
qemu-system-arm -M virt -m 4096 -smp 2,sockets=
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 5.8.0-21-
[ 0.000000] CPU: ARMv7 Processor [412fc0f1] revision 1 (ARMv7), cr=30c5387d
Starting version 246.6-1ubuntu1
[ 16.753306] gpio_keys: section 4 reloc 29 sym '_raw_spin_
Begin: Loading essential drivers ... [ 22.799409] linear: section 4 reloc 43 sym '__stack_chk_fail': relocation 28 out of range (0xbf0195e8 -> 0xc10a1dd8)
[ 23.000670] multipath: section 4 reloc 31 sym '__stack_chk_fail': relocation 28 out of range (0xbf021268 -> 0xc10a1dd8)
[ 23.227437] raid0: section 4 reloc 53 sym '__stack_chk_fail': relocation 28 out of range (0xbf02a548 -> 0xc10a1dd8)
[ 23.460764] raid1: section 4 reloc 18 sym '_cond_resched': relocation 28 out of range (0xbf035390 -> 0xc10a3b4c)
[ 28.311563] libcrc32c: section 4 reloc 9 sym '__stack_chk_fail': relocation 28 out of range (0xbf0030b8 -> 0xc10a1dd8)
[ 31.866657] libcrc32c: section 4 reloc 9 sym '__stack_chk_fail': relocation 28 out of range (0xbf0030b8 -> 0xc10a1dd8)
[ 35.632259] libcrc32c: section 4 reloc 9 sym '__stack_chk_fail': relocation 28 out of range (0xbf0030b8 -> 0xc10a1dd8)
[ 35.852163] raid10: section 4 reloc 21 sym '__stack_chk_fail': relocation 28 out of range (0xbf00b404 -> 0xc10a1dd8)
done.
Begin: Running /scripts/
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/
(initramfs) cat /proc/modules
(initramfs) modprobe virtio_blk
[ 121.814904] virtio_blk: section 4 reloc 3 sym '_raw_spin_
(initramfs) cat /proc/modules
(initramfs)
Are we miss-building the kernel and/or modules? Or am I miss-launching the VM?
CVE References
tags: | added: armhf groovy |
Changed in linux (Ubuntu): | |
milestone: | none → ubuntu-20.10 |
description: | updated |
Changed in linux (Ubuntu Groovy): | |
milestone: | ubuntu-20.10 → groovy-updates |
Changed in ubuntu-release-notes: | |
status: | New → Won't Fix |
Changed in linux (Ubuntu Groovy): | |
status: | Confirmed → Fix Committed |
This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:
apport-collect 1899519
and then change the status of the bug to 'Confirmed'.
If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.
This change has been made by an automated script, maintained by the Ubuntu Kernel Team.