Can't upgrade kernel on raspberry pi3a+

Bug #1841955 reported by Gavin Lin on 2019-08-29
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
flash-kernel (Ubuntu)
Undecided
Dave Jones
Bionic
Undecided
Dave Jones
Eoan
Undecided
Unassigned
linux-raspi2 (Ubuntu)
Undecided
Unassigned
Bionic
Undecided
Unassigned

Bug Description

[Impact]

Can't upgrade kernel on raspberry pi3a+. Without this, users can be stuck with old kernels.

[Test Case]

1. dd the image in an SD card:
   http://cdimage.ubuntu.com/ubuntu/releases/18.04/release/ubuntu-18.04.3-preinstalled-server-armhf+raspi3.img.xz
2. Boot rpi3a+ with the sd card
3. Upgrade the kernel using following command:
   sudo apt update
   sudo apt install linux-raspi2
4. Check output message

Expected Result
Current stable kernel(4.15.0-1043-raspi2) is installed.

Actual Result
Error shows up during the installation, and the kernel is still the original one after reboot.

[Regression Potential]

None. The bugfix for this change is only adding the missing db/all.db Pi3A+ entry to flash-kernel.

[Additional Info]

Command output:

ubuntu@ubuntu:~$ sudo apt install linux-raspi2
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  linux-headers-4.15.0-1043-raspi2 linux-headers-raspi2 linux-image-4.15.0-1043-raspi2 linux-image-raspi2 linux-modules-4.15.0-1043-raspi2
  linux-raspi2-headers-4.15.0-1043
Suggested packages:
  fdutils linux-raspi2-doc-4.15.0 | linux-raspi2-source-4.15.0 linux-raspi2-tools
The following NEW packages will be installed:
  linux-headers-4.15.0-1043-raspi2 linux-image-4.15.0-1043-raspi2 linux-modules-4.15.0-1043-raspi2 linux-raspi2-headers-4.15.0-1043
The following packages will be upgraded:
  linux-headers-raspi2 linux-image-raspi2 linux-raspi2
3 upgraded, 4 newly installed, 0 to remove and 16 not upgraded.
Need to get 45.1 MB of archives.
After this operation, 214 MB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://ports.ubuntu.com/ubuntu-ports bionic-updates/universe armhf linux-raspi2-headers-4.15.0-1043 armhf 4.15.0-1043.46 [11.0 MB]
Get:2 http://ports.ubuntu.com/ubuntu-ports bionic-updates/universe armhf linux-headers-4.15.0-1043-raspi2 armhf 4.15.0-1043.46 [852 kB]
Get:3 http://ports.ubuntu.com/ubuntu-ports bionic-updates/universe armhf linux-modules-4.15.0-1043-raspi2 armhf 4.15.0-1043.46 [26.5 MB]
Get:4 http://ports.ubuntu.com/ubuntu-ports bionic-updates/universe armhf linux-image-4.15.0-1043-raspi2 armhf 4.15.0-1043.46 [6,751 kB]
Get:5 http://ports.ubuntu.com/ubuntu-ports bionic-updates/universe armhf linux-raspi2 armhf 4.15.0.1043.41 [1,884 B]
Get:6 http://ports.ubuntu.com/ubuntu-ports bionic-updates/universe armhf linux-image-raspi2 armhf 4.15.0.1043.41 [2,524 B]
Get:7 http://ports.ubuntu.com/ubuntu-ports bionic-updates/universe armhf linux-headers-raspi2 armhf 4.15.0.1043.41 [2,512 B]
Fetched 45.1 MB in 19s (2,363 kB/s)
Selecting previously unselected package linux-raspi2-headers-4.15.0-1043.
(Reading database ... 62492 files and directories currently installed.)
Preparing to unpack .../0-linux-raspi2-headers-4.15.0-1043_4.15.0-1043.46_armhf.deb ...
Unpacking linux-raspi2-headers-4.15.0-1043 (4.15.0-1043.46) ...
Selecting previously unselected package linux-headers-4.15.0-1043-raspi2.
Preparing to unpack .../1-linux-headers-4.15.0-1043-raspi2_4.15.0-1043.46_armhf.deb ...
Unpacking linux-headers-4.15.0-1043-raspi2 (4.15.0-1043.46) ...
Selecting previously unselected package linux-modules-4.15.0-1043-raspi2.
Preparing to unpack .../2-linux-modules-4.15.0-1043-raspi2_4.15.0-1043.46_armhf.deb ...
Unpacking linux-modules-4.15.0-1043-raspi2 (4.15.0-1043.46) ...
Selecting previously unselected package linux-image-4.15.0-1043-raspi2.
Preparing to unpack .../3-linux-image-4.15.0-1043-raspi2_4.15.0-1043.46_armhf.deb ...
Unpacking linux-image-4.15.0-1043-raspi2 (4.15.0-1043.46) ...
Preparing to unpack .../4-linux-raspi2_4.15.0.1043.41_armhf.deb ...
Unpacking linux-raspi2 (4.15.0.1043.41) over (4.15.0.1041.39) ...
Preparing to unpack .../5-linux-image-raspi2_4.15.0.1043.41_armhf.deb ...
Unpacking linux-image-raspi2 (4.15.0.1043.41) over (4.15.0.1041.39) ...
Preparing to unpack .../6-linux-headers-raspi2_4.15.0.1043.41_armhf.deb ...
Unpacking linux-headers-raspi2 (4.15.0.1043.41) over (4.15.0.1041.39) ...
Setting up linux-raspi2-headers-4.15.0-1043 (4.15.0-1043.46) ...
Setting up linux-modules-4.15.0-1043-raspi2 (4.15.0-1043.46) ...
Setting up linux-image-4.15.0-1043-raspi2 (4.15.0-1043.46) ...
I: /boot/vmlinuz is now a symlink to vmlinuz-4.15.0-1043-raspi2
I: /boot/initrd.img is now a symlink to initrd.img-4.15.0-1043-raspi2
Setting up linux-headers-4.15.0-1043-raspi2 (4.15.0-1043.46) ...
Setting up linux-image-raspi2 (4.15.0.1043.41) ...
Setting up linux-headers-raspi2 (4.15.0.1043.41) ...
Setting up linux-raspi2 (4.15.0.1043.41) ...
Processing triggers for linux-image-4.15.0-1043-raspi2 (4.15.0-1043.46) ...
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-4.15.0-1043-raspi2
flash-kernel: deferring update (trigger activated)
/etc/kernel/postinst.d/zz-flash-kernel:
flash-kernel: deferring update (trigger activated)
Processing triggers for flash-kernel (3.90ubuntu3.18.04.2) ...
Unsupported platform.
dpkg: error processing package flash-kernel (--configure):
 installed flash-kernel package post-installation script subprocess returned error exit status 1
