0001 ===============
0002 dm-queue-length
0003 ===============
0004
0005 dm-queue-length is a path selector module for device-mapper targets,
0006 which selects a path with the least number of in-flight I/Os.
0007 The path selector name is 'queue-length'.
0008
0009 Table parameters for each path: [<repeat_count>]
0010
0011 ::
0012
0013 <repeat_count>: The number of I/Os to dispatch using the selected
0014 path before switching to the next path.
0015 If not given, internal default is used. To check
0016 the default value, see the activated table.
0017
0018 Status for each path: <status> <fail-count> <in-flight>
0019
0020 ::
0021
0022 <status>: 'A' if the path is active, 'F' if the path is failed.
0023 <fail-count>: The number of path failures.
0024 <in-flight>: The number of in-flight I/Os on the path.
0025
0026
0027 Algorithm
0028 =========
0029
0030 dm-queue-length increments/decrements 'in-flight' when an I/O is
0031 dispatched/completed respectively.
0032 dm-queue-length selects a path with the minimum 'in-flight'.
0033
0034
0035 Examples
0036 ========
0037 In case that 2 paths (sda and sdb) are used with repeat_count == 128.
0038
0039 ::
0040
0041 # echo "0 10 multipath 0 0 1 1 queue-length 0 2 1 8:0 128 8:16 128" \
0042 dmsetup create test
0043 #
0044 # dmsetup table
0045 test: 0 10 multipath 0 0 1 1 queue-length 0 2 1 8:0 128 8:16 128
0046 #
0047 # dmsetup status
0048 test: 0 10 multipath 2 0 0 0 1 1 E 0 2 1 8:0 A 0 0 8:16 A 0 0