[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