[PATCH 0/5] blk plug fixes

From: Shaohua Li
Date: Thu Apr 30 2015 - 13:45:28 EST


These are some block plug related patches. The first 3 are independent and can
apply separately.

For the multiple queue case, I only handled !BLK_MQ_F_DEFER_ISSUE case. The
DEFER_ISSUE is really confusing, I'm not sure what's the correct behavior.

BTW, calling blk_mq_merge_queue_io is confusing too to me. The request will be
dispatched immediately or offload to a workqueue to dispatch. In either case,
the request will be dispatched soon. There is a tiny window there are requests
in the queue and requests can be merged. I thought we can delete the code with
plug merge. And if out of order request merge is important, we really should
add a ELEVATOR_INSERT_SORT_MERGE like mechanism. This makes me more confusing
about BLK_MQ_F_DEFER_ISSUE too.

Thanks,
Shaohua

Jeff Moyer (1):
blk-mq: fix plugging in blk_sq_make_request

Shaohua Li (4):
blk: clean up plug
sched: always use blk_schedule_flush_plug in io_schedule_out
blk-mq: do limited block plug for multiple queue case
blk-mq: make plug work for mutiple disks and queues

block/blk-core.c | 34 ++++++++-------
block/blk-mq.c | 120 ++++++++++++++++++++++++++++++++--------------------
block/blk.h | 3 +-
kernel/sched/core.c | 8 +---
4 files changed, 98 insertions(+), 67 deletions(-)

--
1.8.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/