From db93e09912e7c6cd653c2bbad38e7e32d4a77114 Mon Sep 17 00:00:00 2001 From: Jens Nolte <git@queezle.net> Date: Tue, 12 Jan 2021 22:51:58 +0100 Subject: [PATCH] Add layer to change io schedulers --- layers/ioschedulers.nix | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 layers/ioschedulers.nix diff --git a/layers/ioschedulers.nix b/layers/ioschedulers.nix new file mode 100644 index 0000000..aff840c --- /dev/null +++ b/layers/ioschedulers.nix @@ -0,0 +1,15 @@ +{ pkgs, ... }: +let + ioschedulers-udev = pkgs.writeTextDir "/etc/udev/rules.d/60-ioschedulers.rules" '' + # set scheduler for NVMe + ACTION=="add|change", KERNEL=="nvme[0-9]n[0-9]", ATTR{queue/scheduler}="bfq" + # set scheduler for SSD and eMMC + ACTION=="add|change", KERNEL=="[sv]d[a-z]|mmcblk[0-9]*", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="bfq" + # set scheduler for rotating disks + ACTION=="add|change", KERNEL=="[sv]d[a-z]", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="bfq" + ''; + +in +{ + services.udev.packages = [ ioschedulers-udev ]; +} -- GitLab