- init script does not perform proper check before attempting to initialize hsg80 multibus failover
- hsg80 failover is not handled properly causing multipathd to spin 100% of the CPU without readding the proper device to dm-multipath
Solutions:
- remove hsg80 init from init script.
- add a separate command /sbin/hsg80_start:
- the script is more robust, it performs better error checking and it solves the race issue caused by multipathd attempting to readd the passive leg
of the hsg80 to dm-multipath *before* started properly.
- change /etc/udev/rules.d/85-multipath.rules to invoke /sbin/hsg80_start only if we detect that we are really on an HSG80 and with the recognized passive path (size is set to 10GB by HSG firmware).
a similar solution will be applied to edgy and feisty. debdiffs will follow with the same logic. udev rules and sg_start invocation will be different.
Here is the proposed patch for dapper.
Problems:
- init script does not perform proper check before attempting to initialize hsg80 multibus failover
- hsg80 failover is not handled properly causing multipathd to spin 100% of the CPU without readding the proper device to dm-multipath
Solutions:
- remove hsg80 init from init script.
- add a separate command /sbin/hsg80_start:
- the script is more robust, it performs better error checking and it solves the race issue caused by multipathd attempting to readd the passive leg
of the hsg80 to dm-multipath *before* started properly.
- change /etc/udev/ rules.d/ 85-multipath. rules to invoke /sbin/hsg80_start only if we detect that we are really on an HSG80 and with the recognized passive path (size is set to 10GB by HSG firmware).
a similar solution will be applied to edgy and feisty. debdiffs will follow with the same logic. udev rules and sg_start invocation will be different.
Fabio