E: Sub-process /usr/bin/dpkg returned an error code (1)
ubuntu@ubuntu:~$

Gavin Lin (gavin.lin) wrote :

Tried apt install -f, and do some check.
Updated kernel looks installed, but the system still boot from original kernel.

description: updated
Taihsiang Ho (taihsiangho) wrote :
Download full text (3.6 KiB)

I tried to reproduce the issue and found it is an "unsupport platform" for the tool flash-kernel

ubuntu@ubuntu:~$ dpkg -l *1044*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-===================================================-==============================-==============================-============================================================================================================
ii linux-headers-4.15.0-1044-raspi2 4.15.0-1044.47 armhf Linux kernel headers for version 4.15.0 on ARM (hard float) SMP
ii linux-image-4.15.0-1044-raspi2 4.15.0-1044.47 armhf Linux kernel image for version 4.15.0 on ARM (hard float) SMP
ii linux-modules-4.15.0-1044-raspi2 4.15.0-1044.47 armhf Linux kernel extra modules for version 4.15.0 on ARM (hard float) SMP
ii linux-raspi2-headers-4.15.0-1044 4.15.0-1044.47 armhf Header files related to Linux kernel version 4.15.0
ubuntu@ubuntu:~$ sudo apt-get install --reinstall linux-headers-4.15.0-1044-raspi2 linux-image-4.15.0-1044-raspi2 linux-modules-4.15.0-1044-raspi2 linux-raspi2-headers-4.15.0-1044
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 4 reinstalled, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
Need to get 0 B/44.6 MB of archives.
After this operation, 0 B of additional disk space will be used.
(Reading database ... 113356 files and directories currently installed.)
Preparing to unpack .../linux-image-4.15.0-1044-raspi2_4.15.0-1044.47_armhf.deb ...
Unpacking linux-image-4.15.0-1044-raspi2 (4.15.0-1044.47) over (4.15.0-1044.47) ...
Preparing to unpack .../linux-headers-4.15.0-1044-raspi2_4.15.0-1044.47_armhf.deb ...
Unpacking linux-headers-4.15.0-1044-raspi2 (4.15.0-1044.47) over (4.15.0-1044.47) ...
Preparing to unpack .../linux-modules-4.15.0-1044-raspi2_4.15.0-1044.47_armhf.deb ...
Unpacking linux-modules-4.15.0-1044-raspi2 (4.15.0-1044.47) over (4.15.0-1044.47) ...
Preparing to unpack .../linux-raspi2-headers-4.15.0-1044_4.15.0-1044.47_armhf.deb ...
Unpacking linux-raspi2-headers-4.15.0-1044 (4.15.0-1044.47) over (4.15.0-1044.47) ...
Setting up linux-raspi2-headers-4.15.0-1044 (4.15.0-1044.47) ...
Setting up linux-modules-4.15.0-1044-raspi2 (4.15.0-1044.47) ...
Setting up flash-kernel (3.90ubuntu3.18.04.2) ...
Setting up linux-headers-4.15.0-1044-raspi2 (4.15.0-1044.47) ...
Setting up linux-image-4.15.0-1044-raspi2 (4.15.0-1044.47) ...
Processing triggers for linux-image-4.15.0-1044-raspi2 (4.15.0-1044.47) ...
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-4.15.0-1044-raspi2
flash-kernel: deferring update (trigger activated)
/etc/kernel/postinst.d/zz...

