[sheepdog] [PATCH 2/4] sheep, dog: introduce a new state for expressing coherence of inode objects in clients
Hitoshi Mitake
mitake.hitoshi at gmail.com
Thu Aug 7 07:35:57 CEST 2014
On Thu, Aug 7, 2014 at 12:10 PM, Ruoyu <liangry at ucweb.com> wrote:
> Hi Hitoshi,
>
>
> +static bool add_new_participant(struct vdi_state_entry *entry,
> + const struct node_id *owner)
> +{
> + int idx;
> +
> + if (entry->lock_state == LOCK_STATE_UNLOCKED) {
> + assert(!entry->nr_participants);
> +
> + sd_debug("%s is first owner of %"PRIx32,
> node_id_to_str(owner),
> + entry->vid);
> +
> + entry->nr_participants = 1;
> + memcpy(&entry->participants[0], owner, sizeof(*owner));
> + entry->participants_state[0] = SHARED_LOCK_STATE_MODIFIED;
> + entry->lock_state = LOCK_STATE_SHARED;
> +
> + return true;
> + }
> +
> + assert(entry->lock_state == LOCK_STATE_UNLOCKED);
>
> It seems the assertion will be failure. Am I misunderstanding?
Thanks a lot for your pointing. As you say, it is my mistake. I've
forgot to test it with --enable-debug. I've posted a patch for fixing
it.
Thanks,
Hitoshi
>
> --
> sheepdog mailing list
> sheepdog at lists.wpkg.org
> http://lists.wpkg.org/mailman/listinfo/sheepdog
More information about the sheepdog
mailing list