CP-6336: Removal of dm-multipath-conf

Migration of dm-multipath-conf.patch content from dm-multipath to sm
with basic conf file.
Previously we patched device-mapper-multipath to use a different
configuration file.

Those changes are now integrated into our own configuration file
that is installed using "update-alternatives" with a backup copy
if the original file is a regular file.

Signed-off-by: Germano Percossi <germano.percossi@citrix.com>
Reviewed-by: Vineeth Thampi Raveendran <vineeth.thampi@citrix.com>

GitHub: closes #52 on xapi-project/sm
CP-6337: Added multipath.conf manipulator

This script is a basic multipath.conf to add and remove
WWIDs in the blacklist_exceptions section

Signed-off-by: Germano Percossi <germano.percossi@citrix.com>
Reviewed-by: Keith Petley <keith.petley@citrix.com>
CP-6337: Added locking mechanism to wwid_conf

Signed-off-by: Germano Percossi <germano.percossi@citrix.com>
Reviewed-by: Keith Petley <keith.petley@citrix.com>
CP-6337: Use reconfigure and wwid utils

This patch ensure the new mechanism for explicit multipath
mapping is active.
The corresponding patch in dm-multipath can be removed.

Signed-off-by: Germano Percossi <germano.percossi@citrix.com>
Reviewed-by: Keith Petley <keith.petley@citrix.com>
CP-6337: Ensure multipath kernel modules are present

Once started the multipath daemon does not load the needed
kernel modules.
In the past it was not a problem because they are loaded as soon as
a device is added using the CLI.
Now we need some checks before doing this and they fail if this modules
are not loaded.

Loading modules while starting multipath is the standard behaviour in
more recent versions of multipath.
We just ensure this is always true.

Signed-off-by: Germano Percossi <germano.percossi@citrix.com>
Reviewed-by: Keith Petley <keith.petley@citrix.com>
Merge changes for CP-6337

Signed-off-by: Germano Percossi <germano.percossi@citrix.com>

GitHub: closes #54 on xapi-project/sm
CA-120469: Fail gracefully in case rmdir returns ENOTEMPTY

Parallel vm-suspend operations on vm that has got vdi's in the same SR
could result in reference files, ignoring rmdir error (ENOTEMPTY)
instead of lsdir looks a better option.

Signed-off-by: Vineeth Thampi Raveendran <vineeth.thampi@citrix.com>
Reviewed-by:Germano Percossi <germano.percossi@citrix.com>

GitHub: closes #53 on xapi-project/sm
CP-5818: Productise removal of lvm2-lvcreate-inactive-flag.patch

Snapshot and leaf coalesce operations use journaling files with
additional info like parent UUID in the name of the file. Since the
resultant file name is too long for LVM, the file was created in an
inactive mode. This patch changes the logic to create a journal file
with a shorter name and writes additional informaton into the file.
Inactive flag for lvcreate is no longer required.

This changeset includes the fix made for ticket [CA-117034].

Signed-off-by: Chandrika Srinivasan <chandrika.srinivasan@citrix.com>
Reviewed-by: Thanos Makatos <thanos.makatos@citrix.com>

GitHub: closes #50 on xapi-project/sm
CA-107356: Fix tapdisk unpause issue in case of VM migration failed.

VDI has driver name set to nbd in case VM migration failed. While
unpause tapdisk, it was always using mirror driver name. In a snapshot
failure scenario, the fix will pass None as driver name to unpause
tapdisk.

Signed-off-by: Sisimon Soman <sisimon.soman@citrix.com>
Reviewed-by: Thanos Makatos <thanos.makatos@citrix.com>

GitHub: closes #27 on xapi-project/sm