[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