multipathd is not starting waitevent checker for single paths
After multipathd was started, any SCSI disks that would be added afterwards
would not trigger multipathd to create a waitevent thread.
The waitevent thread listens for kernel's offline/online events and thoroughly
checks what the kernel sees with what multipathd thinks and if something is
off,
whacks multipathd to the right state.
For devices which did not have a kernel device mapper helper (hp_sw, rdac,
etc) and only have one single path, when the link experiences a momentary blib
with I/O on it the path would be marked as failed _only_ by the kernel. This
event
would _not_ be propagated to multipathd (b/c it did not have a waitevent thread
create). Multipathd would only do the path checker which would provide a
PATH_UP event (rightly so - as the path would only be down for a second or so).
However, the device mapper path group would be marked as failed, and any
incoming I/O would be blocked (if queue_if_no_path was set) or fail.
The end result was the multipathd would think everything was peachy while the
kernel would be failing (or queueing) the I/O to the multipath device.
References: bnc#473841
Signed-off-by: Hannes Reinecke <hare@suse.de>