8 #include "pgpolicies.h"
12 * Tuning suggestions on these parameters should go to
15 * You are welcome to claim maintainership over a controller
16 * family. Please mail the currently enlisted maintainer and
17 * the upstream package maintainer.
19 static struct hwentry default_hw[] = {
21 * Compellent Technologies, Inc.
23 * Maintainer : Jim Lester, Compellent
24 * Mail : jim.lester@compellent.com
28 .product = "Compellent Vol",
29 .getuid = DEFAULT_GETUID,
30 .features = DEFAULT_FEATURES,
31 .hwhandler = DEFAULT_HWHANDLER,
32 .selector = DEFAULT_SELECTOR,
34 .pgfailback = -FAILBACK_IMMEDIATE,
35 .rr_weight = RR_WEIGHT_NONE,
36 .no_path_retry = NO_PATH_RETRY_QUEUE,
37 .minio = DEFAULT_MINIO,
39 .prio_name = DEFAULT_PRIO,
42 * Apple controller family
44 * Maintainer : Shyam Sundar
45 * Mail : g.shyamsundar@yahoo.co.in
49 .product = "Xserve RAID ",
50 .getuid = DEFAULT_GETUID,
51 .features = DEFAULT_FEATURES,
52 .hwhandler = DEFAULT_HWHANDLER,
53 .selector = DEFAULT_SELECTOR,
55 .pgfailback = FAILBACK_UNDEF,
56 .rr_weight = RR_WEIGHT_NONE,
57 .no_path_retry = NO_PATH_RETRY_UNDEF,
58 .minio = DEFAULT_MINIO,
59 .checker_name = DEFAULT_CHECKER,
60 .prio_name = DEFAULT_PRIO,
63 * StorageWorks controller family
65 * Maintainer : Christophe Varoqui
66 * Mail : christophe.varoqui@free.fr
71 .getuid = DEFAULT_GETUID,
72 .features = DEFAULT_FEATURES,
73 .hwhandler = DEFAULT_HWHANDLER,
74 .selector = DEFAULT_SELECTOR,
76 .pgfailback = FAILBACK_UNDEF,
77 .rr_weight = RR_WEIGHT_NONE,
78 .no_path_retry = NO_PATH_RETRY_UNDEF,
79 .minio = DEFAULT_MINIO,
80 .checker_name = DEFAULT_CHECKER,
81 .prio_name = DEFAULT_PRIO,
86 .getuid = DEFAULT_GETUID,
87 .features = "1 queue_if_no_path",
88 .hwhandler = "1 hp-sw",
89 .selector = DEFAULT_SELECTOR,
90 .pgpolicy = GROUP_BY_PRIO,
91 .pgfailback = FAILBACK_UNDEF,
92 .rr_weight = RR_WEIGHT_NONE,
93 .no_path_retry = NO_PATH_RETRY_UNDEF,
94 .minio = DEFAULT_MINIO,
95 .checker_name = HP_SW,
96 .prio_name = PRIO_HP_SW,
101 .getuid = DEFAULT_GETUID,
102 .features = DEFAULT_FEATURES,
103 .hwhandler = DEFAULT_HWHANDLER,
104 .selector = DEFAULT_SELECTOR,
105 .pgpolicy = MULTIBUS,
106 .pgfailback = FAILBACK_UNDEF,
107 .rr_weight = RR_WEIGHT_NONE,
109 .minio = DEFAULT_MINIO,
110 .checker_name = DIRECTIO,
111 .prio_name = DEFAULT_PRIO,
114 /* MSA 1000/MSA1500 EVA 3000/5000 with old firmware */
115 .vendor = "(COMPAQ|HP)",
116 .product = "(MSA|HSV)1.0.*",
117 .getuid = DEFAULT_GETUID,
118 .features = "1 queue_if_no_path",
119 .hwhandler = "1 hp-sw",
120 .selector = DEFAULT_SELECTOR,
121 .pgpolicy = GROUP_BY_PRIO,
122 .pgfailback = FAILBACK_UNDEF,
123 .rr_weight = RR_WEIGHT_NONE,
125 .minio = DEFAULT_MINIO,
126 .checker_name = HP_SW,
127 .prio_name = PRIO_HP_SW,
130 /* MSA 1000/1500 with new firmware */
132 .product = "MSA VOLUME",
133 .getuid = DEFAULT_GETUID,
134 .features = DEFAULT_FEATURES,
135 .hwhandler = DEFAULT_HWHANDLER,
136 .selector = DEFAULT_SELECTOR,
137 .pgpolicy = GROUP_BY_PRIO,
138 .pgfailback = -FAILBACK_IMMEDIATE,
139 .rr_weight = RR_WEIGHT_NONE,
141 .minio = DEFAULT_MINIO,
143 .prio_name = PRIO_ALUA,
147 .product = "MSA2000s*",
148 .getuid = "/sbin/cciss_id %n",
149 .features = DEFAULT_FEATURES,
150 .hwhandler = DEFAULT_HWHANDLER,
151 .selector = DEFAULT_SELECTOR,
152 .pgpolicy = GROUP_BY_PRIO,
153 .pgfailback = -FAILBACK_IMMEDIATE,
154 .rr_weight = RR_WEIGHT_NONE,
156 .minio = DEFAULT_MINIO,
158 .prio_name = DEFAULT_PRIO,
161 /* EVA 3000/5000 with new firmware, EVA 4000/6000/8000 */
162 .vendor = "(COMPAQ|HP)",
163 .product = "HSV1[01]1|HSV2[01]0|HSV300",
164 .getuid = DEFAULT_GETUID,
165 .features = DEFAULT_FEATURES,
166 .hwhandler = DEFAULT_HWHANDLER,
167 .selector = DEFAULT_SELECTOR,
168 .pgpolicy = GROUP_BY_PRIO,
169 .pgfailback = -FAILBACK_IMMEDIATE,
170 .rr_weight = RR_WEIGHT_NONE,
172 .minio = DEFAULT_MINIO,
174 .prio_name = PRIO_ALUA,
177 /* HP MSA2000 product family */
179 .product = "MSA2[02]12*",
180 .getuid = DEFAULT_GETUID,
181 .features = DEFAULT_FEATURES,
182 .hwhandler = DEFAULT_HWHANDLER,
183 .selector = DEFAULT_SELECTOR,
184 .pgpolicy = MULTIBUS,
185 .pgfailback = -FAILBACK_IMMEDIATE,
186 .rr_weight = RR_WEIGHT_NONE,
188 .minio = DEFAULT_MINIO,
190 .prio_name = DEFAULT_PRIO,
195 .product = "LOGICAL VOLUME.*",
196 .getuid = "/lib/udev/scsi_id -n -g -u -d /dev/%n",
197 .features = DEFAULT_FEATURES,
198 .hwhandler = DEFAULT_HWHANDLER,
199 .selector = DEFAULT_SELECTOR,
200 .pgpolicy = MULTIBUS,
201 .pgfailback = FAILBACK_UNDEF,
202 .rr_weight = RR_WEIGHT_NONE,
204 .minio = DEFAULT_MINIO,
205 .checker_name = CCISS_TUR,
206 .prio_name = DEFAULT_PRIO,
209 * DDN controller family
211 * Maintainer : Christophe Varoqui
212 * Mail : christophe.varoqui@free.fr
216 .product = "SAN DataDirector",
217 .getuid = DEFAULT_GETUID,
218 .features = DEFAULT_FEATURES,
219 .hwhandler = DEFAULT_HWHANDLER,
220 .selector = DEFAULT_SELECTOR,
221 .pgpolicy = MULTIBUS,
222 .pgfailback = FAILBACK_UNDEF,
223 .rr_weight = RR_WEIGHT_NONE,
224 .no_path_retry = NO_PATH_RETRY_UNDEF,
225 .minio = DEFAULT_MINIO,
226 .checker_name = DIRECTIO,
227 .prio_name = DEFAULT_PRIO,
230 * EMC / Clariion controller family
232 * Maintainer : Edward Goggin, EMC
233 * Mail : egoggin@emc.com
237 .product = "SYMMETRIX",
238 .getuid = "/lib/udev/scsi_id -g -u -ppre-spc3-83 -d /dev/%n",
239 .features = DEFAULT_FEATURES,
240 .hwhandler = DEFAULT_HWHANDLER,
241 .selector = DEFAULT_SELECTOR,
242 .pgpolicy = MULTIBUS,
243 .pgfailback = FAILBACK_UNDEF,
244 .rr_weight = RR_WEIGHT_NONE,
245 .no_path_retry = NO_PATH_RETRY_UNDEF,
246 .minio = DEFAULT_MINIO,
247 .checker_name = DIRECTIO,
248 .prio_name = DEFAULT_PRIO,
253 .bl_product = "LUNZ",
254 .getuid = DEFAULT_GETUID,
255 .features = "1 queue_if_no_path",
256 .hwhandler = "1 emc",
257 .selector = DEFAULT_SELECTOR,
258 .pgpolicy = GROUP_BY_PRIO,
259 .pgfailback = -FAILBACK_IMMEDIATE,
260 .rr_weight = RR_WEIGHT_NONE,
261 .no_path_retry = (300 / DEFAULT_CHECKINT),
262 .minio = DEFAULT_MINIO,
263 .checker_name = EMC_CLARIION,
264 .prio_name = PRIO_EMC,
267 * Fujitsu controller family
269 * Maintainer : Christophe Varoqui
270 * Mail : christophe.varoqui@free.fr
274 .product = "CentricStor",
275 .getuid = DEFAULT_GETUID,
276 .features = DEFAULT_FEATURES,
277 .hwhandler = DEFAULT_HWHANDLER,
278 .selector = DEFAULT_SELECTOR,
279 .pgpolicy = GROUP_BY_SERIAL,
280 .pgfailback = FAILBACK_UNDEF,
281 .rr_weight = RR_WEIGHT_NONE,
282 .no_path_retry = NO_PATH_RETRY_UNDEF,
283 .minio = DEFAULT_MINIO,
284 .checker_name = DIRECTIO,
285 .prio_name = DEFAULT_PRIO,
288 * Hitachi controller family
290 * Maintainer : Matthias Rudolph
291 * Mail : matthias.rudolph@hds.com
294 .vendor = "(HITACHI|HP)",
295 .product = "OPEN-.*",
296 .getuid = DEFAULT_GETUID,
297 .features = "1 queue_if_no_path",
298 .hwhandler = DEFAULT_HWHANDLER,
299 .selector = DEFAULT_SELECTOR,
300 .pgpolicy = MULTIBUS,
301 .pgfailback = FAILBACK_UNDEF,
302 .rr_weight = RR_WEIGHT_NONE,
303 .no_path_retry = NO_PATH_RETRY_UNDEF,
304 .minio = DEFAULT_MINIO,
306 .prio_name = DEFAULT_PRIO,
311 .getuid = DEFAULT_GETUID,
312 .features = "1 queue_if_no_path",
313 .hwhandler = DEFAULT_HWHANDLER,
314 .selector = DEFAULT_SELECTOR,
315 .pgpolicy = GROUP_BY_PRIO,
316 .pgfailback = -FAILBACK_IMMEDIATE,
317 .rr_weight = RR_WEIGHT_NONE,
318 .no_path_retry = NO_PATH_RETRY_UNDEF,
319 .minio = DEFAULT_MINIO,
321 .prio_name = PRIO_HDS,
324 * IBM controller family
326 * Maintainer : Hannes Reinecke, SuSE
327 * Mail : hare@suse.de
331 .product = "ProFibre 4000R",
332 .getuid = DEFAULT_GETUID,
333 .features = DEFAULT_FEATURES,
334 .hwhandler = DEFAULT_HWHANDLER,
335 .selector = DEFAULT_SELECTOR,
336 .pgpolicy = MULTIBUS,
337 .pgfailback = FAILBACK_UNDEF,
338 .rr_weight = RR_WEIGHT_NONE,
339 .no_path_retry = NO_PATH_RETRY_UNDEF,
340 .minio = DEFAULT_MINIO,
341 .checker_name = DIRECTIO,
342 .prio_name = DEFAULT_PRIO,
345 /* IBM FAStT 1722-600 */
347 .product = "1722-600",
348 .getuid = DEFAULT_GETUID,
349 .features = "1 queue_if_no_path",
350 .hwhandler = "1 rdac",
351 .selector = DEFAULT_SELECTOR,
352 .pgpolicy = GROUP_BY_PRIO,
353 .pgfailback = -FAILBACK_IMMEDIATE,
354 .rr_weight = RR_WEIGHT_NONE,
355 .no_path_retry = 300,
356 .minio = DEFAULT_MINIO,
357 .checker_name = RDAC,
358 .prio_name = PRIO_RDAC,
363 .product = "1726-4xx",
364 .getuid = DEFAULT_GETUID,
365 .features = "1 queue_if_no_path",
366 .hwhandler = "1 rdac",
367 .selector = DEFAULT_SELECTOR,
368 .pgpolicy = GROUP_BY_PRIO,
369 .pgfailback = -FAILBACK_IMMEDIATE,
370 .rr_weight = RR_WEIGHT_NONE,
371 .no_path_retry = 300,
372 .minio = DEFAULT_MINIO,
373 .checker_name = RDAC,
374 .prio_name = PRIO_RDAC,
377 /* IBM DS4400 / FAStT700 */
380 .getuid = DEFAULT_GETUID,
381 .features = DEFAULT_FEATURES,
382 .hwhandler = "1 rdac",
383 .selector = DEFAULT_SELECTOR,
384 .pgpolicy = GROUP_BY_PRIO,
385 .pgfailback = -FAILBACK_IMMEDIATE,
386 .rr_weight = RR_WEIGHT_NONE,
387 .no_path_retry = NO_PATH_RETRY_QUEUE,
388 .minio = DEFAULT_MINIO,
389 .checker_name = RDAC,
390 .prio_name = PRIO_RDAC,
396 .getuid = DEFAULT_GETUID,
397 .features = DEFAULT_FEATURES,
398 .hwhandler = "1 rdac",
399 .selector = DEFAULT_SELECTOR,
400 .pgpolicy = GROUP_BY_PRIO,
401 .pgfailback = -FAILBACK_IMMEDIATE,
402 .rr_weight = RR_WEIGHT_NONE,
403 .no_path_retry = NO_PATH_RETRY_QUEUE,
404 .minio = DEFAULT_MINIO,
405 .checker_name = RDAC,
406 .prio_name = PRIO_RDAC,
412 .getuid = DEFAULT_GETUID,
413 .features = DEFAULT_FEATURES,
414 .hwhandler = "1 rdac",
415 .selector = DEFAULT_SELECTOR,
416 .pgpolicy = GROUP_BY_PRIO,
417 .pgfailback = -FAILBACK_IMMEDIATE,
418 .rr_weight = RR_WEIGHT_NONE,
419 .no_path_retry = NO_PATH_RETRY_QUEUE,
420 .minio = DEFAULT_MINIO,
421 .checker_name = RDAC,
422 .prio_name = PRIO_RDAC,
425 /* IBM Netfinity Fibre Channel RAID Controller Unit */
428 .getuid = DEFAULT_GETUID,
429 .features = DEFAULT_FEATURES,
430 .hwhandler = "1 rdac",
431 .selector = DEFAULT_SELECTOR,
432 .pgpolicy = GROUP_BY_PRIO,
433 .pgfailback = -FAILBACK_IMMEDIATE,
434 .rr_weight = RR_WEIGHT_NONE,
435 .no_path_retry = NO_PATH_RETRY_QUEUE,
436 .minio = DEFAULT_MINIO,
437 .checker_name = RDAC,
438 .prio_name = PRIO_RDAC,
441 /* IBM DS4200 / FAStT200 */
444 .getuid = DEFAULT_GETUID,
445 .features = DEFAULT_FEATURES,
446 .hwhandler = DEFAULT_HWHANDLER,
447 .selector = DEFAULT_SELECTOR,
448 .pgpolicy = GROUP_BY_SERIAL,
449 .pgfailback = FAILBACK_UNDEF,
450 .rr_weight = RR_WEIGHT_NONE,
451 .no_path_retry = NO_PATH_RETRY_UNDEF,
452 .minio = DEFAULT_MINIO,
454 .prio_name = DEFAULT_PRIO,
457 /* IBM ESS F20 aka Shark */
459 .product = "2105(800|F20)",
460 .getuid = DEFAULT_GETUID,
461 .features = "1 queue_if_no_path",
462 .hwhandler = DEFAULT_HWHANDLER,
463 .selector = DEFAULT_SELECTOR,
464 .pgpolicy = GROUP_BY_SERIAL,
465 .pgfailback = FAILBACK_UNDEF,
466 .rr_weight = RR_WEIGHT_NONE,
467 .no_path_retry = NO_PATH_RETRY_UNDEF,
468 .minio = DEFAULT_MINIO,
470 .prio_name = DEFAULT_PRIO,
475 .product = "1750500",
476 .getuid = DEFAULT_GETUID,
477 .features = "1 queue_if_no_path",
478 .hwhandler = DEFAULT_HWHANDLER,
479 .selector = DEFAULT_SELECTOR,
480 .pgpolicy = GROUP_BY_PRIO,
481 .pgfailback = -FAILBACK_IMMEDIATE,
482 .rr_weight = RR_WEIGHT_NONE,
483 .no_path_retry = NO_PATH_RETRY_UNDEF,
484 .minio = DEFAULT_MINIO,
486 .prio_name = PRIO_ALUA,
491 .product = "2107900",
492 .getuid = DEFAULT_GETUID,
493 .features = "1 queue_if_no_path",
494 .hwhandler = DEFAULT_HWHANDLER,
495 .selector = DEFAULT_SELECTOR,
496 .pgpolicy = MULTIBUS,
497 .pgfailback = FAILBACK_UNDEF,
498 .rr_weight = RR_WEIGHT_NONE,
499 .no_path_retry = NO_PATH_RETRY_UNDEF,
500 .minio = DEFAULT_MINIO,
502 .prio_name = DEFAULT_PRIO,
505 /* IBM SAN Volume Controller */
508 .getuid = DEFAULT_GETUID,
509 .features = "1 queue_if_no_path",
510 .hwhandler = DEFAULT_HWHANDLER,
511 .selector = DEFAULT_SELECTOR,
512 .pgpolicy = GROUP_BY_PRIO,
513 .pgfailback = -FAILBACK_IMMEDIATE,
514 .rr_weight = RR_WEIGHT_NONE,
515 .no_path_retry = NO_PATH_RETRY_UNDEF,
516 .minio = DEFAULT_MINIO,
518 .prio_name = PRIO_ALUA,
521 /* IBM S/390 ECKD DASD */
523 .product = "S/390 DASD ECKD",
524 .bl_product = "S/390.*",
525 .getuid = "/sbin/dasdinfo -u -b %n",
526 .features = "1 queue_if_no_path",
527 .hwhandler = DEFAULT_HWHANDLER,
528 .selector = DEFAULT_SELECTOR,
529 .pgpolicy = MULTIBUS,
530 .pgfailback = FAILBACK_UNDEF,
531 .rr_weight = RR_WEIGHT_NONE,
532 .no_path_retry = NO_PATH_RETRY_UNDEF,
533 .minio = DEFAULT_MINIO,
534 .checker_name = DIRECTIO,
535 .prio_name = DEFAULT_PRIO,
538 /* IBM S/390 FBA DASD */
540 .product = "S/390 DASD FBA",
541 .bl_product = "S/390.*",
542 .getuid = "/sbin/dasdinfo -u -b %n",
543 .features = "1 queue_if_no_path",
544 .hwhandler = DEFAULT_HWHANDLER,
545 .selector = DEFAULT_SELECTOR,
546 .pgpolicy = MULTIBUS,
547 .pgfailback = FAILBACK_UNDEF,
548 .rr_weight = RR_WEIGHT_NONE,
549 .no_path_retry = NO_PATH_RETRY_UNDEF,
550 .minio = DEFAULT_MINIO,
551 .checker_name = DIRECTIO,
552 .prio_name = DEFAULT_PRIO,
558 .getuid = DEFAULT_GETUID,
559 .features = "1 queue_if_no_path",
560 .hwhandler = "1 alua",
561 .selector = DEFAULT_SELECTOR,
562 .pgpolicy = GROUP_BY_PRIO,
563 .pgfailback = -FAILBACK_IMMEDIATE,
564 .rr_weight = RR_WEIGHT_NONE,
565 .no_path_retry = NO_PATH_RETRY_UNDEF,
566 .minio = DEFAULT_MINIO,
568 .prio_name = PRIO_ALUA,
571 * NETAPP controller family
573 * Maintainer : Dave Wysochanski
574 * Mail : davidw@netapp.com
579 .getuid = DEFAULT_GETUID,
580 .features = "1 queue_if_no_path",
581 .hwhandler = DEFAULT_HWHANDLER,
582 .selector = DEFAULT_SELECTOR,
583 .pgpolicy = GROUP_BY_PRIO,
584 .pgfailback = -FAILBACK_IMMEDIATE,
585 .rr_weight = RR_WEIGHT_NONE,
586 .no_path_retry = NO_PATH_RETRY_UNDEF,
588 .checker_name = DIRECTIO,
589 .prio_name = PRIO_NETAPP,
592 * IBM NSeries (NETAPP) controller family
594 * Maintainer : Dave Wysochanski
595 * Mail : davidw@netapp.com
599 .product = "Nseries.*",
600 .getuid = DEFAULT_GETUID,
601 .features = "1 queue_if_no_path",
602 .hwhandler = DEFAULT_HWHANDLER,
603 .selector = DEFAULT_SELECTOR,
604 .pgpolicy = GROUP_BY_PRIO,
605 .pgfailback = -FAILBACK_IMMEDIATE,
606 .rr_weight = RR_WEIGHT_NONE,
607 .no_path_retry = NO_PATH_RETRY_UNDEF,
609 .checker_name = DIRECTIO,
610 .prio_name = PRIO_NETAPP,
613 * Pillar Data controller family
615 * Maintainer : Srinivasan Ramani
616 * Mail : sramani@pillardata.com
620 .product = "Axiom.*",
621 .getuid = DEFAULT_GETUID,
622 .features = DEFAULT_FEATURES,
623 .hwhandler = DEFAULT_HWHANDLER,
624 .selector = DEFAULT_SELECTOR,
625 .pgpolicy = GROUP_BY_PRIO,
626 .pgfailback = FAILBACK_UNDEF,
627 .rr_weight = RR_WEIGHT_NONE,
628 .no_path_retry = NO_PATH_RETRY_UNDEF,
629 .minio = DEFAULT_MINIO,
631 .prio_name = PRIO_ALUA,
636 * Maintainer : Christophe Varoqui
637 * Mail : christophe.varoqui@free.fr
641 .product = "TP9[13]00",
642 .getuid = DEFAULT_GETUID,
643 .features = DEFAULT_FEATURES,
644 .hwhandler = DEFAULT_HWHANDLER,
645 .selector = DEFAULT_SELECTOR,
646 .pgpolicy = MULTIBUS,
647 .pgfailback = FAILBACK_UNDEF,
648 .rr_weight = RR_WEIGHT_NONE,
649 .no_path_retry = NO_PATH_RETRY_UNDEF,
650 .minio = DEFAULT_MINIO,
651 .checker_name = DIRECTIO,
652 .prio_name = DEFAULT_PRIO,
656 .product = "TP9[45]00",
657 .getuid = DEFAULT_GETUID,
658 .features = DEFAULT_FEATURES,
659 .hwhandler = "1 rdac",
660 .selector = DEFAULT_SELECTOR,
661 .pgpolicy = GROUP_BY_PRIO,
662 .pgfailback = -FAILBACK_IMMEDIATE,
663 .rr_weight = RR_WEIGHT_NONE,
664 .no_path_retry = NO_PATH_RETRY_QUEUE,
665 .minio = DEFAULT_MINIO,
666 .checker_name = RDAC,
667 .prio_name = PRIO_RDAC,
672 .getuid = DEFAULT_GETUID,
673 .features = DEFAULT_FEATURES,
674 .hwhandler = "1 rdac",
675 .selector = DEFAULT_SELECTOR,
676 .pgpolicy = GROUP_BY_PRIO,
677 .pgfailback = -FAILBACK_IMMEDIATE,
678 .rr_weight = RR_WEIGHT_NONE,
679 .no_path_retry = NO_PATH_RETRY_QUEUE,
680 .minio = DEFAULT_MINIO,
681 .checker_name = RDAC,
682 .prio_name = PRIO_RDAC,
687 * Maintainer : Christophe Varoqui
688 * Mail : christophe.varoqui@free.fr
692 .product = "OPENstorage D280",
693 .getuid = DEFAULT_GETUID,
694 .features = DEFAULT_FEATURES,
695 .hwhandler = "1 rdac",
696 .selector = DEFAULT_SELECTOR,
697 .pgpolicy = GROUP_BY_PRIO,
698 .pgfailback = -FAILBACK_IMMEDIATE,
699 .rr_weight = RR_WEIGHT_NONE,
700 .no_path_retry = NO_PATH_RETRY_UNDEF,
701 .minio = DEFAULT_MINIO,
703 .prio_name = PRIO_RDAC,
708 * Maintainer : Christophe Varoqui
709 * Mail : christophe.varoqui@free.fr
713 .product = "(StorEdge 3510|T4)",
714 .getuid = DEFAULT_GETUID,
715 .features = DEFAULT_FEATURES,
716 .hwhandler = DEFAULT_HWHANDLER,
717 .selector = DEFAULT_SELECTOR,
718 .pgpolicy = MULTIBUS,
719 .pgfailback = FAILBACK_UNDEF,
720 .rr_weight = RR_WEIGHT_NONE,
721 .no_path_retry = NO_PATH_RETRY_UNDEF,
722 .minio = DEFAULT_MINIO,
723 .checker_name = DIRECTIO,
724 .prio_name = DEFAULT_PRIO,
729 * Maintainer : Bart Brooks, Pivot3
730 * Mail : bartb@pivot3.com
734 .product = "RAIGE VOLUME",
735 .getuid = "/lib/udev/scsi_id -p 0x80 -g -u -d /dev/%n",
736 .features = "1 queue_if_no_path",
737 .hwhandler = DEFAULT_HWHANDLER,
738 .selector = DEFAULT_SELECTOR,
739 .pgpolicy = MULTIBUS,
740 .pgfailback = FAILBACK_UNDEF,
741 .rr_weight = RR_WEIGHT_NONE,
742 .no_path_retry = NO_PATH_RETRY_UNDEF,
745 .prio_name = DEFAULT_PRIO,
749 .product = "CSM200_R",
750 .getuid = DEFAULT_GETUID,
751 .features = DEFAULT_FEATURES,
752 .hwhandler = "1 rdac",
753 .selector = DEFAULT_SELECTOR,
754 .pgpolicy = GROUP_BY_PRIO,
755 .pgfailback = -FAILBACK_IMMEDIATE,
756 .rr_weight = RR_WEIGHT_NONE,
757 .no_path_retry = NO_PATH_RETRY_QUEUE,
758 .minio = DEFAULT_MINIO,
759 .checker_name = RDAC,
760 .prio_name = PRIO_RDAC,
765 .product = "LCSM100_F",
766 .getuid = DEFAULT_GETUID,
767 .features = DEFAULT_FEATURES,
768 .hwhandler = "1 rdac",
769 .selector = DEFAULT_SELECTOR,
770 .pgpolicy = GROUP_BY_PRIO,
771 .pgfailback = -FAILBACK_IMMEDIATE,
772 .rr_weight = RR_WEIGHT_NONE,
773 .no_path_retry = NO_PATH_RETRY_QUEUE,
774 .minio = DEFAULT_MINIO,
775 .checker_name = RDAC,
776 .prio_name = PRIO_RDAC,
793 .checker_name = NULL,
799 setup_default_hwtable (vector hw)
802 struct hwentry * hwe = default_hw;
804 while (hwe->vendor) {
805 r += store_hwe(hw, hwe);