round-robin is a basic selector, and only works well under ideal conditions,

A nvme benchmark, round-robin vs queue-depth, shows how bad it is:
https://marc.info/?l=linux-kernel&m=171931850925572
https://marc.info/?l=linux-kernel&m=171931852025575
https://github.com/johnmeneghini/iopolicy/?tab=readme-ov-file#sample-data
https://people.redhat.com/jmeneghi/ALPSS_2023/NVMe_QD_Multipathing.pdf
The same happens for scsi.

Cc: Martin Wilck <mwi...@suse.com>
Cc: Benjamin Marzinski <bmarz...@redhat.com>
Cc: Christophe Varoqui <christophe.varo...@opensvc.com>
Cc: DM-DEVEL ML <dm-devel@lists.linux.dev>
Signed-off-by: Xose Vazquez Perez <xose.vazq...@gmail.com>
---
Should global keywords be banned in the devices section, or deleted from 
hwtable ???
dev_loss
fast_io_fail
max_sectors_kb
...

They interfere when two, or more, different arrays are connected to the same 
host.
---
 libmultipath/hwtable.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
index 081d119c..3ade3669 100644
--- a/libmultipath/hwtable.c
+++ b/libmultipath/hwtable.c
@@ -1125,11 +1125,7 @@ static struct hwentry default_hw[] = {
                .pgpolicy      = GROUP_BY_PRIO,
                .pgfailback    = 30,
                .prio_name     = PRIO_ALUA,
-               .selector      = "round-robin 0",
-               .rr_weight     = RR_WEIGHT_PRIO,
                .no_path_retry = NO_PATH_RETRY_FAIL,
-               .minio         = 1,
-               .minio_rq      = 1,
                .fast_io_fail  = 15,
        },
        /*
-- 
2.49.0


Reply via email to