
If you recall the current driver model, which looks like this: libvirt.c | (virDriver) | V +---- xen_unified.c | (virDriver) | V +---- xen_internal.c | +---- xend_internal.c etc. The interface between libvirt.c and xen_unified.c is virDriver. And currently the same interface is reused between xen_unified.c and its underlying drivers. This patch defines a new structure called xenUnifiedDriver, which begins as a subset of virDriver, and eventually will go away in favour of direct calls from xen_unified to the underlying parts (much simpler to understand what's going on that way, and we won't need the current driver ordering hacks, and anyway the xen drivers call each other semi-randomly). libvirt.c | (virDriver) | V +---- xen_unified.c | (xenUnifiedDriver + direct calls) | V +---- xen_internal.c | +---- xend_internal.c etc. This patch starts by removing the id, name and version fields from virDriver. It also removes getMaxVcpus and the domainLookup* fields, which will make more sense when you see patches #6 and #7 in this series. Rich. -- Emerging Technologies, Red Hat - http://et.redhat.com/~rjones/ Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SL4 1TE, United Kingdom. Registered in England and Wales under Company Registration No. 03798903