[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC V3 3/7] qapi: Add skeletton of command to query a
From: |
Benoît Canet |
Subject: |
Re: [Qemu-devel] [RFC V3 3/7] qapi: Add skeletton of command to query a drive bs graph. |
Date: |
Thu, 5 Dec 2013 15:43:36 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Le Thursday 05 Dec 2013 à 07:38:37 (-0700), Eric Blake a écrit :
> On 12/05/2013 07:24 AM, Benoît Canet wrote:
>
> >>
> >> Am I correct that it will be possible to have named nodes that are not
> >> currently associated with any device? If so, how do we learn about
> >> those nodes? Would it be better to have a command that returns an array
> >> of structs for all known node roots, with an optional member describing
> >> which device owns that node root? Something like:
> >
> > The code have a list of all named nodes but not a list of named nodes roots.
> > Also it's difficult to get the device name for a named node because the
> > bses don't
> > have any backward pointers to their parents.
> > It could be done by recursing into all the blockbackend bs but it's twisted.
>
> Still worth thinking about how to structure things so we could add it in
> the future if it turns out to be useful to management, but I can
> understand why you aren't providing it right away.
>
> >
> > In fact I am wondering if we really need something to spit out the named
> > nodes
> > topology in QMP for the simple reason that the names of the nodes are given
> > by the
> > management so the management should already know the topology.
>
> There's one case where management might not know - if libvirtd gets
> restarted while in the middle of an operation that was attempting to
> create a named node, then on restart and reconnection to the monitor,
> libvirt would want to query to see if the node actually got created or
> if the command needs to be attempted again. I'm not a fan of write-only
> interfaces - and making management responsible to track all named nodes
> with no way to query if qemu actually agrees with the topology that
> management thinks it has commanded feels like a write-only interface.
Would a command returning info about a specific named node be sufficient for
libvirt checks ?
It's far less complex to implement than exposing the whole graph.
We could also provide a simple command to list the names of the named nodes.
Best regards
Benoît
>
> --
> Eric Blake eblake redhat com +1-919-301-3266
> Libvirt virtualization library http://libvirt.org
>
[Qemu-devel] [RFC V3 1/7] block: Add bs->node_name to hold the name of a bs node of the bs graph., Benoît Canet, 2013/12/03
[Qemu-devel] [RFC V3 4/7] qmp: Allow block_passwd to manipulate bs graph nodes., Benoît Canet, 2013/12/03
[Qemu-devel] [RFC V3 5/7] qmp: Allow block_resize to manipulate bs graph nodes., Benoît Canet, 2013/12/03
[Qemu-devel] [RFC V3 6/7] block: Create authorizations mechanism for external snapshots., Benoît Canet, 2013/12/03