<div dir="ltr"><div><div>Hello Peter,<br><br>This is my first review. I tested the patch series on my system and it works fine. The refactoring part and the logic for autoCpuset and autoNodeset looks good. ACK from my side.<br><br></div>Thanks,<br></div>Nitesh. <br><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jul 12, 2017 at 7:14 PM, Peter Krempa <span dir="ltr"><<a href="mailto:pkrempa@redhat.com" target="_blank">pkrempa@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Cgroups code fails if it's instructed to bind memory usage of a qemu process to<br>
a NUMA node which does not have any memory.<br>
<br>
First four patches are preliminary cleanups and the fix to keep the autoCpuset<br>
private data entry in the status XML necessary to modify autoNodeset in the<br>
future.<br>
<br>
The last patch modifies autoNodeset to be an intersection of the advice from<br>
numad with host NUMA node set containing memory, so that we don't ask for<br>
impossible things when setting up cgroups.<br>
<br>
Peter Krempa (5):<br>
  util: bitmap: Modify virBitmapSubtract to virBitmapIntersect<br>
  qemu: domain: Extract parsing and formatting of priv->autoNodeset<br>
  qemu: domain: Store and restore autoCpuset to status XML<br>
  qemu: process: Extract gathering of 'numad' placement into a function<br>
  qemu: process: Don't put memoryless NUMA nodes into autoNodeset<br>
<br>
 src/libvirt_private.syms |   2 +-<br>
 src/qemu/qemu_domain.c   | 102 ++++++++++++++++++++++++++++++<wbr>++++++-----------<br>
 src/qemu/qemu_process.c  |  73 +++++++++++++++++++++++-------<wbr>---<br>
 src/util/virbitmap.c     |  14 +++----<br>
 src/util/virbitmap.h     |   2 +-<br>
 tests/qemuxml2xmltest.c  |   2 +-<br>
 tests/virbitmaptest.c    |  14 +++----<br>
 7 files changed, 147 insertions(+), 62 deletions(-)<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
2.12.2<br>
<br>
</font></span></blockquote></div><br></div>