[dm-devel] [PATCH] dm-switch target

Mikulas Patocka mpatocka at redhat.com
Tue Sep 25 23:35:19 UTC 2012



On Wed, 26 Sep 2012, Alasdair G Kergon wrote:

> On Tue, Sep 25, 2012 at 05:50:31PM -0400, Mikulas Patocka wrote:
> >  drivers/md/Kconfig     |   11 +
> >  drivers/md/Makefile    |    1 
> >  drivers/md/dm-switch.c |  520 +++++++++++++++++++++++++++++++++++++++++++++++++
> 
> Please would one of you also propose a Documentation/device-mapper/switch.txt file?
> 
> Alasdair

Here it is:

dm-switch target is suitable for Dell EqualLogic storage system.

The EqualLogic storage consists of several nodes. Each host is connected
to each node. The host may send I/O requests to any node, the node that
received the requests forwards it to the node where the data is stored.

However, there is a performance advantage of sending I/O requests to the
node where the data is stored to avoid forwarding. The dm-switch targets
is created to use this performance advantage.

The dm-switch target splits the device to fixed-size pages. It maintains
a page table that maps pages to storage nodes. Every request is
forwarded to the corresponding storage node specified in the page table.
The table may be changed with messages while the dm-switch target is
running.

DM table arguments:
- number of storage nodes
- page size
for every storage node:
- the underlying block device
- offset to the start of data in 512-byte sectors

DM message:
set-table index1:node1 index2:node2 index3:node3 ...
- modify page table, set values at index to point to the specific node.
  Index and node numbers are hexadecimal. You can omit the index number,
  in this case previous index plus 1 is used.




More information about the dm-devel mailing list