CachyOS / CachyOS/CachyOS-Settings
Cachy-tuned forces Kyber even when ADIOS is enabled by default
- Dominant language
- Shell
- Stars
- 443
- Forks
- 76
- PR merge metrics
- No merged PRs in 30d
Description
Edit:
It's because of tuned-cachyos conf file : /usr/lib/tuned/profiles/cachyos-common/tuned.conf
The native setting is forcing Kyber. Editing this conf to pass `elevator=adios` make the trick.
I guess creating a new profile in user space should be a better idea, anyway.
Any idea to have a more versatile default conf for Adios users?
#############################
Previous post : While Kyber is now the new default IO scheduler, it overwrites my ADIOS config. According to `kerver` command, Kyber is the default now on my computer.
I enabled it following the wiki, using udev rule.
To change the rule to a later priority with 99 instead of 60 doesn't work.
It would also be useful to mention that manually writing the value again to /sys/block/nvme0n1/queue/scheduler works correctly, which shows that the problem is with persistence at boot, not with ADIOS itself. After reboot, the scheduler goes back to Kyber.
I also tested editing /usr/lib/udev/rules.d/60-ioschedulers.rules directly and replacing kyber with adios, but after reboot the NVMe scheduler is still set to kyber. It only switches to adios after I manually reload and trigger udev again with:
```
sudo udevadm control --reload-rules
sudo udevadm trigger
```
I tried a workaround using systemd service : ADIOS is enabled at reboot but after a few minutes Kyber becomes the active scheduler again.
```
[Unit]
Description=Force adios I/O scheduler on nvme0n1
After=multi-user.target
[Service]
Type=oneshot
ExecStart=/bin/sh -c 'sleep 1; echo adios > /sys/block/nvme0n1/queue/scheduler'
[Install]
WantedBy=multi-user.target
```
Other idea : i created another systemd service which launch udev rules reload: it works, but not sure that's a good and proper way...
```
[Unit]
Description=Reapply udev rule for NVMe scheduler
After=multi-user.target
[Service]
Type=oneshot
ExecStart=/bin/sh -c 'sleep 1; udevadm control --reload-rules; udevadm trigger --action=change /sys/block/nvme0n1'
[Install]
WantedBy=multi-user.target
```
Contributor guide
Assessment
This issue has not been assessed yet.