According to ArchWiki's article on JFS, issuing
echo deadline > /sys/block/sda/queue/scheduler
should set the Deadline scheduler as the default for /dev/sda (the entire physical device). However, after rebooting the system is back with the CFQ scheduler. How can I make the change persistent between boots, given that I am using EFI and Gummiboot and don't want to compile my own kernel?
Last edited by whaler (2013-11-28 03:54:10)
systemd-tmpfiles, check the wiki.
Meanwhile I tried to add "elevator=deadline" to my /boot/loader/entries/arch.conf, like this:
options root=PARTUUID=00000000-0000-0000-0000-00000000000 rw elevator=deadline
It has survived one cold reboot.m Perhaps it will stay
yep, that should work as well, I wasn;'t even thinking of general solutions, just a direct answer to your question of how to write that value. The booloader entry is probably the better choice.
If you have more than one disk and you would like different schedulers on each, you could also use a udev rule to have this applied upon detection. In fact, I think that a udev rule is probably more appropriate than tmpfiles.d in any case. But if you want to have deadline on everything, what you did is probably sane.
But you should know that these days, there is really not much reason to change from the default cfq.
(...) But you should know that these days, there is really not much reason to change from the default cfq.
Except for / and /boot, where I have ext4 and vfat, I use JFS on all partitions - possibly for sentimental reasons since my OS/2 years
The other day I happened to read the Wiki article on JFS, which prompted me to try 'deadline'. It may well be psychological, but I seem to notice a boost... However, the article may also be somewhat outdated and I am not an expert on scheduling, so I would be interested in reasons to choose CFQ over deadline.