[sheepdog] [PATCH] sheep: fix confused comments of vdi_snapshot()
Hitoshi Mitake
mitake.hitoshi at gmail.com
Fri May 8 16:47:12 CEST 2015
At Thu, 7 May 2015 21:13:31 +0800,
Yu Yang wrote:
>
> Thanks, and I find the reason.
> When I type 'dog vdi list' I got the following info ,
>
> $dog vdi list
> Name Id Size Used Shared Creation time VDI id Copies Tag
> Block Size Shift
> v1 0 10 MB 4.0 MB 0.0 MB 2015-05-07 16:45 709128 3
> 22
> s v2 1 20 MB 4.0 MB 0.0 MB 2015-05-07 19:11 709641 3
> 22
> v2 0 20 MB 0.0 MB 4.0 MB 2015-05-07 19:14 709642 3
> 22
>
> the second column Id of the v1 and v2 (line3) is 0,
> in fact the Id of v1 is 1, and the 3rd line Id is 2(I got it from your
> suggestion cmd 'dog vdi object dump-inode <inode object path>' ),
> the reason is the statement in function int parse_vdi() of common.c (Line
> 223):
> snapid = vdi_is_snapshot(i) ? i->snap_id : 0;
> so I can see the Id is 0 for the working VDI.
> Still confused thing.
Thanks for your analysis. It seems really confusing. Could you fix the
comment? The output of vdi list is strange, but it would not harmful.
Thanks,
Hitoshi
>
>
> > -----Original Message-----
> > From: Hitoshi Mitake [mailto:mitake.hitoshi at gmail.com] On Behalf Of Hitoshi
> > Mitake
> > Sent: Monday, April 27, 2015 10:07 AM
> > To: Yu Yang
> > Cc: 'Hitoshi Mitake'; sheepdog at lists.wpkg.org
> > Subject: Re: [sheepdog] [PATCH] sheep: fix confused comments of
> > vdi_snapshot()
> >
> > At Thu, 23 Apr 2015 19:15:00 +0800,
> > Yu Yang wrote:
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: Hitoshi Mitake [mailto:mitake.hitoshi at gmail.com] On Behalf Of
> Hitoshi
> > > > Mitake
> > > > Sent: Thursday, April 23, 2015 5:28 PM
> > > > To: Yu Yang
> > > > Cc: sheepdog at lists.wpkg.org
> > > > Subject: Re: [sheepdog] [PATCH] sheep: fix confused comments of
> > > > vdi_snapshot()
> > > >
> > > > At Thu, 23 Apr 2015 16:03:49 +0800,
> > > > Yu Yang wrote:
> > > > >
> > > > > From: Yu Yang <yuyang at cmss.chinamobile.com>
> > > > >
> > > > > fix the confused comments between snapid and vid for vdi_snapshot().
> > > > >
> > > > > Signed-off-by: Yu Yang <yuyang at cmss.chinamobile.com>
> > > > > ---
> > > > > sheep/vdi.c | 4 ++--
> > > > > 1 file changed, 2 insertions(+), 2 deletions(-)
> > > > >
> > > > > diff --git a/sheep/vdi.c b/sheep/vdi.c
> > > > > index 63e578d..b35a763 100644
> > > > > --- a/sheep/vdi.c
> > > > > +++ b/sheep/vdi.c
> > > > > @@ -1572,8 +1572,8 @@ int vdi_create(const struct vdi_iocb *iocb,
> uint32_t
> > > > *new_vid)
> > > > > * 2. rollback create (base_vid != current_vid)
> > > > > *
> > > > > * This function expects SUCCESS returned from vdi_lookup(). Both
> > rollback
> > > > and
> > > > > - * snap create started with current working VDI's snap_id + 1. Working
> VDI
> > > > > - * always has the highest snapid.
> > > > > + * snap creation starts with current working VDI's vid + 1. Working VDI
> > > > > + * always has the highest vid and its snapid is 0.
> > > >
> > > > Sorry, I missed to point a possibility of vid overflow. Working VDI
> doesn't
> > > > have the highest VID always.
> > > >
> > > > And the snapid of working VDI is always highest. It is simply incremented.
> > > >
> > > > Could you fix them?
> > > >
> > > > Thanks,
> > > > Hitoshi
> > > >
> > >
> > > I know when vid is overflow it's not the highest,
> > > but you said the snapid of working VDI is always the highest ?
> > > I find it is always ZERO, or I misunderstand of working VDI which can be
> > > read/write ?
> >
> > You can check the snapid field with
> > $ dog vdi object dump-inode <inode object path>
> >
> > It will show that working VDIs have largest snapid (working VDIs have
> > higher VIDs).
> >
> > # anyway, the field doesn't seem to be used currently
> >
> > Thanks,
> > Hitoshi
> >
> > >
> > > Thanks
> > > Yang
> > >
> > > > > */
> > > > > int vdi_snapshot(const struct vdi_iocb *iocb, uint32_t *new_vid)
> > > > > {
> > > > > --
> > > > > 1.7.9.5
> > > > >
> > > > >
> > > > > --
> > > > > sheepdog mailing list
> > > > > sheepdog at lists.wpkg.org
> > > > > https://lists.wpkg.org/mailman/listinfo/sheepdog
> > >
> > >
> > >
> > > --
> > > sheepdog mailing list
> > > sheepdog at lists.wpkg.org
> > > https://lists.wpkg.org/mailman/listinfo/sheepdog
>
>
>
> --
> sheepdog mailing list
> sheepdog at lists.wpkg.org
> https://lists.wpkg.org/mailman/listinfo/sheepdog
More information about the sheepdog
mailing list