From: Michael S. Tsirkin Date: Wed, 13 Aug 2014 11:50:24 +0000 (+0200) Subject: hostmem: set MPOL_MF_MOVE X-Git-Tag: Tizen_Studio_1.3_Release_p2.3.2~209^2~614^2~23 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=288d3322022d6ad646407f3ca6f1a6a746565b9a;p=sdk%2Femulator%2Fqemu.git hostmem: set MPOL_MF_MOVE When memory is allocated on a wrong node, MPOL_MF_STRICT doesn't move it - it just fails the allocation. A simple way to reproduce the failure is with mlock=on realtime feature. The code comment actually says: "ensure policy won't be ignored" so setting MPOL_MF_MOVE seems like a better way to do this. Cc: qemu-stable@nongnu.org Signed-off-by: Michael S. Tsirkin --- diff --git a/backends/hostmem.c b/backends/hostmem.c index e7eec3756a..99e8f99da8 100644 --- a/backends/hostmem.c +++ b/backends/hostmem.c @@ -295,7 +295,7 @@ host_memory_backend_memory_complete(UserCreatable *uc, Error **errp) /* ensure policy won't be ignored in case memory is preallocated * before mbind(). note: MPOL_MF_STRICT is ignored on hugepages so * this doesn't catch hugepage case. */ - unsigned flags = MPOL_MF_STRICT; + unsigned flags = MPOL_MF_STRICT | MPOL_MF_MOVE; /* check for invalid host-nodes and policies and give more verbose * error messages than mbind(). */