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(-) |