On Thu, Aug 03, 2006 at 03:32:46PM +0200, Philippe Berthault wrote:
The patch (vcpus.diff) is joined with this mail.
To apply the patch, untar the libvirt-0.1.3.tar.gz archive (if not
already done).
Then in libvirt-0.1.3 directory, do
./configure --prefix=/usr
if not already done, and after this:
patch -p1 < vcpus.diff
make
make install
From the initial patch of Michel Ponceau (not delivered), I've just
modify the virDomainGetVcpus function and added some useful macro for
bit manipulation in cpu bit maps.
Excellent, thanks, I got it and reviewed it.
I had a few things to change:
- discard // based comments to stick just to /*
- apply the header patch to libvirt.h.in not to the generated header
- shorten some comments to fit in 80 characters wide
- renamed the macros adding the VIR_ prefix to avoid potential name
collision with other headers
- Added TODOs in the front-end functions, as they should go through
the driver API not calling Xen specific function directly
If I remember correctly some points need to be sorted out there,
any function with side effect should probably go though xend only
when talking to a Xen virtualization
- some cosmetic formatting changes
After those I think it was in a shape to be commited, so it's in but there
is a few thing left to be done, see below:
TODO: These vcpus functions permits to dynamically change the
vcpu/cpu
relation after the domain has been started but nothing has been done
regarding static cpus attribution in the XML configuration file of a domain.
Yes there is a few things left:
- as you said the impact on XML format (I'm not sure how much should be
extracted though)
- there is the driver cleanup, the VCPU entry points should be added
to the interface, the front-end function should call the drivers
and some tweaking might be needed in the Xen case to select when
or when not to use direct hypervisor calls if available.
- the doc and formal XML API need to be generated (make rebuild in doc)
- in turn once the XML API is there, see how this affects Python binding
generation, we will probably need to write specific glue to interface
Python and make nicer functions there (using list instead of bitmaps
possibly)
- add tests
- then release 0.1.4
Ahum, it's just a few things :-)
I will probably take on the driver fixup first myself.
So thanks again, and don't forget to update your CVS checkout,
Daniel
--
Daniel Veillard | Red Hat
http://redhat.com/
veillard(a)redhat.com | libxml GNOME XML XSLT toolkit
http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine
http://rpmfind.net/