In Graham Christensen’s blog “Erase Your Darlings”, he recommends disabling scheduling when ZFS does not control the full disk:
Note: If you do partition the disk, make sure you set the disk’s scheduler to none . ZFS takes this step automatically if it does control the entire disk.
On NixOS, you an set your scheduler to none via:
{ boot.kernelParams = [ "elevator=none" ]; }
However, I’m getting an error that elevator no longer has an effect:
Kernel parameter elevator= does not have any effect anymore.
Please use sysfs to set IO scheduler for individual devices.
Is there a standard/canonical replacement configuration property for this yet?
Sorry to necro-post, but I was just researching the same kernel message about elevator being deprecated and ran across this post in OpenSuse. After checking the individual disks’ IO Schedulers, it seems like they’re all set to None on my system: