[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1409414907-22238-1-git-send-email-ming.lei@canonical.com>
Date: Sun, 31 Aug 2014 00:08:21 +0800
From: Ming Lei <ming.lei@...onical.com>
To: Jens Axboe <axboe@...nel.dk>, linux-kernel@...r.kernel.org,
Dave Kleikamp <dave.kleikamp@...cle.com>
Cc: Zach Brown <zab@...bo.net>, Christoph Hellwig <hch@...radead.org>,
Maxim Patlasov <mpatlasov@...allels.com>
Subject: block: loop: convert to blk-mq
Hi,
The following 6 patches convert current loop driver into blk-mq:
- loop's scalability gets improved much
- loop driver gets quite simplified, and the conversion can
be throught as cleanup
The previous kernel AIO patches will be submitted in another patchset
for improving loop's performance.
V2:
- replace work queue with kthread worker because wq may cause
regression on some fast devices(such as loop over null_blk, tmpfs
file, ...), in these cases, loop thread becomes CPU bound actually,
so work queue will introduce lots of unnecessary context switch, and
decrease throughput a lot one this cases
- introduce prepare_flush_rq_fn callback and its pair in blk-mq ops
for setting up flush rq's pdu correctly
- move kernel aio patches into another patchset as suggested by
Christoph
- no change in the other 4 patches
V1:
- improve failure path in aio_kernel_submit()
block/blk-flush.c | 4 +
block/blk-mq.c | 16 +-
block/blk-mq.h | 1 -
drivers/block/loop.c | 411 +++++++++++++++++++++++++-----------------------
drivers/block/loop.h | 20 ++-
include/linux/blk-mq.h | 14 ++
6 files changed, 259 insertions(+), 207 deletions(-)
Thanks,
--
Ming Lei
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists