<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<font size="+1">Hi,<br>
<br>
I've tested these patches again, twice, in similar setups like I
tested<br>
the first version (first in a Power8, then in a Power9 server).<br>
<br>
Same results, though. Libvirt will not avoid the launch of a
pseries guest,<br>
with numanode=strict, even if the numa node does not have
available<br>
RAM. If I stress test the memory of the guest to force the
allocation,<br>
QEMU exits with an error as soon as the memory of the host numa
node<br>
is exhausted. <br>
<br>
If I change the numanode setting to 'preferred' and repeats the
test, QEMU<br>
doesn't exit with an error - the process starts to take memory
from other<br>
numa nodes. This indicates that the numanode policy is apparently
being<br>
forced in the QEMU process - however, it is not forced in VM boot.<br>
<br>
I've debugged it a little and haven't found anything wrong that
jumps the<br>
eye. All functions that succeeds qemuSetupCpusetMems exits out
with<br>
ret = 0. Unfortunately, I don't have access to a x86 server with
more than<br>
one NUMA node to compare results.<br>
<br>
Since I can't say for sure if what I'm seeing is an exclusive
pseries<br>
behavior, I see no problem into pushing this series upstream<br>
if it makes sense for x86. We can debug/fix the Power side later.<br>
<br>
<br>
<br>
Thanks,<br>
<br>
<br>
DHB<br>
<br>
<br>
<br>
<br>
</font><br>
<div class="moz-cite-prefix">On 4/10/19 1:10 PM, Michal Privoznik
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:cover.1554912407.git.mprivozn@redhat.com">
<pre class="moz-quote-pre" wrap="">v2 of:
<a class="moz-txt-link-freetext" href="https://www.redhat.com/archives/libvir-list/2019-April/msg00658.html">https://www.redhat.com/archives/libvir-list/2019-April/msg00658.html</a>
diff to v1:
- Fixed the reported problem. Basically, even though emulator CGroup was
created qemu was not running in it. Now qemu is moved into the CGroup
even before exec()
Michal Prívozník (2):
qemuSetupCpusetMems: Use VIR_AUTOFREE()
qemu: Set up EMULATOR thread and cpuset.mems before exec()-ing qemu
src/qemu/qemu_cgroup.c | 5 ++---
src/qemu/qemu_process.c | 12 ++++++++----
2 files changed, 10 insertions(+), 7 deletions(-)
</pre>
</blockquote>
<br>
</body>
</html>