[dm-devel] [PATCH] multipath-tools: update hwtable text/info/comments

Martin Wilck mwilck at suse.com
Mon Sep 12 09:27:36 UTC 2022


On Mon, 2022-09-12 at 00:36 +0200, Xose Vazquez Perez wrote:
> delete attributes from template, outdated and incompleted.
> delete trivial/redundant comments.
> add HPE Alletra 5000 info.
> remove empty lines in comments.
> compact some info.
> 
> Cc: Martin Wilck <mwilck at suse.com>
> Cc: Benjamin Marzinski <bmarzins at redhat.com>
> Cc: Christophe Varoqui <christophe.varoqui at opensvc.com>
> Cc: DM-DEVEL ML <dm-devel at redhat.com>
> Signed-off-by: Xose Vazquez Perez <xose.vazquez at gmail.com>
> ---
>  libmultipath/hwtable.c | 66 +++++++---------------------------------
> --
>  1 file changed, 10 insertions(+), 56 deletions(-)
> 
> diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
> index 2085aba5..d2c92d43 100644
> --- a/libmultipath/hwtable.c
> +++ b/libmultipath/hwtable.c
> @@ -33,59 +33,26 @@
>          * Copy this TEMPLATE to add new hardware.
>          *
>          * Keep only mandatory(.vendor and .product) and modified
> attributes.
> -        * Attributes with default values must be removed.
> +        * Attributes with default values must be omitted.
>          * .vendor, .product, .revision and .bl_product are POSIX
> Extended regex.
>          *
>          * COMPANY_NAME
> -        *
>          * Maintainer: NAME <email>
>          */
>         {
>                 /* Product Name */
>                 .vendor        = "VENDOR",
>                 .product       = "PRODUCT",
> -               .revision      = "REVISION",
> -               .bl_product    = "BL_PRODUCT",
> -               .pgpolicy      = FAILOVER,
> -               .uid_attribute = "ID_SERIAL",
> -               .selector      = "service-time 0",
> -               .checker_name  = TUR,
> -               .alias_prefix  = "mpath",
> -               .features      = "0",
> -               .hwhandler     = "0",
> -               .prio_name     = PRIO_CONST,
> -               .prio_args     = "",
> -               .pgfailback    = -FAILBACK_MANUAL,
> -               .rr_weight     = RR_WEIGHT_NONE,
> -               .no_path_retry = NO_PATH_RETRY_UNDEF,
> -               .minio         = 1000,
> -               .minio_rq      = 1,
> -               .flush_on_last_del = FLUSH_DISABLED,
> -               .user_friendly_names = USER_FRIENDLY_NAMES_OFF,
> -               .fast_io_fail  = 5,
> -               .dev_loss      = 600,
> -               .retain_hwhandler = RETAIN_HWHANDLER_ON,
> -               .detect_prio   = DETECT_PRIO_ON,
> -               .detect_checker = DETECT_CHECKER_ON,
> -               .deferred_remove = DEFERRED_REMOVE_OFF,
> -               .delay_watch_checks = DELAY_CHECKS_OFF,
> -               .delay_wait_checks = DELAY_CHECKS_OFF,
> -               .skip_kpartx   = SKIP_KPARTX_OFF,
> -               .max_sectors_kb = MAX_SECTORS_KB_UNDEF,
> -               .ghost_delay   = GHOST_DELAY_OFF,
> +               ...

I'd like to keep the template with the current defaults. That makes it
easier for contributors to figure out whether given settings are the
same as the default. We should double check that this list is still
correct though.

>         },
>  #endif
>  
>  static struct hwentry default_hw[] = {
>         /*
>          * Generic NVMe devices
> -        *
> -        * Due to the parsing logic in find_hwe(), generic entries
> -        * have to be put on top of this list, and more specific ones
> -        * below.

Nack, this comment must be kept. Not sure about you but I, even though
I wrote the logic partly myself, need to think twice about the ordering
sometimes.


>          */
>         {
> -               /* Generic NVMe */
> +               /* NVMe */
>                 .vendor        = "NVM[eE]",
>                 .product       = ".*",
>                 .uid_attribute = DEFAULT_NVME_UID_ATTRIBUTE,
> @@ -95,7 +62,6 @@ static struct hwentry default_hw[] = {
>         },
>         /*
>          * Apple
> -        *
>          * Maintainer: Shyam Sundar <g.shyamsundar at yahoo.co.in>
>          */
>         {
> @@ -232,7 +198,7 @@ static struct hwentry default_hw[] = {
>                 .prio_name     = PRIO_ALUA,
>         },
>         {
> -               /* Nimble Storage / HPE Alletra 6000 */
> +               /* Nimble Storage / HPE Alletra 5000/6000 */
>                 .vendor        = "Nimble",
>                 .product       = "Server",
>                 .hwhandler     = "1 alua",
> @@ -311,7 +277,6 @@ static struct hwentry default_hw[] = {
>         {
>                 /*
>                  * Nexenta COMSTAR
> -                *
>                  * Maintainer: Yacine Kheddache <yacine at alyseo.com>
>                  */
>                 .vendor        = "NEXENTA",
> @@ -367,7 +332,7 @@ static struct hwentry default_hw[] = {
>                 .pgpolicy      = MULTIBUS,
>         },
>         {
> -               /* SC Series, formerly Compellent */
> +               /* SC Series (formerly Compellent) */
>                 .vendor        = "COMPELNT",
>                 .product       = "Compellent Vol",
>                 .pgpolicy      = GROUP_BY_PRIO,
> @@ -471,7 +436,6 @@ static struct hwentry default_hw[] = {
>         },
>         /*
>          * Hitachi Vantara
> -        *
>          * Maintainer: Matthias Rudolph
> <Matthias.Rudolph at hitachivantara.com>
>          */
>         {
> @@ -672,7 +636,7 @@ static struct hwentry default_hw[] = {
>                 .pgfailback    = -FAILBACK_IMMEDIATE,
>         },
>         {
> -               // Storwize V5000 and V7000 lines / SAN Volume
> Controller (SVC) / Flex System V7000 /
> +               // Storwize V5000/V7000 lines / SAN Volume Controller
> (SVC) / Flex System V7000
>                 // FlashSystem
> V840/V9000/5000/5100/5200/7200/7300/9100/9200/9200R/9500
>                 .vendor        = "IBM",
>                 .product       = "^2145",
> @@ -757,7 +721,6 @@ static struct hwentry default_hw[] = {
>         },
>                 /*
>                  * IBM Power Virtual SCSI Devices
> -                *

Please refrain from making such whitepace changes. I actually liked the
empty line.

>                  * Maintainer: Brian King <brking at linux.vnet.ibm.com>
>                  */
>         {
> @@ -789,7 +752,6 @@ static struct hwentry default_hw[] = {
>         {
>                 /*
>                  * DE Series
> -                *
>                  * Maintainer: NetApp RDAC team
> <ng-eseries-upstream-maintainers at netapp.com>
>                  */
>                 .vendor        = "LENOVO",
> @@ -809,7 +771,6 @@ static struct hwentry default_hw[] = {
>         {
>                 /*
>                  * ONTAP family
> -                *
>                  * Maintainer: Martin George <marting at netapp.com>
>                  */
>                 .vendor        = "NETAPP",
> @@ -826,7 +787,6 @@ static struct hwentry default_hw[] = {
>         {
>                 /*
>                  * SANtricity(RDAC) family
> -                *
>                  * Maintainer: NetApp RDAC team
> <ng-eseries-upstream-maintainers at netapp.com>
>                  */
>                 .vendor        = "(NETAPP|LSI|ENGENIO)",
> @@ -843,7 +803,6 @@ static struct hwentry default_hw[] = {
>         {
>                 /*
>                  * SolidFir family
> -                *
>                  * Maintainer: PJ Waskiewicz
> <pj.waskiewicz at netapp.com>
>                  */
>                 .vendor        = "SolidFir",
> @@ -874,7 +833,6 @@ static struct hwentry default_hw[] = {
>          */
>                 /*
>                  * Pillar Data / Oracle FS
> -                *
>                  * Maintainer: Srinivasan Ramani
> <srinivas.ramani at oracle.com>
>                  */
>         {
> @@ -1015,7 +973,6 @@ static struct hwentry default_hw[] = {
>         },
>         /*
>          * Pivot3
> -        *
>          * Maintainer: Bart Brooks <bartb at pivot3.com>
>          */
>         {
> @@ -1049,12 +1006,12 @@ static struct hwentry default_hw[] = {
>                 .prio_name     = PRIO_ALUA,
>         },
>         /*
> -        * Linux-IO Target
> +        * Linux
>          */
>         {
> -               /* Linux-IO Target */
> +               /* IO Target */

No, "Linux-IO Target" is the correct name. I'd actually use
"Linux-IO Target (LIO)" here, because "LIO" is what this is most
commonly known as.

>                 .vendor        = "(LIO-ORG|SUSE)",
> -               .product       = ".",
> +               .product       = ".*",
>                 .hwhandler     = "1 alua",
>                 .pgpolicy      = GROUP_BY_PRIO,
>                 .pgfailback    = -FAILBACK_IMMEDIATE,
> @@ -1107,8 +1064,6 @@ static struct hwentry default_hw[] = {
>          */
>         {
>                 /* OceanStor V3-V6 */
> -               // This config works with multibus and ALUA
> -               // ALUA is required by HyperMetro
>                 .vendor        = "HUAWEI",
>                 .product       = "XSG1",
>                 .pgpolicy      = GROUP_BY_PRIO,
> @@ -1133,7 +1088,6 @@ static struct hwentry default_hw[] = {
>         },
>         /*
>          * Infinidat
> -        *
>          * Maintainer: Arnon Yaari <arnony at infinidat.com>
>          */
>         {
> @@ -1202,7 +1156,7 @@ static struct hwentry default_hw[] = {
>                 .no_path_retry = 30,
>         },
>         {
> -               /* 3000 / 6000 Series - ALUA mode */
> +               /* 3000 / 6000 Series (ALUA mode) */
>                 .vendor        = "VIOLIN",
>                 .product       = "SAN ARRAY ALUA",
>                 .hwhandler     = "1 alua",



More information about the dm-devel mailing list