Kernel 6.8.1 update broke the xone dkms driver support

Hi team,

When I updated the kernel to 6.8.1 today (via garuda-update / default ZEN), I have later found out that my gamepad is no longer working.

It is a Thrustmaster Eswap S Pro. It is an USB connection only controller, no Bluetooth. On Windows, it needed a driver from the Windows store. On Linux, it worked only with the help of the “xone dkms” driver. Otherwise, it would not even light up.

Screenshot_20240317_191546

I installed the driver via Garuda Gamer. And nearly 2 months, the controller was working just fine.
Today, I have found out controller would not work. As the driver is “dkms”, I have figured it was the Kernel update (was working yesterday), I did not do any changes to the system.
I have uninstalled the dkms module (via Garuda Gamer), restarted, installed again - it is not working, and there seems to be an error in the log.

resolving dependencies...
looking for conflicting packages...

Package (3)                       New Version  Net Change

extra/dkms                        3.0.12-1       0,11 MiB
chaotic-aur/xone-dongle-firmware  0.1-9          0,07 MiB
chaotic-aur/xone-dkms             0.3-4          0,20 MiB

Total Installed Size:  0,38 MiB

:: Proceed with installation? [Y/n]
(3/3) checking keys in keyring                                     [------------------------------------] 100%
(3/3) checking package integrity                                   [------------------------------------] 100%
(3/3) loading package files                                        [------------------------------------] 100%
(3/3) checking for file conflicts                                  [------------------------------------] 100%
(3/3) checking available disk space                                [------------------------------------] 100%
:: Running pre-transaction hooks...
(1/1) Performing snapper pre snapshots for the following configurations...
==> root: 407
:: Processing package changes...
(1/3) installing dkms                                              [------------------------------------] 100%
Optional dependencies for dkms
linux-headers: build modules against the Arch kernel
linux-lts-headers: build modules against the LTS kernel
linux-zen-headers: build modules against the ZEN kernel [installed]
linux-hardened-headers: build modules against the HARDENED kernel
(2/3) installing xone-dongle-firmware                              [------------------------------------] 100%
(3/3) installing xone-dkms                                         [------------------------------------] 100%
:: Running post-transaction hooks...
(1/9) Arming ConditionNeedsUpdate...
(2/9) Install DKMS modules
==> dkms install --no-depmod xone/0.3 -k 6.8.1-zen1-1-zen
Error! Bad return status for module build on kernel: 6.8.1-zen1-1-zen (x86_64)
Consult /var/lib/dkms/xone/0.3/build/make.log for more information.
==> WARNING: `dkms install --no-depmod xone/0.3 -k 6.8.1-zen1-1-zen' exited 10
(3/9) Updating initramfs...
:: Building initramfs for linux-zen (6.8.1-zen1-1-zen)
:: Building fallback initramfs for linux-zen (6.8.1-zen1-1-zen)
(4/9) Updating linux initcpios...
(5/9) Foreign/AUR package notification
garuda-dr460nized-next 4.1.1-1
khotkeys 5.27.10-1
kwin-scripts-forceblur 0.6.1-1.3
lib32-faudio 24.01-1
plasma5-applets-eventcalendar 76-1.4
(6/9) Orphaned package notification...
=> No orphans found.
(7/9) Checking for .pacnew and .pacsave files...
.pac* files found:
/etc/passwd.pacnew
/etc/locale.gen.pacnew
/etc/pam.d/kde.pacnew
Please check and merge
(8/9) Performing snapper post snapshots for the following configurations...
==> root: 408
(9/9) Syncing all file systems...
Press enter to exit

Garuda inxi:

System:
Kernel: 6.8.1-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 13.2.1
clocksource: tsc avail: hpet,acpi_pm
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=e69eb184-4f60-4c60-a81f-aa5e53e9580b rw rootflags=subvol=@
quiet loglevel=3 ibt=off
Desktop: KDE Plasma v: 6.0.2 tk: Qt v: N/A info: frameworks v: 6.0.0
wm: kwin_wayland vt: 1 dm: SDDM Distro: Garuda base: Arch Linux
Machine:
Type: Desktop System: ASUS product: N/A v: N/A serial: <superuser required>
Mobo: ASUSTeK model: ROG STRIX B650E-F GAMING WIFI v: Rev 1.xx
serial: <superuser required> part-nu: SKU uuid: <superuser required>
UEFI: American Megatrends v: 2214 date: 01/02/2024
CPU:
Info: model: AMD Ryzen 7 7800X3D bits: 64 type: MT MCP arch: Zen 4 gen: 5
level: v4 note: check built: 2022+ process: TSMC n5 (5nm) family: 0x19 (25)
model-id: 0x61 (97) stepping: 2 microcode: 0xA601206
Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 8 MiB desc: 8x1024 KiB
L3: 96 MiB desc: 1x96 MiB
Speed (MHz): avg: 1310 high: 4401 min/max: 400/5050 scaling:
driver: amd-pstate-epp governor: powersave cores: 1: 400 2: 4401 3: 400
4: 3958 5: 400 6: 400 7: 400 8: 3898 9: 400 10: 400 11: 400 12: 3917
13: 400 14: 400 15: 400 16: 400 bogomips: 134414
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities: <filter>
Graphics:
Device-1: AMD Navi 31 [Radeon RX 7900 XT/7900 XTX/7900M]
vendor: Sapphire NITRO+ driver: amdgpu v: kernel arch: RDNA-3 code: Navi-3x
process: TSMC n5 (5nm) built: 2022+ pcie: gen: 4 speed: 16 GT/s lanes: 16
ports: active: DP-1 empty: DP-2, HDMI-A-1, HDMI-A-2, Writeback-1
bus-ID: 03:00.0 chip-ID: 1002:744c class-ID: 0300
Device-2: AMD Raphael vendor: ASUSTeK driver: amdgpu v: kernel
arch: RDNA-2 code: Navi-2x process: TSMC n7 (7nm) built: 2020-22 pcie:
gen: 4 speed: 16 GT/s lanes: 16 ports: active: none
empty: DP-3,HDMI-A-3,Writeback-2 bus-ID: 0e:00.0 chip-ID: 1002:164e
class-ID: 0300 temp: 42.0 C
Display: wayland server: X.org v: 1.21.1.11 with: Xwayland v: 23.2.4
compositor: kwin_wayland driver: X: loaded: amdgpu
unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi
gpu: amdgpu,amdgpu display-ID: 0
Monitor-1: DP-1 res: 2560x1440 size: N/A modes: N/A
API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
device: 1 drv: radeonsi device: 2 drv: swrast gbm: drv: radeonsi
surfaceless: drv: radeonsi wayland: drv: radeonsi x11: drv: radeonsi
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.0.3-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon RX 7900 XTX (radeonsi
navi31 LLVM 17.0.6 DRM 3.57 6.8.1-zen1-1-zen) device-ID: 1002:744c
memory: 23.44 GiB unified: no display-ID: :1.0
API: Vulkan v: 1.3.279 layers: 9 device: 0 type: discrete-gpu name: AMD
Radeon RX 7900 XTX (RADV NAVI31) driver: mesa radv v: 24.0.3-arch1.1
device-ID: 1002:744c surfaces: xcb,xlib,wayland device: 1
type: integrated-gpu name: AMD Radeon Graphics (RADV RAPHAEL_MENDOCINO)
driver: mesa radv v: 24.0.3-arch1.1 device-ID: 1002:164e
surfaces: xcb,xlib,wayland device: 2 type: cpu name: llvmpipe (LLVM
17.0.6 256 bits) driver: mesa llvmpipe v: 24.0.3-arch1.1 (LLVM 17.0.6)
device-ID: 10005:0000 surfaces: xcb,xlib,wayland
Audio:
Device-1: AMD Navi 31 HDMI/DP Audio driver: snd_hda_intel v: kernel pcie:
gen: 4 speed: 16 GT/s lanes: 16 bus-ID: 03:00.1 chip-ID: 1002:ab30
class-ID: 0403
Device-2: AMD Rembrandt Radeon High Definition Audio vendor: ASUSTeK
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 0e:00.1 chip-ID: 1002:1640 class-ID: 0403
Device-3: ASUSTek USB Audio driver: hid-generic,snd-usb-audio,usbhid
type: USB rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-6:2
chip-ID: 0b05:1a52 class-ID: 0300
API: ALSA v: k6.8.1-zen1-1-zen status: kernel-api with: aoss
type: oss-emulator tools: N/A
Server-1: PipeWire v: 1.0.4 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
Device-1: Intel Ethernet I225-V vendor: ASUSTeK driver: igc v: kernel pcie:
gen: 2 speed: 5 GT/s lanes: 1 port: N/A bus-ID: 0a:00.0 chip-ID: 8086:15f3
class-ID: 0200
IF: eno1 state: up speed: 1000 Mbps duplex: full mac: <filter>
Info: services: NetworkManager,systemd-timesyncd
Drives:
Local Storage: total: 2.73 TiB used: 258.87 GiB (9.3%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:1 vendor: Samsung model: SSD 980 PRO 2TB
size: 1.82 TiB block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s
lanes: 4 tech: SSD serial: <filter> fw-rev: 5B2QGXA7 temp: 37.9 C
scheme: GPT
ID-2: /dev/nvme1n1 maj-min: 259:0 vendor: Samsung model: SSD 980 PRO 1TB
size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s
lanes: 4 tech: SSD serial: <filter> fw-rev: 5B2QGXA7 temp: 35.9 C
scheme: GPT
Partition:
ID-1: / raw-size: 1.82 TiB size: 1.82 TiB (100.00%) used: 79.1 GiB (4.2%)
fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 584 KiB (0.2%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:3
ID-3: /home raw-size: 1.82 TiB size: 1.82 TiB (100.00%)
used: 79.1 GiB (4.2%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-4: /var/log raw-size: 1.82 TiB size: 1.82 TiB (100.00%)
used: 79.1 GiB (4.2%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-5: /var/tmp raw-size: 1.82 TiB size: 1.82 TiB (100.00%)
used: 79.1 GiB (4.2%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
ID-1: swap-1 type: zram size: 62.02 GiB used: 0 KiB (0.0%) priority: 100
comp: zstd avail: lzo,lzo-rle,lz4,lz4hc,842 max-streams: 16 dev: /dev/zram0
Sensors:
System Temperatures: cpu: 45.1 C mobo: N/A
Fan Speeds (rpm): N/A
GPU: device: amdgpu temp: 46.0 C mem: 52.0 C fan: 1 watts: 18.00
device: amdgpu temp: 42.0 C
Info:
Memory: total: 64 GiB available: 62.02 GiB used: 5.11 GiB (8.2%)
Processes: 348 Power: uptime: 15m states: freeze,mem,disk suspend: deep
avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
suspend, test_resume image: 24.8 GiB services: org_kde_powerdevil,
power-profiles-daemon, upowerd Init: systemd v: 255 default: graphical
tool: systemctl
Packages: pm: pacman pkgs: 1539 libs: 473 tools: octopi,paru Compilers:
clang: 17.0.6 gcc: 13.2.1 Shell: garuda-inxi default: fish v: 3.7.0
running-in: konsole inxi: 3.3.33
Garuda (2.6.23-1):
System install date:     2024-01-25
Last full system update: 2024-03-17
Is partially upgraded:   No
Relevant software:       snapper NetworkManager dracut
Windows dual boot:       No/Undetected
Failed units:

Do you have any ideas, if/how this can be solved? Thank you.

1 Like

A fix seems to be ready.
I hope they will include it soon into the package.
https://aur.archlinux.org/packages/xone-dkms#comment-961849
Or maybe try the xone-dkms-git, which should already include it.

4 Likes

Ah, filo, you bearer of good news.
Just to make sure, will I need to do something, or it will be updated in the future automatically? Your help is appreciated.

1 Like

It looks like an important patch, so I guess the AUR maintainer will include it soon into the package.
Maybe wait one day.
If you don’t want to wait, you could try the git package

paru xone-dkms-git

Then maybe as soon as you see in the AUR that the patch has been integrate, you reinstall xone-dkms.
A further option would be to temporarily switch to the linux-lts kernel, with which the current package should work.

3 Likes

Just ran into the same issue and used a snapshot to go back in time and all is well.

@filo Thanks. I can wait for a bit, it is not an issue. So, after a few days, the option from Garuda Gamer should work again, right? I would get the patched version?

EDIT: Just though about it, and I think I know the answer.

@Thee_Sly_Guy I was thinking about the same. But I was not sure if there would be a patch/fix, and I knew I would want the new (and future) kernel.

I will wait a bit and report, if it is working later.

I switched months ago from the git package to the dlundqvist fork package (xone-dkms-dlundqvist-git) because it was getting regular patches / updates when the development of the git package seemed to have stalled without any patches for months.
Now it’s apparently the other way around, so when I do a fresh install once the new megarelease ISO comes out, I’ll make sure to go back to the regular git package because, as mentioned in this thread, it’s being updated once again and is now more “up-to-date” than the other package.

1 Like

I tried the option from Garuda Gamer a few times during the week, but it was not updated and did not work.

I just installed the git version (I chose the chaoticAUR version), and it is working for now.
I kept the Zen kernel, I have left that as a last resort option, if anything else would fail.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.