On Mon, 11/03 15:32, Kevin Wolf wrote: > Am 03.11.2014 um 02:46 hat Fam Zheng geschrieben: > > On Fri, 10/31 10:01, Kevin Wolf wrote: > > > Am 11.09.2014 um 07:05 hat Fam Zheng geschrieben: > > > > Similar to drive-backup, but this command uses a device id as target > > > > instead of creating/opening an image file. > > > > > > > > Also add blocker on target bs, since the target is also a named device > > > > now. > > > > > > > > Add check and report error for bs == target which became possible but is > > > > an illegal case with introduction of blockdev-backup. > > > > > > > > Signed-off-by: Fam Zheng <f...@redhat.com> > > > > > > > diff --git a/qapi/block-core.json b/qapi/block-core.json > > > > index a685d02..b953c7b 100644 > > > > --- a/qapi/block-core.json > > > > +++ b/qapi/block-core.json > > > > @@ -669,6 +669,40 @@ > > > > '*on-target-error': 'BlockdevOnError' } } > > > > > > > > ## > > > > +# @BlockdevBackup > > > > +# > > > > +# @device: the name of the device which should be copied. > > > > +# > > > > +# @target: the name of the backup target device. > > > > > > Both of these are either a BlockBackend ID or a BDS node-name, right? Do > > > we have a standard way of expressing this? "name of the device" isn't > > > quite clear. > > > > "name of the device" is used everywhere to document the "device" parameters > > in > > our json schema. Since we have BlockBackend now, device-name and node-name > > could be better distinguished. All we have to do is giving a beautiful name > > to > > both. > > > > [This patch is only a copy&paste and is consistent with the rest part of the > > file. So I'll leave it for now :] > > The rest of the file doesn't accept node names. But looking at your > actual code, it seems that you are doing the same (by usign bdrv_find() > instead of bdrv_lookup_bs()).
Yes, to be consistent with drive-backup. > > Shouldn't a proper blockdev-* command accept node names as well? > I am not sure, it's still blockdev-backup, not blocknode-backup. I think that may be another thing, to changed drive-*'s @device parameter, and blockdev-*'s @device and @target to accept node names, altogether. Fam