In response to a bug report where 'numactl --hardware' was segfaulting with distro 2.0.3 version I've dug into the current state of libnuma/numactl after not having looked at it in quite some time. The following series of patches resulted and hopefully clarifies things a bit for the next person who comes along and accounts for the possibility of sparsely numbered, memoryless and cpuless nodes in 'numactl --hardware'. There are certainly some things in the patches that aren't quite optimal and other things I saw that I didn't try to tackle (eg: there is a lot of seeming inconsistency around the different "all" node pointers), but the updated code works for me and I was trying to limit changes to not start driving in the direction of a v3 library (or hwloc?). The first 4 patches are relatively minor cleanups. The bulk is in patch 5 which then deals with better handling sparse node numbering and fixes parse_numbers() in particular which was experiencing a buffer overflow in the face of this topology: available: 2 nodes (0,3) node 0 cpus: none node 0 size: 0 MB node 0 free: 0 MB node 3 cpus: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 node 3 size: 15360 MB node 3 free: 12524 MB node distances: node 0 3 0: 10 40 3: 40 10 I've tested the changes on "interesting" topology hardware to which I have access, but would greatly appreciate if others might do similar. -- Tim Pepper <lnxninja@xxxxxxxxxxxxxxxxxx> IBM Linux Technology Center -- To unsubscribe from this list: send the line "unsubscribe linux-numa" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html