XOP-591: Dump sm_config as part of NFSVDI.generate_config

This information is used by HA to attach heartbeat VDI when XAPI is
not around. It is necessary to preserve the sm_config information
because it now contains the nosubdir flag which is crucial for
deciding which path to mount.

Previously, we deliberately didn't change this to minimize code
churn, because we knew that Cloudstack didn't use XenServer's HA,
and even if they do, they should use the normal NFSSR with subdirectory.

However, the situation changed. Firstly, CloudStack will use XenServer's
HA; Secondly, a user could set heartbeat SR to CloudStack's primary NFSSR
storage by mistake (which has the nosubdir=true) and he/she will then
stuck in a situation can't easily recover. Therefore, we must fix this
problem properly.

Signed-off-by: Zheng Li <zheng.li@citrix.com>
Reviewed-by: Vineeth Thampi Raveendran <vineeth.thampi@citrix.com>

Github: closes #78 on xapi-project/sm
Revert "CA-117628: allow LVM metadata updates when running through plug-in"

This reverts commit e4a239c3dcc901d63ffb71644e532c8d050b84aa. The commit
is reverted because it has apparently exposed an existing bug. Will
reapply the commit once this is confirmed and the bug fixed.

Signed-off-by: Thanos Makatos <thanos.makatos@citrix.com>
Acked-by: Germano Percossi <germano.percossi@citrix.com>

Github: closes #80 on xapi-project/sm
CA-127463: After a snapshot failure, VHDs are left in PAUSED state

In the event of a snapshot failure, both tapdisk and VHDs are left in
paused state. During the recovery cycle using journaler mechanism, the
VHDs are brought back to a stable state, but further vdi deactivate will
fail with VHDs in paused state. Currently there is no mechanism to
unpause the VHDs and the tapdisk.

Signed-off-by: Vineeth Thampi Raveendran <vineeth.thampi@citrix.com>
Reviewed-by: Thanos Makatos <thanos.makatos@citrix.com>

GitHub: closes #79 on xapi-project/sm