We should parse the output from splitting function, not the original string, otherwise the parsed result is wrong.
For example: vnuma = [ [...,"vdistance=10,20",...], [...,"vdistance=20,10",...] ] Before this change, vdistance from node 0 to all nodes (including itself) was 10 and vdistance from node 1 to all nodes was 20. After this change, vdistance from node 0 to itself is 10, to node 1 is 20 and vdistance from node 1 to node 0 is 20, to itself is 10. That's the correct vdistance settings we expect. Signed-off-by: Wei Liu <wei.l...@citrix.com> Reviewed-by: Dario Faggioli <dario.faggi...@citrix.com> --- v3: better commit message --- tools/libxl/xl_cmdimpl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c index c6b0b68..44fff82 100644 --- a/tools/libxl/xl_cmdimpl.c +++ b/tools/libxl/xl_cmdimpl.c @@ -1188,7 +1188,7 @@ static void parse_vnuma_config(const XLU_Config *config, len = libxl_string_list_length(&vdist); for (j = 0; j < len; j++) { - val = parse_ulong(value); + val = parse_ulong(vdist[j]); p->distances[j] = val; } libxl_string_list_dispose(&vdist); -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel