I'm running linux on the beaglebone black. My system is running directly from the sdcard. To change the IO scheduler I need to configure /sys/block/xxx/queue/scheduler where xxx is the mounted drive. However there are only entries for mmc and ram in the /sys/block folder. How do I change the IO scheduler for my system mounted on sdcard?

1 Answer 1


You have 2 ways to setup the IO scheduler on Linux.

You defined a default IO scheduler for all block devices. You can do this by adding the parameter elevator=<scheduler> (e.g. elevator=deadline) to your boot prompt (if you use a recent Grub version, like v1.99 or 2.0, you can add this in the file /etc/default/grub, look for the parameter GRUB_CMDLINE_LINUX which should be a list of parameters separated by spaces, and add the mentionned parameter).

If you want the IO scheduler to be specific to your SD Card, look for the corresponding mmc* block device and set it during boot using your init system. E.g. echo "deadline" > /sys/block/mmcblk0/queue/scheduler (which is btw the default value on my Raspberry Pi running Raspbian for my Micro SD Card)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.