Kernel Update Required - Lemonade Server

Kernel Update Required
Your kernel has a critical bug affecting Strix Halo (gfx1151) systems

## What's the problem?

Your system has a Strix Halo GPU (gfx1151), but your Linux kernel is missing a critical fix that exports CWSR (Context Wave Save/Restore) properties. Without this fix, ROCm may have incorrect VGPR counts, causing crashes for various workloads.

This requirement applies to any ROCm backend on gfx1151 — `llamacpp:rocm`, `sd-cpp:rocm-stable`, and `vllm:rocm` all share the same kernel prerequisite.

Technical details:

- Strix Halo optimization guide
- The fix is included in kernel 6.18.4+ but may be backported to older kernels

## How to fix this

For Ubuntu Users Recommended

### Install the OEM Kernel

Ubuntu provides an OEM kernel with the fix included. Open a terminal and run:

`sudo apt update && sudo apt install linux-oem-24.04`

After installation, reboot your system for the new kernel to take effect.

For Other Linux Distributions

### Upgrade to a Kernel with the CWSR Fix

Upgrade your kernel to version 6.18.4 or later, or a kernel with the CWSR fix backported. The fix exports cwsr_size and ctl_stack_size properties to userspace.

1

### Check Current Kernel Version

Open a terminal and run:

`uname -r`
2

### Update Your Kernel

Use your distribution's kernel update process. For example:

- Fedora/RHEL: `sudo dnf update kernel`
- Arch Linux: `sudo pacman -Syu linux`
- openSUSE: `sudo zypper update kernel-default`

3

### Reboot

Reboot your system to load the new kernel:

`sudo reboot`
4

### Verify

After rebooting, verify the CWSR properties are exported:

`grep -E "cwsr_size|ctl_stack_size" /sys/class/kfd/kfd/topology/nodes/*/properties`

You should see both `cwsr_size` and `ctl_stack_size` listed.

## Still seeing ROCm failures after updating your kernel?

If your kernel is up to date but Lemonade still refuses to install or run the ROCm backend, you may have the AMDGPU DKMS module installed. On Ryzen AI / Strix Halo systems, the DKMS module conflicts with the in-tree `amdgpu` driver and breaks GPU access for ROCm workloads.

Fix: Use the ROCm "Ryzen AI" Use Case

### Reinstall ROCm without DKMS

AMD publishes a Ryzen-specific ROCm install guide that explicitly avoids the DKMS module found here:

- ROCm on Radeon / Ryzen — Set up ROCm use case

In short, when running `amdgpu-install`, pass a use case that does not include `dkms`, for example:

`sudo amdgpu-install -y --usecase=rocm --no-dkms`

If DKMS is already installed, remove it first:

`sudo apt remove --purge amdgpu-dkms && sudo reboot`

After reinstalling ROCm without DKMS and rebooting, retry installing the Lemonade ROCm backend (`llamacpp:rocm`, `sd-cpp:rocm-stable`, or `vllm:rocm`).

## Need Help?

If you continue to experience issues after updating your kernel:

- Check the GitHub Issues page
- Contact us on Discord