-
-
Notifications
You must be signed in to change notification settings - Fork 292
Description
Whenever a generic kernel update is installed via dnf or discover, it will be set as default and override the linux-surface kernel. The kernel-surface-default-watchdog package is supposed to prevent this but doesn’t appear to be working.
The linux-surface-default-watchdog.py script works to set the default kernel back to linux-surface if invoked manually, and will remain default until the next update. I have checked and linux-surface-default-watchdog.path is enabled and the linux-surface-default-watchdog.service shows as static, which I believe means it is enabled and cannot be disabled.
The issue is the same on both my Surface Laptop Go and on a Surface Pro 4 that I’m messing around with. Not a major issue for the laptop as it seems to work just fine with the generic kernel, however for the pro the touchscreen doesn’t work unless the linux-surface kernel is booted so this becomes a problem. But it doesn’t appear to be a device specific issue for the service but a problem for Fedora and linux-surface in general.
Running journalctl after installing a kernel update shows the script has run and outputs the surface kernel version, which is what it does when run manually so it seems to be working, yet it will still reboot into the generic kernel.
I have tried editing the linux-surface-default-watchdog.path config to remove the default dependencies, add them back in manually except the shutdown dependencies, in case something is happening during shutdown to change the default kernel, but that hasn't helped. See below:
[Unit]
Description=linux-surface default kernel watchdog
DefaultDependencies=no
Before=paths.target
After=sysinit.target
Requires=sysinit.target
#Conflicts=shutdown.target
#Before=shutdown.target
[Path]
PathChanged=/boot
[Install]
WantedBy=default.target
I also tried changing the PathChanged=/boot line to PathModified=/boot and this too made no difference.