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