[dm-devel] [PATCH 3/7] dm core: enable request-based dm
Hannes Reinecke
hare at suse.de
Fri Apr 24 08:50:50 UTC 2009
Kiyoshi Ueda wrote:
> This patch enables request-based dm.
>
> o Request-based dm and bio-based dm coexist, since there are
> some target drivers which are more fitting to bio-based dm.
> Also, there are other bio-based devices in the kernel
> (e.g. md, loop).
> Since bio-based device can't receive struct request,
> there are some limitations on device stacking between
> bio-based and request-based.
>
> type of underlying device
> bio-based requeset-based
> ----------------------------------------------
> bio-based OK OK
> request-based NG OK
>
> The device type is recognized by the queue flag in the kernel,
> so dm follows that.
>
> o The type of a dm device is decided at the first table binding time.
> Once the type of a dm device is decided, the type can't be changed.
>
> o Mempool allocations are deferred to at the table loading time, since
> mempools for request-based dm are different from those for bio-based
> dm and needed mempool type is fixed by the type of table.
>
> o Currently, request-based dm supports only tables that have a single
> target. To support multiple targets, we need to support request
> splitting or prevent bio/request from spanning multiple targets.
> The former needs lots of changes in the block layer, and the latter
> needs that all target drivers support merge() function.
> Both will take a time.
>
>
> Signed-off-by: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
> Signed-off-by: Jun'ichi Nomura <j-nomura at ce.jp.nec.com>
Acked-by: Hannes Reinecke <hare at suse.de>
Cheers,
Hannes
--
Dr. Hannes Reinecke zSeries & Storage
hare at suse.de +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)
More information about the dm-devel
mailing list