On Tue, Apr 23, 2013 at 10:49:35AM -0600, Eric Blake wrote: > On 04/23/2013 10:25 AM, Stefan Hajnoczi wrote: > > This series adds a new QMP command, block-backup, which takes a > > point-in-time > > snapshot of a block device. The snapshot is copied out to a target block > > device. A simple example is: > > > > block-backup device=virtio0 format=qcow2 target=backup-20130401.qcow2 > > > What's next for block-backup? > > ----------------------------- > > The following enhancements are left for future patches: > > > > 1. QMP 'transaction' support. It is handy to atomically snapshot multiple > > block devices. We need qmp_transaction() support for this. Wenchao Xia > > is > > currently making qmp_transaction() extensible so new action types, like > > block-backup, can be added. > > > > 2. Sync modes like drive-mirror (top, full, none). This makes it possible > > to > > preserve the backing file chain. > > Based on today's phone call, it sounds like this would mean adding > optional parameters to the QMP command. We already did that for > drive-mirror (1.4 has more parameters than 1.3), but without a way to > introspect when those parameters are available, the new parameters > aren't quite as useful. So we don't repeat that mistake, we need to > decide whether this should still go into 1.5 with a plan of adding > parameters for 1.6, or whether we should add a counterpart query-* > command that makes it easy to determine how much of block-backup is > supported, or [your suggestion here]....
I have ideas for the QMP optional parameters discussion that I'll share in another thread. It's not a problem in this case because block-backup and the sync mode optional parameter will be added in the 1.6 release cycle. In other words, since QMP is versioned by QEMU release number it's fine to have multiple commits that build up a QMP command - as long as they fall within the same release. Stefan