[Sheepdog] [RFC PATCH 0/2] remove vdi lock feature

MORITA Kazutaka morita.kazutaka at lab.ntt.co.jp
Tue Dec 28 09:34:13 CET 2010


This patchset proposes removing a vdi lock feature from Sheepdog.  It
is because most administrators already have something like a
management tool to know which images are used.  If administrators can
avoid opening the same sheepdog image at the same time, it seems to be
meaningless to maintain lock information in the storage system.

Moreover, the lock feature of Sheepdog causes the following problems:

 - To support the lock feature, all sheepdog nodes have a list of
   locked images in memory.  When nodes are newly joined to the
   cluster, Sheepdog sends the list to them with a corosync
   multicast. However, the size of the list can be large when we open
   many images, and in that case, we cannot send the list with one
   mcast message because of the restriction of corosync.  Currently,
   sheepdog sends the list with multiple mcast messages, but it makes
   the codes hard to read.

 - When doing a live migration, qemu needs to open its image on source
   host and destination host at the same time, but the locking feature
   prevents it.

 - When qemu crashes, sheepdog needs to detect it and release the
   lock.  However it is difficult to detect the aliveness of VMs
   strictly if they run outside the cluster.

This patchset removes the lock feature and solves the above problems.

If there is no objection to this suggestion, I think of removing the
lock feature in the next release.

Thanks,

Kazutaka


MORITA Kazutaka (2):
  sheep: remove vdi lock feature
  collie: remove vdi lock feature

 collie/collie.c    |  193 +---------------------------------------------------
 include/sheep.h    |    7 --
 sheep/group.c      |  182 +------------------------------------------------
 sheep/sdnet.c      |    1 -
 sheep/sheep_priv.h |    3 +-
 sheep/store.c      |   55 ++++-----------
 6 files changed, 20 insertions(+), 421 deletions(-)




More information about the sheepdog mailing list