Commit | Line | Data |
---|---|---|
fd5e0339 KU |
1 | dm-queue-length |
2 | =============== | |
3 | ||
4 | dm-queue-length is a path selector module for device-mapper targets, | |
5 | which selects a path with the least number of in-flight I/Os. | |
6 | The path selector name is 'queue-length'. | |
7 | ||
8 | Table parameters for each path: [<repeat_count>] | |
9 | <repeat_count>: The number of I/Os to dispatch using the selected | |
10 | path before switching to the next path. | |
11 | If not given, internal default is used. To check | |
12 | the default value, see the activated table. | |
13 | ||
14 | Status for each path: <status> <fail-count> <in-flight> | |
15 | <status>: 'A' if the path is active, 'F' if the path is failed. | |
16 | <fail-count>: The number of path failures. | |
17 | <in-flight>: The number of in-flight I/Os on the path. | |
18 | ||
19 | ||
20 | Algorithm | |
21 | ========= | |
22 | ||
23 | dm-queue-length increments/decrements 'in-flight' when an I/O is | |
24 | dispatched/completed respectively. | |
25 | dm-queue-length selects a path with the minimum 'in-flight'. | |
26 | ||
27 | ||
28 | Examples | |
29 | ======== | |
30 | In case that 2 paths (sda and sdb) are used with repeat_count == 128. | |
31 | ||
32 | # echo "0 10 multipath 0 0 1 1 queue-length 0 2 1 8:0 128 8:16 128" \ | |
33 | dmsetup create test | |
34 | # | |
35 | # dmsetup table | |
36 | test: 0 10 multipath 0 0 1 1 queue-length 0 2 1 8:0 128 8:16 128 | |
37 | # | |
38 | # dmsetup status | |
39 | test: 0 10 multipath 2 0 0 0 1 1 E 0 2 1 8:0 A 0 0 8:16 A 0 0 |