On Tue, 11/04 07:47, Markus Armbruster wrote: > Fam Zheng <f...@redhat.com> writes: > > > 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. > > We have many commands identifying nodes by some name: root nodes by BDS > device_name[] (now BB name), inner nodes by "file name" (ugh), and > arbitrary nodes by BDS name_name[]. > > An obvious task is deprecating "file name" in favor of node names. > > Less obvious is where to accept a node name instead of / in addition to > a device name. > > Want me to start a thread on this?
Yes please, it's good to review the situation and make some concrete convention and plan for the transition. Fam