qemu: fix live pinning to memory node on NUMA system
qemu: fix live pinning to memory node on NUMA system

6.5.z: https://bugzilla.redhat.com/show_bug.cgi?id=1112820
6.6: https://bugzilla.redhat.com/show_bug.cgi?id=857312

Ever since the subcpusets(vcpu,emulator) were introduced, the parent
cpuset cannot be modified to remove the nodes that are in use by the
subcpusets.
The fix is to break the memory node modification into three steps:
 1. assign new nodes into the parent,
 2. change the nodes in the child nodes,
 3. remove the old nodes on the parent node.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1009880

Signed-off-by: Shivaprasad G Bhat <sbhat@linux.vnet.ibm.com>
Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
(cherry picked from commit 81fae6b95cfe72d0f5a987b6b5cd4bf86e32798c)
Signed-off-by: Ján Tomko <jtomko@redhat.com>

Conflicts:
  src/qemu/qemu_driver.c: missing commits:

020a030 Stop accessing driver->caps directly in QEMU driver
632f78c Store a virCgroupPtr instance in qemuDomainObjPrivatePtr
04c18d2 Rename virCgroupForXXX to virCgroupNewXXX
106a2dd virBitmapParse: Fix behavior in case of error and fix up callers
b64dabf Report full errors from virCgroupNew*
0d7f45a Convert remainder of cgroups code to report errors

a71ec98 qemu: Fix the wrong expression (context)
Signed-off-by: Jiri Denemark <62bdf77dc47919a4d59a91822129d14633cfca81@redhat.com>

mithleshvrts/libvirt-0.10.2,mithleshvrts/libvirt-0.10.2,mithleshvrts/libvirt-0.10.2,mithleshvrts/libvirt-0.10.2,mithleshvrts/libvirt-0.10.2