On Thu, Feb 07, 2013 at 05:26:10PM -0500, Stefan Berger wrote:
On 02/07/2013 12:58 PM, Daniel P. Berrange wrote:
>On Thu, Feb 07, 2013 at 12:56:45PM -0500, Stefan Berger wrote:
>>On 02/07/2013 10:12 AM, Daniel P. Berrange wrote:
>>>On Mon, Feb 04, 2013 at 07:12:37PM -0500, Stefan Berger wrote:
>>>>Create field in virDomainDeviceInfo structure to hold
>>>>file descriptor set the device is associated with. Have
>>>>the number written into the Device Info XML and parsed
>>>>from the XML.
>>>>Remember the next-toy use file descriptor set in the QEMU
>>>>private domain structure.
>>>>Upon libvirt restart determine the maximum file descriptor
>>>>set used in the Device Info XML and remember the
>>>>next-to-use file descriptor set in the QEMU private domain
>>>>structure.
>>>>
>>>>Upon termination of a domain, reset the next-to-use file
>>>>descriptor set to its initial value '1'.
>>>>
>>>>Stefan Berger <stefanb(a)linux.vnet.ibm.com>
>>>>
>>>>---
>>>> src/conf/capabilities.h | 5 ++++-
>>>> src/conf/domain_conf.c | 20 +++++++++++++++++---
>>>> src/conf/domain_conf.h | 1 +
>>>> src/lxc/lxc_domain.c | 3 ++-
>>>> src/qemu/qemu_domain.c | 23 ++++++++++++++++++++++-
>>>> src/qemu/qemu_domain.h | 2 ++
>>>> src/qemu/qemu_process.c | 2 ++
>>>> 7 files changed, 50 insertions(+), 6 deletions(-)
>>>I really don't like the fact that we're modifying the virDomainDef
>>>structs, which are intended to hold static config description, to
>>>also hold QEMU specific dynamic state. We did this in the past
>>>before we had the per-driver 'privateData' associated with
>>>virDomainObjPtr instances.
>>In these patches we are storing the fdset that's in use by a
>>particular device in the virDomainDeviceInfo structure and are
>>persisting that fdset number next to the device's alias into XML
>>written into /var/run/libvirt/qemu to be able to restore it upon
>>libvirt restart. Now we would either need a similar per-device
>>structure in parallel to those virDomainDeviceInfo structures or
>>connect a QEMU private data structure to that virDomainDeviceInfo
>>structure for storing the dynamic data and to keep reference back to
>>the device. Not sure what's the best path ...
>Just have a hashtable mapping device alias names -> fd set numbers
>in the qemuDomainObjPrivatePtr, and write that out in the QEMU
>private XML. There's no need to directly mirror the structs.
>
you agree to this XML ?
<fdsets>
<entry alias='ide0-0-0' fdset='1'/>
<entry alias='serial0' fdset='2'/>
<entry alias='serial1' fdset='3'/>
</fdsets>
Yes, sort sort of thing looks better to me
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|