[SRU][J/K/L:meta-raspi][J/K/L:raspi][PATCH 0/5] raspi-nolpae flavor is pointless nowadays (LP: #2023359)

Juerg Haefliger juerg.haefliger at canonical.com
Tue Jun 13 08:02:55 UTC 2023


[Impact]

linux-raspi 5.4 in Focal was the first kernel to support Pi 4B, which requires
LPAE to be enabled for armhf. Since we currently don't support board-specific
kernels but follow a one-kernel-fits-all strategy, the LPAE kernel is also used
on Pi 3 and 2 boards. Back then, running an armhf LPAE kernel on a Pi 3/2
resulted in additional kernel memory consumption of ~70MB compared to arm64 and
non-LPAE kernels. For that reason I decided to introduce a raspi-nolpae flavor
which can be used on Pi 3 and 2 (only). That flavor was never officially
announced nor installed automatically anywhere. A user has to install it
manually. We never had any complaints about armhf kernel memory consumption so
never directed anybody at installing this flavor. Therefore I'm assuming it's
not being used...

Turns out that the early 5.4 kernels were broken and incorrectly initialized a
64MB SWIOTLB buffer which is the reason for the above additional memory
consumption. This was fixed here: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=fcf044891c84e38fc90eb736b818781bccf94e38

With this commit, the memory consumption of both the armhf raspi and
raspi-nolpae flavor are pretty much on par [1] and there is really no reason
anymore to keep the raspi-nolpae flavor around. So let's get rid of it and
introduce a transitional package that replaces installed raspi-nolpae packages
with raspi packages.

[Test Case]

Install raspi-nolpae flavor and upgrade to the new kernel and verify that the
raspi flavor is installed instead.

[Where Problems Could Occur]

Only users that have the raspi-nolpae flavor installed are affected. Upgrades,
i.e., transitions from raspi-nolpae to raspi could go wrong. It's not expected
that there is a user visible difference between running a current raspi-nolpae
and raspi kernel flavor.

[1]
arm64 raspi -- Memory: 815528K/970752K available (13376K kernel code, 2472K rwdata, 4296K rodata, 5504K init, 850K bss, 89688K reserved, 65536K cma-reserved)
armhf raspi -- Memory: 835732K/970752K available (12288K kernel code, 1643K rwdata, 3692K rodata, 2048K init, 533K bss, 69484K reserved, 65536K cma-reserved, 118784K highmem)
armhf raspi-nolpae -- Memory: 836620K/970752K available (12288K kernel code, 1633K rwdata, 3676K rodata, 1024K init, 511K bss, 68596K reserved, 65536K cma-reserved)


Patches:
  1,2: J/K/L linux-meta-raspi
  3:   J linux-raspi
  4:   K linux-raspi
  5:   L linux-raspi

-- 
2.37.2



More information about the kernel-team mailing list