<div dir="ltr">Hi Martin, <div><br></div><div>I see, the memory from the node specified in numatune is used correctly.</div><div>Wit your change memory-backend-file is used to enforce that </div><div><br></div><div>But, I see the migrations from old versions(my case, 1.2.5) seems to fail</div><div>as there was no backend-file before and only backend-ram. </div><div><br></div><div>Unknown ramblock "ppc_spapr.ram", cannot accept migration<br></div><div><div>2016-01-13T08:16:17.488267Z qemu-system-ppc64-hp: error while loading state for instance 0x0 of device 'ram'</div></div><div><br></div><div>Should we be using -mem-path /dev/hugepages/libvirt/qemu along with memory-backend-ram instead?<br></div><div><br></div><div>Thanks,</div><div>Shivaprasad </div><div>My guest :  <a href="https://paste.fedoraproject.org/310103/67350814/">https://paste.fedoraproject.org/310103/67350814/</a> </div><div>PS: I have some private changes in 1.2.5 but I believe that doesn't affect anything here. Please let me know if you cant hit it.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jan 12, 2016 at 11:28 PM, Martin Kletzander <span dir="ltr"><<a href="mailto:mkletzan@redhat.com" target="_blank">mkletzan@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Tue, Jan 12, 2016 at 06:48:02PM +0100, Martin Kletzander wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
We were missing a check for '!nodemask' in the condition that decides<br>
whether we need memory-object-file or not.  We only used userNodeset,<br>
but forgot that we might need to use nodemask even if that's not set.<br>
<br>
Even though there was a test for this, the args file was incorrect, so<br>
it is very nicely visible what this change does function-wise.  Even<br>
with that I added the same test but instead of auto nodeset I specified<br>
one in numatune/memory just to make sure it fixes the problem.<br>
<br>
Signed-off-by: Martin Kletzander <<a href="mailto:mkletzan@redhat.com" target="_blank">mkletzan@redhat.com</a>><br>
---<br>
src/qemu/qemu_command.c                            |  3 ++-<br>
.../qemuxml2argv-numatune-auto-prefer.args         |  4 ++-<br>
...emuxml2argv-numatune-hugepages-no-memnode.args} |  3 ++-<br>
.../qemuxml2argv-numatune-hugepages-no-memnode.xml | 29 ++++++++++++++++++++++<br>
tests/qemuxml2argvtest.c                           |  2 ++<br>
5 files changed, 38 insertions(+), 3 deletions(-)<br>
copy tests/qemuxml2argvdata/{qemuxml2argv-numatune-auto-prefer.args => qemuxml2argv-numatune-hugepages-no-memnode.args} (72%)<br>
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-numatune-hugepages-no-memnode.xml<br>
<br>
</blockquote>
<br></span>
I forgot to run 'git commit --amend' before 'git send-email', so this<br>
needs to be considered squashed in:<br>
<br>
diff --git c/src/qemu/qemu_command.c i/src/qemu/qemu_command.c<br>
index debaea491be8..55f19a27272c 100644<br>
--- c/src/qemu/qemu_command.c<br>
+++ i/src/qemu/qemu_command.c<br>
@@ -5238,8 +5238,7 @@ qemuBuildMemoryBackendStr(unsigned long long size,<span class=""><br>
    }<br>
<br>
    /* If none of the following is requested... */<br>
-    if (!pagesize && !userNodeset && !memAccess &&<br></span>
-        !nodeSpecified && !nodemask && !force) {<br>
+    if (!pagesize && !nodemask && !memAccess && !nodeSpecified && !force) {<span class=""><br>
        /* report back that using the new backend is not necessary<br>
         * to achieve the desired configuration */<br>
        ret = 1;<br></span>
--<br>
<br>
Basically I just used 'nodemask' instead of 'userNodeset'.  It works<br>
even without this diff because nodemask will always be set if<br>
userNodeset is set, it's just redundant to specify both.<span class="HOEnZb"><font color="#888888"><br>
<br>
Martin<br>
</font></span><br>--<br>
libvir-list mailing list<br>
<a href="mailto:libvir-list@redhat.com">libvir-list@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/libvir-list" rel="noreferrer" target="_blank">https://www.redhat.com/mailman/listinfo/libvir-list</a><br></blockquote></div><br></div>