On 20/09/2016 14:39, Pavel Dovgalyuk wrote:
> > > +    replay_snapshot = g_strdup(qemu_opt_get(opts, "rrsnapshot"));
> > > +
> > >      replay_enable(fname, mode);
> > >
> > 
> > Should you set snapshot = 1 here if there is no rrsnapshot option?
> 
> No, because there is default snapshot name for the case when user 
> specifies overlay for the drives.

There are three possibilities:

a) these patches:
   with implicit overlay:
      -drive file=disk.raw,if=none,id=img-direct
      -drive driver=blkreplay,if=none,image=img-direct,id=img-blkreplay

   with explicit overlay:
     -drive file=disk.raw,if=none,id=img-direct
     -drive 
driver=blkreplay,if=none,image=img-direct,id=img-blkreplay,overlay=foo.qcow2

   Advantages:
   - does the right thing in the "implicit overlay" case.

   Disadvantages:
   - no need really to specify disk.raw in the "explicit overlay" case, since
     it's already specified when you create the overlay with qemu-img.

   Vote for implicit overlay: excellent
   Vote for explicit overlay: bad (need to track two file names)

b) always specify -snapshot manually:
   with implicit overlay:
      -drive file=disk.raw,if=none,id=img-direct -snapshot
      -drive driver=blkreplay,if=none,image=img-direct,id=img-blkreplay

   with explicit overlay:
     -drive file=foo.qcow2,if=none,id=img-direct
     -drive driver=blkreplay,if=none,image=img-direct,id=img-blkreplay

   Advantages:
   - can use default snapshot name in the "explicit overlay" case

   Disadvantages:
   - need to specify -snapshot explicitly for the "implicit overlay" case

   Vote for implicit overlay: awful (disk.raw destroy if you forget -snapshot)
   Vote for explicit overlay: excellent

c) no rrsnapshot implies -snapshot:
   without overlay:
      -drive file=disk.raw,if=none,id=img-direct
      -drive driver=blkreplay,if=none,image=img-direct,id=img-blkreplay

   with overlay:
     -drive file=foo.qcow2,if=none,id=img-direct
     -drive driver=blkreplay,if=none,image=img-direct,id=img-blkreplay
     -icount ...,rrsnapshot=snapname

   Advantages:
   - does the right thing in the "implicit overlay" case.

   Disadvantages:
   - always have to specify snapshot name in the "explicit overlay" case

   Vote for implicit overlay: excellent (same as a)
   Vote for explicit overlay: decent

We have to choose between (a) and (c) I think, because the risk of corruption
for (b) is too high.  I prefer (c).  Kevin, what do you think?

Thanks,

Paolo

Reply via email to