- Update Changelog.
multipathd: Issue warning on CLI command timeout

Some CLI commands like 'reconfigure' could take longer than the
socket timeout, causing the CLI to report 'timeout receiving packet'.
In these cases the multipath daemon should issue a warning with
the actual time spent in the CLI call to give the administator
some hints on the best socket timeout.

References: bnc#891189

Signed-off-by: Hannes Reinecke <hare@suse.de>
Allow zero-sized devices during configuration

A size of '0' doesn't indicate an invalid device; other paths might
end up with a correct size.

Signed-off-by: Hannes Reinecke <hare@suse.de>
Fixup device-mapper cookie handling yet again

The device-mapper cookie handling is weird, and there is no
documentation to be had. So here's another fix which should
clear up matters somewhat.

References: bnc#890902

Signed-off-by: Hannes Reinecke <hare@suse.de>
- Update Changelog.
multipathd: Check for empty wwid when processing events

Some paths do not provide a wwid, so we need to ensure that
the wwid is present before processing an event.

References: bnc#892214

Signed-off-by: Hannes Reinecke <hare@suse.de>
kpartx: zero out cookie

The device-mapper cooke needs to be zeroed, otherwise we might
get spurious errors during map creation.

References: bnc#890902

Signed-off-by: Hannes Reinecke <hare@suse.de>
Use strlen() when checking for valid wwid

The wwid is required to be a string, so we should be using
strlen() when checking for a valid WWID.

Signed-off-by: Hannes Reinecke <hare@suse.de>
- Update Changelog.
multipathd: Use standard lists for CLI handling

We already have standard list handling macros in list.h, so
we should be using them for CLI, too.

Signed-off-by: Hannes Reinecke <hare@suse.de>
multipathd: lock cli client list

Signed-off-by: Hannes Reinecke <hare@suse.de>
uxlsnr: use typedef for trigger function

Signed-off-by: Hannes Reinecke <hare@suse.de>
multipathd: timeout CLI commands when waiting for lock

When a CLI command is waiting for the vector lock it might
timeout, but the command itself remains queued. This causes
some irritation as no other commands can be send until the
original command is processed.

Signed-off-by: Hannes Reinecke <hare@suse.de>
Remove dm_udev_XXX wrapper functions

As the definitions are encapsulated with the correct definitions
anyway there is no need to have private wrappers here.

Signed-off-by: Hannes Reinecke <hare@suse.de>
multipathd: asynchronous configuration

For initial configuration multipathd waits it has synchronized
with the existing setup. On larger systems this takes up quite
some time (I've measured 80 seconds on a system with 1024 paths)
causing systemd to stall and the system to fail booting.
This patch makes the initial configuration asynchronous, and
using the same codepath as the existing 'reconfigure' CLI
command.

References: bnc#891189

Signed-off-by: Hannes Reinecke <hare@suse.de>
Revert to ACT_RELOAD in domap if the map exists

ACT_CREATE checks for an existing map already, so we might as
well revert to ACT_RELOAD in these cases and avoid an error
during configuration.

Signed-off-by: Hannes Reinecke <hare@suse.de>
- Update Changelog.