You are not logged in.
So I tried setting a udev rule exactly like it explained in the wiki. You can find the page here
First off, I created a new rules file....
vi /etc/udev/rules.d/60-schedulers.rules
Then I added..
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="deadline"
Saved the file, rebooted, then checked the scheduler with....
cat /sys/block/sdX/queue/scheduler
but it is still showing the default cfg, so I have to change it manually each time after boot.
Anyone know what the issue is here? Has something changed recently or am I doing something wrong? Any help would be greatly appreciated!
Last edited by the_nforcer (2014-07-10 08:19:23)
Offline
try rebuilding your initramfs so it includes the new rule.
# mkinitcpio -p linux
I'm not sure if this should be necessary, but could be if your rootfs is on the ssd
Last edited by ooo (2014-07-10 04:37:51)
Offline
On that particular disk, is /sys/block/sdX/queue/rotational reporting a '0'?
Offline
Thanks for the quick responses! I just tried running
# mkinitcpio -p linux
but that didn't resolve the problem. My rootfs is on the SSD and my /home is on a 2TB regular HDD if that helps. Basically trying to set the SSD to deadline at boot while leaving the regular HDD set to cfq.
Also, my SSD with root (/dev/sda) is displaying "0" and my HDD (/dev/sdb) is showing "1"
Last edited by the_nforcer (2014-07-10 05:04:02)
Offline
Hmmm.... I wrote that little section of that page. On every machine I have, this works just fine. This is what I have (which is functionally the same as what you have):
% cat /etc/udev/rules.d/60-scheduler.rules
# Set deadline scheduler for non-rotational disks
ACTION=="add|change", KERNEL=="sd[a-z]", TEST!="queue/rotational", ATTR{queue/scheduler}="deadline"
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="deadline"
Edit: When you run udevadm test /sys/block/sda does it tell you that it is applying the rule? Mine outputs this:
# udevadm test /sys/block/sda
...whole bunch of shit...
ATTR '/sys/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda/queue/scheduler' writing 'deadline' /etc/udev/rules.d/60-schedulers.rules:3
...whole bunch more shit...
Last edited by WonderWoofy (2014-07-10 05:25:18)
Offline
I just added that second line (with the TEST command), ran mkinitcpio -p linux again then rebooted. My SSD is set to deadline and the HDD set to cfq.
Also, the "udevadm test /sys/block/sda" shows that the rule was loaded.
Issue resolved, thank you VERY much for the help guys!
Offline
Please remember to mark the thread as solved https://bbs.archlinux.org/viewtopic.php?id=130309
Offline
Ok I just marked it [SOLVED] ... sorry I'm new to the forums. Thanks again for the help everyone.
Offline