Skip to content

Kernel updates

zL00OL edited this page Oct 5, 2026 · 1 revision

Kernel updates

Read this before running zypper up on the iMac19,1.

A kernel update can complete cleanly and still leave you with a single 2560x2880 tile and no speakers. That is not a broken update — it is an update that has not been given the two modules it needs.

Why

Subsystem How it gets into a kernel Automatic?
CS8409 audio codec out-of-tree DKMS module No — dkms.service ships disabled
Patched amdgpu (the 5K display) only inside the initramfs on the ESP No

Both have to be rebuilt for every new kernel. Full detail, including the exact build procedure and two failure modes that produce misleading output, is in the repo: docs/kernel-updates.md.

The one line that matters

sudo systemctl enable dkms.service
sudo dkms autoinstall
dkms status          # must list one line per installed kernel

With that enabled, audio takes care of itself from then on.

Before rebooting into anything new

  1. dkms status lists the new kernel
  2. A patched amdgpu.ko exists for the new kernel, with matching vermagic and a tiled_stitch parameter
  3. An initramfs containing that module is on the ESP
  4. A new boot entry exists alongside the working one, and the default is unchanged

Step 4 is the one people skip. A kernel that boots to a black screen is recoverable from the loader menu — but only if there is a second entry to pick.

Quick reference

uname -r                                    # what you are running
systemctl is-enabled dkms.service           # want: enabled
dkms status                                 # one line per kernel
df -h /boot/efi                             # ~107M free; ~85M per kernel
grep -hE '^default' /boot/efi/loader/loader.conf

Also worth checking after a bump

~/bin/imac-reapply --check

Mesa and the Resolve/rusticl OpenCL setup are user-space and survive kernel updates, but a silent OpenCL regression is easy to miss until an export fails.

Clone this wiki locally