Thank you!
https://bugzilla.opensuse.org/show_bug.cgi?id=1047993
Fri, 07 Jul 2017 10:33:52 +0300 Johannes Thumshirn
On Thu, Jul 06, 2017 at 09:56:48PM +0300, Dmitriy A. Perlow wrote:
bfq works ok if switched at runtime or via udev rule but not via elevator kernel option.
This is correct, see below:
/* * Use the default elevator specified by config boot param for * non-mq devices, or by config option. Don't try to load modules * as we could be running off async and request_module() isn't * allowed from async. */ if (!e && !q->mq_ops && *chosen_elevator) { e = elevator_get(chosen_elevator, false); if (!e) printk(KERN_ERR "I/O scheduler %s not found\n", chosen_elevator); } if (!e) { /* * For blk-mq devices, we default to using mq-deadline, * if available, for single queue devices. If deadline * isn't available OR we have multiple queues, default * to "none". */ if (q->mq_ops) { if (q->nr_hw_queues == 1) e = elevator_get("mq-deadline", false); if (!e) return 0; } else e = elevator_get(CONFIG_DEFAULT_IOSCHED, false);
CONFIG_DEFAULT_IOSCHED for MQ was rejected by Linus himself [1]
Can you please open a bugzilla entry for it so we can track it? I can't promise I get this upstream in the v4.13 cycle though, as this is not only a code but a bit of a political issue.
[1]: https://lkml.org/lkml/2017/2/21/791
Thanks, Johannes
-- Best regards, Dmitriy Perlow -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org