Messages in this thread | | | Date | Thu, 7 Dec 2023 01:38:37 -0500 | From | "Michael S. Tsirkin" <> | Subject | Re: [PATCH] virtio_blk: set the default scheduler to none |
| |
On Thu, Dec 07, 2023 at 02:02:36PM +0800, Jason Wang wrote: > On Thu, Dec 7, 2023 at 12:33 PM Li Feng <fengli@smartx.com> wrote: > > > > virtio-blk is generally used in cloud computing scenarios, where the > > performance of virtual disks is very important. The mq-deadline scheduler > > has a big performance drop compared to none with single queue. > > At least you can choose the scheduler based on if mq is supported or not? > > Thanks
This is already the case:
static struct elevator_type *elevator_get_default(struct request_queue *q) { if (q->tag_set && q->tag_set->flags & BLK_MQ_F_NO_SCHED_BY_DEFAULT) return NULL;
if (q->nr_hw_queues != 1 && !blk_mq_is_shared_tags(q->tag_set->flags)) return NULL;
return elevator_find_get(q, "mq-deadline"); }
I guess I agree blk is typically kind of similar to loopback so none by default makes sense here same as for loopback.
Stefan care to comment?
-- MST
| |