[Libvir] [RFC][PATCH 0/2] Tested NUMA patches for available memory and topology

Daniel Veillard veillard at redhat.com
Fri Sep 28 14:46:04 UTC 2007


On Fri, Sep 28, 2007 at 12:06:24AM -0400, beth kon wrote:
> I have tested the patches on a NUMA and a non-NUMA configuration, and 
> they fundamentally appear to work. The first patch is for accessing 
> available memory on a per-node basis.
> 
> The second patch is for accessing NUMA node topology. I've gotten some 
> helpful suggestions about my string parsing code, introducing me to 
> sscanf :-). I've become convinced that there are more elegant ways to do 
> this which would have about the same level of error checking. However, I 
> am out of time if Daniel wants to check this in this week. So I offer 
> what I do have, which functions, but is not elegant. I have been playing 
> with other ways to do this and am not far from finished. So, Daniel, you 
> need to tell me if you want to take this code, and possibly upgrade to 
> something more compact later, or if you'd like to wait for the next 
> revision.

  At this point I won't be too picky about parsing the xend output for
the NUMA topology, as long as it works and is tested and has no obvious
hole that's good enough.

  So I have commited the 4 patches to CVS:
    - my initial patch
    - your 2 patches
    - the virsh freecell extension

I had to clean up a few things for example the warnings raised by Rich,
added the new call to the exported symbol list in the library, extended
the virsh man page and added the new call to the entry point list support
page.

However I think there is at least a few things still left to be done
before pushing this in a new release:
  - if possible get remote operations for the new call
  - a bit more testing for example I found out
    virsh # freecell 0
    0: 64339968 kB

    virsh # freecell
    Total: 64339968 kB

    virsh # freecell 1
    libvir: Xen error : invalid argument in xenHypervisorNodeGetCellsFreeMemory: invalid argument

    virsh # freecell -1
    Total: 64339968 kB

    virsh # freecell -2
    -2: 0 kB

    we should probably see an error in the last 2 case instead
  - isolate as a separate call what is the total sum of free memory available
    on the Node
  - on NUMA boxes in the capability dump I would like to see the
    amount of memory available on the cell see
    https://www.redhat.com/archives/libvir-list/2007-September/msg00015.html
    <memory size='2097152'/>
    in the topology example.
  - now that the code is in CVS reorganize a bit for example move back generic
    code to xen_unified.c

Anyway it looks like we are in good shape,

  thanks a lot !

Daniel

-- 
Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard      | virtualization library  http://libvirt.org/
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