[Libvir] Here the patch for virtual CPU functions.

Daniel Veillard veillard at redhat.com
Fri Aug 4 09:45:41 UTC 2006

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
    - 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 Veillard      | Red Hat http://redhat.com/
veillard at redhat.com  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/

More information about the libvir-list mailing list