Read more...

Dave Jones (waveform) wrote :

Confirmed the 3A+ entry is missing from flash-kernel; I'll get this added for Eoan and open an SRU for Bionic (we need to backport flash-kernel to bionic anyway for Pi4 support).

Changed in flash-kernel (Ubuntu):
assignee: nobody → Dave Jones (waveform)
Changed in flash-kernel (Ubuntu Bionic):
assignee: nobody → Dave Jones (waveform)
Changed in flash-kernel (Ubuntu):
status: New → In Progress
tags: added: id-5da7195077417327157503f8
Dave Jones (waveform) wrote :

Test package for devel available from PPA (we'll see about SRUing to bionic and presumably eoan once this has landed):

    https://launchpad.net/~waveform/+archive/ubuntu/flash-kernel

Relevant branch:

    https://code.launchpad.net/~waveform/ubuntu/+source/flash-kernel/+git/flash-kernel/+ref/pi3a-plus

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package flash-kernel - 3.98ubuntu6

---------------
flash-kernel (3.98ubuntu6) focal; urgency=medium

  * Remove redundant DTB-Kernel-Version field
  * Remove redundant copying of boot dtb
  * Fix mkimage_kernel tests
  * Add "pi" value for the "Method" field which copies all dtbs and overlays
    to the boot partition and provides defaults for the boot paths of the
    kernel, initrd, and u-boot script. This fixes upgrades to support the Pi 4
    on Bionic (LP: #1850678)
  * Update pi bootscript to support all flash-kernel vars, including
    calculated devtype and partition for future USB boot support
  * Add entry for Raspberry Pi 3A+ (LP: #1841955)

 -- Dave Jones <email address hidden> Thu, 07 Nov 2019 14:02:26 +0000

Changed in flash-kernel (Ubuntu):
status: In Progress → Fix Released
description: updated
Brian Murray (brian-murray) wrote :

The test case calls out using an 18.04 image. Will the same test work with the 19.10 image? Either way please update the test case so this also applies to 19.10.

Changed in flash-kernel (Ubuntu Eoan):
status: New → Fix Committed
tags: added: verification-needed verification-needed-eoan

Hello Gavin, or anyone else affected,

Accepted flash-kernel into eoan-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/flash-kernel/3.98ubuntu5.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-eoan to verification-done-eoan. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-eoan. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Dave Jones (waveform) wrote :

Tested on 3A+ under armhf and arm64; all working.

tags: added: verification-done-eoan
removed: verification-needed-eoan
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package flash-kernel - 3.98ubuntu5.1

---------------
flash-kernel (3.98ubuntu5.1) eoan; urgency=medium

  * Backport changes from 3.98ubuntu6 to eoan
  * Remove redundant DTB-Kernel-Version field
  * Remove redundant copying of boot dtb
  * Fix mkimage_kernel tests
  * Add "pi" value for the "Method" field which copies all dtbs and overlays
    to the boot partition and provides defaults for the boot paths of the
    kernel, initrd, and u-boot script. This fixes upgrades to support the Pi 4
    on Bionic (LP: #1850678)
  * Update pi bootscript to support all flash-kernel vars, including
    calculated devtype and partition for future USB boot support
  * Add entry for Raspberry Pi 3A+ (LP: #1841955)

 -- Dave Jones <email address hidden> Thu, 07 Nov 2019 14:02:26 +0000

Changed in flash-kernel (Ubuntu Eoan):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for flash-kernel has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers