[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [dm-devel] [PATCH 05/10] block: remove per-queue plugging
- From: "hch infradead org" <hch infradead org>
- To: Jens Axboe <jaxboe fusionio com>
- Cc: "linux-raid vger kernel org" <linux-raid vger kernel org>, Mike Snitzer <snitzer redhat com>, "linux-kernel vger kernel org" <linux-kernel vger kernel org>, "hch infradead org" <hch infradead org>, "dm-devel redhat com" <dm-devel redhat com>
- Subject: Re: [dm-devel] [PATCH 05/10] block: remove per-queue plugging
- Date: Mon, 18 Apr 2011 05:19:59 -0400
Btw, I really start to wonder if the request level is the right place
to do this on-stack plugging. Wouldn't it be better to just plug
bios in the on-stack queue? That way we could also stop doing the
special case merging when adding to the plug list, and leave all the
merging / I/O schedule logic in the __make_request path. Probably
not .39 material, but worth a prototype?
Also what this dicussion brought up is that the block layer data
structures are highly confusing. Using a small subset of the
request_queue also for make_request based driver just doesn't make
sense. It seems like we should try to migrate the required state
to struct gendisk, and submit I/O through a block_device_ops.submit
method, leaving the request_queue as an internal abstraction for
the request based drivers.
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]