[libvirt] [PATCHv3 0/4] Fix filling of nodeinfo structure and add test cases

For explanation why this is needed see 2/4. Patch 1/4 are test data split out from 1/3 of the previous version to ease reviewing of 2/4. Peter Krempa (4): nodeinfo_test: Enhance test data before changing nodeinfo gathering nodeinfo: Fix gathering of nodeinfo data structure test: Add new test case for nodeinfotest test: Add test case for nodeinfotest if host machine doesn't have NUMA src/nodeinfo.c | 311 +++++++++------- .../linux-nodeinfo-sysfs-test-2/node/node0/cpu0 | 1 + .../linux-nodeinfo-sysfs-test-2/node/node0/cpu1 | 1 + .../linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt | 2 +- .../linux-nodeinfo-sysfs-test-3/node/node0/cpu0 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu12 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu16 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu20 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu4 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu8 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu24 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu28 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu32 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu36 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu40 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu44 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu11 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu15 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu19 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu23 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu3 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu7 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu27 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu31 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu35 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu39 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu43 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu47 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu10 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu14 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu18 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu2 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu22 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu6 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu26 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu30 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu34 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu38 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu42 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu46 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu1 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu13 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu17 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu21 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu5 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu9 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu25 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu29 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu33 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu37 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu41 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu45 | 1 + .../linux-nodeinfo-sysfs-test-3/node/possible | Bin 4 -> 5 bytes .../linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt | 1 + .../linux-nodeinfo-sysfs-test-4-x86.cpuinfo | 400 ++++++++++++++++++++ .../cpu/cpu0/topology/core_id | 1 + .../cpu/cpu0/topology/physical_package_id | 1 + .../cpu/cpu0/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu1/online | 1 + .../cpu/cpu1/topology/core_id | 1 + .../cpu/cpu1/topology/physical_package_id | 1 + .../cpu/cpu1/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu10/online | 1 + .../cpu/cpu10/topology/core_id | 1 + .../cpu/cpu10/topology/physical_package_id | 1 + .../cpu/cpu10/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu11/online | 1 + .../cpu/cpu11/topology/core_id | 1 + .../cpu/cpu11/topology/physical_package_id | 1 + .../cpu/cpu11/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu12/online | 1 + .../cpu/cpu12/topology/core_id | 1 + .../cpu/cpu12/topology/physical_package_id | 1 + .../cpu/cpu12/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu13/online | 1 + .../cpu/cpu13/topology/core_id | 1 + .../cpu/cpu13/topology/physical_package_id | 1 + .../cpu/cpu13/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu14/online | 1 + .../cpu/cpu14/topology/core_id | 1 + .../cpu/cpu14/topology/physical_package_id | 1 + .../cpu/cpu14/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu15/online | 1 + .../cpu/cpu15/topology/core_id | 1 + .../cpu/cpu15/topology/physical_package_id | 1 + .../cpu/cpu15/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu2/online | 1 + .../cpu/cpu2/topology/core_id | 1 + .../cpu/cpu2/topology/physical_package_id | 1 + .../cpu/cpu2/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu3/online | 1 + .../cpu/cpu3/topology/core_id | 1 + .../cpu/cpu3/topology/physical_package_id | 1 + .../cpu/cpu3/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu4/online | 1 + .../cpu/cpu4/topology/core_id | 1 + .../cpu/cpu4/topology/physical_package_id | 1 + .../cpu/cpu4/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu5/online | 1 + .../cpu/cpu5/topology/core_id | 1 + .../cpu/cpu5/topology/physical_package_id | 1 + .../cpu/cpu5/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu6/online | 1 + .../cpu/cpu6/topology/core_id | 1 + .../cpu/cpu6/topology/physical_package_id | 1 + .../cpu/cpu6/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu7/online | 1 + .../cpu/cpu7/topology/core_id | 1 + .../cpu/cpu7/topology/physical_package_id | 1 + .../cpu/cpu7/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu8/online | 1 + .../cpu/cpu8/topology/core_id | 1 + .../cpu/cpu8/topology/physical_package_id | 1 + .../cpu/cpu8/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu9/online | 1 + .../cpu/cpu9/topology/core_id | 1 + .../cpu/cpu9/topology/physical_package_id | 1 + .../cpu/cpu9/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu0 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu1 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu2 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu3 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu4 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu5 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu6 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu7 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/meminfo | 29 ++ .../linux-nodeinfo-sysfs-test-4/node/node1/cpu10 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu11 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu12 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu13 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu14 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu15 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu8 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu9 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/meminfo | 29 ++ .../linux-nodeinfo-sysfs-test-4/node/possible | Bin 0 -> 5 bytes .../linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt | 1 + .../linux-nodeinfo-sysfs-test-5-x86.cpuinfo | 100 +++++ .../cpu/cpu0/topology/core_id | 1 + .../cpu/cpu0/topology/core_siblings | 1 + .../cpu/cpu0/topology/core_siblings_list | 1 + .../cpu/cpu0/topology/physical_package_id | 1 + .../cpu/cpu0/topology/thread_siblings | 1 + .../cpu/cpu0/topology/thread_siblings_list | 1 + .../linux-nodeinfo-sysfs-test-5/cpu/cpu1/online | 1 + .../cpu/cpu1/topology/core_id | 1 + .../cpu/cpu1/topology/core_siblings | 1 + .../cpu/cpu1/topology/core_siblings_list | 1 + .../cpu/cpu1/topology/physical_package_id | 1 + .../cpu/cpu1/topology/thread_siblings | 1 + .../cpu/cpu1/topology/thread_siblings_list | 1 + .../linux-nodeinfo-sysfs-test-5/cpu/cpu2/online | 1 + .../cpu/cpu2/topology/core_id | 1 + .../cpu/cpu2/topology/core_siblings | 1 + .../cpu/cpu2/topology/core_siblings_list | 1 + .../cpu/cpu2/topology/physical_package_id | 1 + .../cpu/cpu2/topology/thread_siblings | 1 + .../cpu/cpu2/topology/thread_siblings_list | 1 + .../linux-nodeinfo-sysfs-test-5/cpu/cpu3/online | 1 + .../cpu/cpu3/topology/core_id | 1 + .../cpu/cpu3/topology/core_siblings | 1 + .../cpu/cpu3/topology/core_siblings_list | 1 + .../cpu/cpu3/topology/physical_package_id | 1 + .../cpu/cpu3/topology/thread_siblings | 1 + .../cpu/cpu3/topology/thread_siblings_list | 1 + tests/nodeinfotest.c | 2 + 167 files changed, 903 insertions(+), 128 deletions(-) create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu0 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu1 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu0 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu12 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu16 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu20 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu4 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu8 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu24 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu28 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu32 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu36 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu40 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu44 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu11 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu15 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu19 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu23 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu3 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu7 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu27 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu31 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu35 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu39 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu43 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu47 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu10 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu14 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu18 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu2 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu22 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu6 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu26 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu30 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu34 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu38 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu42 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu46 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu1 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu13 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu17 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu21 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu5 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu9 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu25 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu29 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu33 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu37 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu41 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu45 create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-x86.cpuinfo create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/thread_siblings create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu0 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu1 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu2 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu3 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu4 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu5 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu6 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu7 create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/meminfo create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu10 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu11 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu12 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu13 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu14 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu15 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu8 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu9 create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/meminfo create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/possible create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-x86.cpuinfo create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings_list -- 1.7.8.6

This patch adds test data needed by the new way node information will be gathered. This patch adds symlinks to cpu cores to their corresponding node directory. --- .../linux-nodeinfo-sysfs-test-2/node/node0/cpu0 | 1 + .../linux-nodeinfo-sysfs-test-2/node/node0/cpu1 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu0 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu12 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu16 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu20 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu4 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu8 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu24 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu28 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu32 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu36 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu40 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu44 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu11 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu15 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu19 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu23 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu3 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu7 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu27 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu31 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu35 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu39 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu43 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu47 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu10 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu14 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu18 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu2 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu22 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu6 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu26 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu30 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu34 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu38 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu42 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu46 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu1 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu13 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu17 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu21 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu5 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu9 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu25 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu29 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu33 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu37 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu41 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu45 | 1 + .../linux-nodeinfo-sysfs-test-3/node/possible | Bin 4 -> 5 bytes 51 files changed, 50 insertions(+), 0 deletions(-) create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu0 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu1 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu0 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu12 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu16 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu20 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu4 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu8 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu24 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu28 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu32 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu36 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu40 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu44 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu11 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu15 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu19 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu23 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu3 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu7 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu27 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu31 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu35 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu39 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu43 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu47 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu10 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu14 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu18 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu2 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu22 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu6 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu26 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu30 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu34 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu38 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu42 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu46 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu1 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu13 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu17 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu21 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu5 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu9 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu25 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu29 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu33 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu37 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu41 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu45 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu0 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu0 new file mode 120000 index 0000000..c841bea --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu0 @@ -0,0 +1 @@ +../../cpu/cpu0 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu1 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu1 new file mode 120000 index 0000000..5f45362 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu1 @@ -0,0 +1 @@ +../../cpu/cpu1 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu0 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu0 new file mode 120000 index 0000000..c841bea --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu0 @@ -0,0 +1 @@ +../../cpu/cpu0 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu12 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu12 new file mode 120000 index 0000000..211519e --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu12 @@ -0,0 +1 @@ +../../cpu/cpu12 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu16 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu16 new file mode 120000 index 0000000..445de40 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu16 @@ -0,0 +1 @@ +../../cpu/cpu16 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu20 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu20 new file mode 120000 index 0000000..a37c370 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu20 @@ -0,0 +1 @@ +../../cpu/cpu20 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu4 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu4 new file mode 120000 index 0000000..9e77a64 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu4 @@ -0,0 +1 @@ +../../cpu/cpu4 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu8 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu8 new file mode 120000 index 0000000..bda10cc --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu8 @@ -0,0 +1 @@ +../../cpu/cpu8 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu24 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu24 new file mode 120000 index 0000000..ad0a618 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu24 @@ -0,0 +1 @@ +../../cpu/cpu24 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu28 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu28 new file mode 120000 index 0000000..83269be --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu28 @@ -0,0 +1 @@ +../../cpu/cpu28 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu32 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu32 new file mode 120000 index 0000000..bbca866 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu32 @@ -0,0 +1 @@ +../../cpu/cpu32 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu36 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu36 new file mode 120000 index 0000000..5e53f70 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu36 @@ -0,0 +1 @@ +../../cpu/cpu36 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu40 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu40 new file mode 120000 index 0000000..c727d46 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu40 @@ -0,0 +1 @@ +../../cpu/cpu40 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu44 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu44 new file mode 120000 index 0000000..859e4fc --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu44 @@ -0,0 +1 @@ +../../cpu/cpu44 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu11 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu11 new file mode 120000 index 0000000..e29d898 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu11 @@ -0,0 +1 @@ +../../cpu/cpu11 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu15 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu15 new file mode 120000 index 0000000..e905d85 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu15 @@ -0,0 +1 @@ +../../cpu/cpu15 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu19 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu19 new file mode 120000 index 0000000..c671083 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu19 @@ -0,0 +1 @@ +../../cpu/cpu19 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu23 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu23 new file mode 120000 index 0000000..75c2f57 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu23 @@ -0,0 +1 @@ +../../cpu/cpu23 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu3 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu3 new file mode 120000 index 0000000..c7690e5 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu3 @@ -0,0 +1 @@ +../../cpu/cpu3 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu7 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu7 new file mode 120000 index 0000000..09e3f79 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu7 @@ -0,0 +1 @@ +../../cpu/cpu7 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu27 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu27 new file mode 120000 index 0000000..74ced19 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu27 @@ -0,0 +1 @@ +../../cpu/cpu27 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu31 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu31 new file mode 120000 index 0000000..6a9a569 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu31 @@ -0,0 +1 @@ +../../cpu/cpu31 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu35 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu35 new file mode 120000 index 0000000..47654d6 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu35 @@ -0,0 +1 @@ +../../cpu/cpu35 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu39 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu39 new file mode 120000 index 0000000..d465480 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu39 @@ -0,0 +1 @@ +../../cpu/cpu39 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu43 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu43 new file mode 120000 index 0000000..03b2d2d --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu43 @@ -0,0 +1 @@ +../../cpu/cpu43 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu47 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu47 new file mode 120000 index 0000000..19407d4 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu47 @@ -0,0 +1 @@ +../../cpu/cpu47 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu10 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu10 new file mode 120000 index 0000000..a6dc6bb --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu10 @@ -0,0 +1 @@ +../../cpu/cpu10 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu14 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu14 new file mode 120000 index 0000000..24cb3b4 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu14 @@ -0,0 +1 @@ +../../cpu/cpu14 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu18 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu18 new file mode 120000 index 0000000..3809adc --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu18 @@ -0,0 +1 @@ +../../cpu/cpu18 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu2 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu2 new file mode 120000 index 0000000..2dcca33 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu2 @@ -0,0 +1 @@ +../../cpu/cpu2 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu22 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu22 new file mode 120000 index 0000000..2c226ae --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu22 @@ -0,0 +1 @@ +../../cpu/cpu22 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu6 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu6 new file mode 120000 index 0000000..2e75763 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu6 @@ -0,0 +1 @@ +../../cpu/cpu6 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu26 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu26 new file mode 120000 index 0000000..1dd180f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu26 @@ -0,0 +1 @@ +../../cpu/cpu26 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu30 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu30 new file mode 120000 index 0000000..80226fa --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu30 @@ -0,0 +1 @@ +../../cpu/cpu30 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu34 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu34 new file mode 120000 index 0000000..0c0e738 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu34 @@ -0,0 +1 @@ +../../cpu/cpu34 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu38 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu38 new file mode 120000 index 0000000..7231eb4 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu38 @@ -0,0 +1 @@ +../../cpu/cpu38 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu42 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu42 new file mode 120000 index 0000000..8ebd18e --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu42 @@ -0,0 +1 @@ +../../cpu/cpu42 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu46 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu46 new file mode 120000 index 0000000..55223e0 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu46 @@ -0,0 +1 @@ +../../cpu/cpu46 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu1 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu1 new file mode 120000 index 0000000..5f45362 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu1 @@ -0,0 +1 @@ +../../cpu/cpu1 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu13 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu13 new file mode 120000 index 0000000..52d3b69 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu13 @@ -0,0 +1 @@ +../../cpu/cpu13 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu17 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu17 new file mode 120000 index 0000000..13929db --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu17 @@ -0,0 +1 @@ +../../cpu/cpu17 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu21 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu21 new file mode 120000 index 0000000..68a7cad --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu21 @@ -0,0 +1 @@ +../../cpu/cpu21 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu5 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu5 new file mode 120000 index 0000000..cc07c3b --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu5 @@ -0,0 +1 @@ +../../cpu/cpu5 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu9 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu9 new file mode 120000 index 0000000..1ec1db2 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu9 @@ -0,0 +1 @@ +../../cpu/cpu9 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu25 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu25 new file mode 120000 index 0000000..3145742 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu25 @@ -0,0 +1 @@ +../../cpu/cpu25 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu29 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu29 new file mode 120000 index 0000000..fa37dc6 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu29 @@ -0,0 +1 @@ +../../cpu/cpu29 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu33 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu33 new file mode 120000 index 0000000..b7a9f8d --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu33 @@ -0,0 +1 @@ +../../cpu/cpu33 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu37 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu37 new file mode 120000 index 0000000..41b4ce7 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu37 @@ -0,0 +1 @@ +../../cpu/cpu37 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu41 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu41 new file mode 120000 index 0000000..cc0b78c --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu41 @@ -0,0 +1 @@ +../../cpu/cpu41 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu45 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu45 new file mode 120000 index 0000000..58c3ca3 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu45 @@ -0,0 +1 @@ +../../cpu/cpu45 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/possible b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/possible index 74fc2fb6b048c39d90b0c17de3824095162634f8..21408fdea85537c7277785de368c5cef105e30ed 100644 GIT binary patch literal 5 McmXreHRoag00LqFp8x;= literal 4 LcmXreHRl2V0mA^F -- 1.7.8.6

On 09.07.2012 17:17, Peter Krempa wrote:
This patch adds test data needed by the new way node information will be gathered. This patch adds symlinks to cpu cores to their corresponding node directory. --- .../linux-nodeinfo-sysfs-test-2/node/node0/cpu0 | 1 + .../linux-nodeinfo-sysfs-test-2/node/node0/cpu1 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu0 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu12 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu16 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu20 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu4 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node0/cpu8 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu24 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu28 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu32 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu36 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu40 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node1/cpu44 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu11 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu15 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu19 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu23 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu3 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node2/cpu7 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu27 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu31 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu35 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu39 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu43 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node3/cpu47 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu10 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu14 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu18 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu2 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu22 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node4/cpu6 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu26 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu30 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu34 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu38 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu42 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node5/cpu46 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu1 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu13 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu17 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu21 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu5 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node6/cpu9 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu25 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu29 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu33 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu37 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu41 | 1 + .../linux-nodeinfo-sysfs-test-3/node/node7/cpu45 | 1 + .../linux-nodeinfo-sysfs-test-3/node/possible | Bin 4 -> 5 bytes 51 files changed, 50 insertions(+), 0 deletions(-) create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu0 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-2/node/node0/cpu1 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu0 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu12 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu16 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu20 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu4 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node0/cpu8 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu24 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu28 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu32 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu36 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu40 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node1/cpu44 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu11 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu15 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu19 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu23 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu3 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node2/cpu7 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu27 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu31 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu35 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu39 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu43 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node3/cpu47 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu10 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu14 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu18 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu2 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu22 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node4/cpu6 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu26 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu30 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu34 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu38 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu42 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node5/cpu46 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu1 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu13 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu17 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu21 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu5 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node6/cpu9 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu25 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu29 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu33 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu37 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu41 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-3/node/node7/cpu45
Okay, you got me. It took me a while to realize you are adding just bunch of symlinks. ACK Michal

This patch changes the way data to fill the nodeinfo structure are gathered. We've gathere the test data by iterating processors an sockets separately from nodes. The reported data was based solely on information about core id. Problems arise when eg cores in mulit-processor machines don't have same id's on both processors or maybe one physical processor contains more NUMA nodes. This patch changes the approach how we detect processors and nodes. Now we start at enumerating nodes and for each node processors, sockets and threads are enumerated separately. This approach provides acurate data that comply to docs about the nodeinfo structure. This also enables to get rid of hacks: see commits 10d9038b744a69c8d4bd29c2e8c012a097481586, ac9dd4a676f21b5e3ca6dbe0526f2a6709072beb. (Those changes in nodeinfo.c are efectively reverted by this patch). This patch also changes output of one of the tests, as the processor topology is now acquired more precisely. --- src/nodeinfo.c | 311 ++++++++++++-------- .../linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt | 2 +- 2 files changed, 185 insertions(+), 128 deletions(-) diff --git a/src/nodeinfo.c b/src/nodeinfo.c index 819f954..ae713da 100644 --- a/src/nodeinfo.c +++ b/src/nodeinfo.c @@ -188,38 +188,131 @@ virNodeParseSocket(const char *dir, unsigned int cpu) return ret; } +/* parses a node entry, returning number of processors in the node and + * filling arguments */ static int -virNodeParseNode(const char *sysfs_dir) +virNodeParseNode(const char *node, int *sockets, int *cores, int *threads) { - char *file = NULL; - char *possible = NULL; - char *tmp; int ret = -1; + int processors = 0; + DIR *cpudir = NULL; + struct dirent *cpudirent = NULL; + int sock_max = 0; + cpu_set_t sock_map; + int sock; + cpu_set_t *core_maps = NULL; + int core; + int i; + int siblings; + unsigned int cpu; + int online; - if (virAsprintf(&file, "%s/node/possible", sysfs_dir) < 0) { - virReportOOMError(); + *threads = 0; + *cores = 0; + *sockets = 0; + + if (!(cpudir = opendir(node))) { + virReportSystemError(errno, _("cannot opendir %s"), node); goto cleanup; } - /* Assume that a missing node/possible file implies no NUMA - * support, and hence all cpus belong to the same node. */ - if (!virFileExists(file)) { - ret = 1; + + /* enumerate sockets in the node */ + CPU_ZERO(&sock_map); + while ((cpudirent = readdir(cpudir))) { + if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1) + continue; + + /* Parse socket */ + sock = virNodeParseSocket(node, cpu); + CPU_SET(sock, &sock_map); + + if (sock > sock_max) + sock_max = sock; + } + + if (errno) { + virReportSystemError(errno, _("problem reading %s"), node); goto cleanup; } - if (virFileReadAll(file, 1024, &possible) < 0) + + sock_max++; + + /* allocate cpu maps for each socket */ + if (VIR_ALLOC_N(core_maps, sock_max) < 0) { + virReportOOMError(); goto cleanup; - if (virStrToLong_i(possible, &tmp, 10, &ret) < 0 || - (*tmp == '-' && virStrToLong_i(tmp+1, &tmp, 10, &ret) < 0) || - *tmp != '\n') { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - _("failed to parse possible nodes '%s'"), possible); + } + + for (i = 0; i < sock_max; i++) + CPU_ZERO(&core_maps[i]); + + /* iterate over all CPU's in the node */ + rewinddir(cpudir); + while ((cpudirent = readdir(cpudir))) { + if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1) + continue; + + if ((online = virNodeGetCpuValue(node, cpu, "online", true)) < 0) + goto cleanup; + + if (!online) + continue; + + processors++; + + /* Parse socket */ + sock = virNodeParseSocket(node, cpu); + if (!CPU_ISSET(sock, &sock_map)) { + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("CPU socket topology has changed")); + goto cleanup; + } + + /* Parse core */ +# if defined(__s390__) || \ + defined(__s390x__) + /* logical cpu is equivalent to a core on s390 */ + core = cpu; +# else + core = virNodeGetCpuValue(node, cpu, "topology/core_id", false); +# endif + + CPU_SET(core, &core_maps[sock]); + + if (!(siblings = virNodeCountThreadSiblings(node, cpu))) + goto cleanup; + + if (siblings > *threads) + *threads = siblings; + } + + if (errno) { + virReportSystemError(errno, _("problem reading %s"), node); goto cleanup; } - ret++; + + /* finalize the returned data */ + *sockets = CPU_COUNT(&sock_map); + + for (i = 0; i < sock_max; i++) { + if (!CPU_ISSET(i, &sock_map)) + continue; + + core = CPU_COUNT(&core_maps[i]); + if (core > *cores) + *cores = core; + } + + ret = processors; cleanup: - VIR_FREE(file); - VIR_FREE(possible); + /* don't shadow a more serious error */ + if (cpudir && closedir(cpudir) < 0 && ret >= 0) { + virReportSystemError(errno, _("problem closing %s"), node); + ret = -1; + } + VIR_FREE(core_maps); + return ret; } @@ -228,20 +321,18 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, virNodeInfoPtr nodeinfo) { char line[1024]; - DIR *cpudir = NULL; - struct dirent *cpudirent = NULL; - unsigned int cpu; - unsigned long core, sock, cur_threads; - cpu_set_t core_mask; - cpu_set_t socket_mask; - int online; + DIR *nodedir = NULL; + struct dirent *nodedirent = NULL; + int cpus, cores, socks, threads; + unsigned int node; int ret = -1; + char *sysfs_nodedir = NULL; char *sysfs_cpudir = NULL; - unsigned int cpu_cores = 0; nodeinfo->cpus = 0; nodeinfo->mhz = 0; nodeinfo->cores = 0; + nodeinfo->nodes = 0; /* Start with parsing /proc/cpuinfo; although it tends to have * fewer details. Hyperthreads are ignored at this stage. */ @@ -254,40 +345,22 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, char *p; unsigned int ui; - buf += 9; + buf += 7; while (*buf && c_isspace(*buf)) buf++; if (*buf != ':' || !buf[1]) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("parsing cpu MHz from cpuinfo")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("parsing cpu MHz from cpuinfo")); goto cleanup; } - if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 + if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 && /* Accept trailing fractional part. */ - && (*p == '\0' || *p == '.' || c_isspace(*p))) + (*p == '\0' || *p == '.' || c_isspace(*p))) nodeinfo->mhz = ui; } - if (STRPREFIX(buf, "cpu cores")) { - char *p; - unsigned int ui; - - buf += 9; - while (*buf && c_isspace(*buf)) - buf++; - - if (*buf != ':' || !buf[1]) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("parsing cpu cores from cpuinfo")); - return -1; - } - - if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 - && (*p == '\0' || c_isspace(*p))) - cpu_cores = ui; - } # elif defined(__powerpc__) || \ defined(__powerpc64__) char *buf = line; @@ -300,14 +373,14 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, buf++; if (*buf != ':' || !buf[1]) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("parsing cpu MHz from cpuinfo")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("parsing cpu MHz from cpuinfo")); goto cleanup; } - if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 + if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 && /* Accept trailing fractional part. */ - && (*p == '\0' || *p == '.' || c_isspace(*p))) + (*p == '\0' || *p == '.' || c_isspace(*p))) nodeinfo->mhz = ui; /* No other interesting infos are available in /proc/cpuinfo. * However, there is a line identifying processor's version, @@ -328,115 +401,99 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, /* OK, we've parsed clock speed out of /proc/cpuinfo. Get the * core, node, socket, thread and topology information from /sys */ - if (virAsprintf(&sysfs_cpudir, "%s/cpu", sysfs_dir) < 0) { + if (virAsprintf(&sysfs_nodedir, "%s/node", sysfs_dir) < 0) { virReportOOMError(); goto cleanup; } - cpudir = opendir(sysfs_cpudir); - if (cpudir == NULL) { - virReportSystemError(errno, _("cannot opendir %s"), sysfs_cpudir); - goto cleanup; + + if (!(nodedir = opendir(sysfs_nodedir))) { + /* the host isn't probably running a NUMA architecture */ + goto fallback; } - CPU_ZERO(&core_mask); - CPU_ZERO(&socket_mask); - while ((cpudirent = readdir(cpudir))) { - if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1) + while ((nodedirent = readdir(nodedir))) { + if (sscanf(nodedirent->d_name, "node%u", &node) != 1) continue; - online = virNodeGetCpuValue(sysfs_cpudir, cpu, "online", true); - if (online < 0) { - closedir(cpudir); + nodeinfo->nodes++; + + if (virAsprintf(&sysfs_cpudir, "%s/node/%s", + sysfs_dir, nodedirent->d_name) < 0) { + virReportOOMError(); goto cleanup; } - if (!online) - continue; - nodeinfo->cpus++; - /* Parse core */ -# if defined(__s390__) || \ - defined(__s390x__) - /* logical cpu is equivalent to a core on s390 */ - core = cpu; -# else - core = virNodeGetCpuValue(sysfs_cpudir, cpu, "topology/core_id", false); -# endif - if (!CPU_ISSET(core, &core_mask)) { - CPU_SET(core, &core_mask); - nodeinfo->cores++; - } + if ((cpus = virNodeParseNode(sysfs_cpudir, &socks, + &cores, &threads)) < 0) + goto cleanup; - /* Parse socket */ - sock = virNodeParseSocket(sysfs_cpudir, cpu); - if (!CPU_ISSET(sock, &socket_mask)) { - CPU_SET(sock, &socket_mask); - nodeinfo->sockets++; - } + VIR_FREE(sysfs_cpudir); - cur_threads = virNodeCountThreadSiblings(sysfs_cpudir, cpu); - if (cur_threads == 0) { - closedir(cpudir); - goto cleanup; - } - if (cur_threads > nodeinfo->threads) - nodeinfo->threads = cur_threads; + nodeinfo->cpus += cpus; + + if (socks > nodeinfo->sockets) + nodeinfo->sockets = socks; + + if (cores > nodeinfo->cores) + nodeinfo->cores = cores; + + if (threads > nodeinfo->threads) + nodeinfo->threads = threads; } + if (errno) { - virReportSystemError(errno, - _("problem reading %s"), sysfs_cpudir); - closedir(cpudir); + virReportSystemError(errno, _("problem reading %s"), sysfs_nodedir); goto cleanup; } - if (closedir(cpudir) < 0) { - virReportSystemError(errno, - _("problem closing %s"), sysfs_cpudir); + + if (nodeinfo->cpus && nodeinfo->nodes) + goto done; + +fallback: + VIR_FREE(sysfs_cpudir); + + if (virAsprintf(&sysfs_cpudir, "%s/cpu", sysfs_dir) < 0) { + virReportOOMError(); goto cleanup; } - if ((nodeinfo->nodes = virNodeParseNode(sysfs_dir)) <= 0) + if ((cpus = virNodeParseNode(sysfs_cpudir, &socks, &cores, &threads)) < 0) goto cleanup; + nodeinfo->nodes = 1; + nodeinfo->cpus = cpus; + nodeinfo->sockets = socks; + nodeinfo->cores = cores; + nodeinfo->threads = threads; + +done: /* There should always be at least one cpu, socket, node, and thread. */ if (nodeinfo->cpus == 0) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("no CPUs found")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("no CPUs found")); goto cleanup; } + if (nodeinfo->sockets == 0) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("no sockets found")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("no sockets found")); goto cleanup; } + if (nodeinfo->threads == 0) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("no threads found")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("no threads found")); goto cleanup; } - /* Platform like AMD Magny Cours has two NUMA nodes each package, and - * the two nodes share the same core ID set, it results in the cores - * number calculated from sysfs is not the actual cores number. Use - * "cpu cores" in /proc/cpuinfo as the cores number instead in this case. - * More details about the problem: - * https://www.redhat.com/archives/libvir-list/2012-May/msg00607.html - */ - if (cpu_cores && (cpu_cores > nodeinfo->cores)) - nodeinfo->cores = cpu_cores; - - /* nodeinfo->sockets is supposed to be a number of sockets per NUMA node, - * however if NUMA nodes are not composed of whole sockets, we just lie - * about the number of NUMA nodes and force apps to check capabilities XML - * for the actual NUMA topology. - */ - if (nodeinfo->sockets % nodeinfo->nodes == 0) - nodeinfo->sockets /= nodeinfo->nodes; - else - nodeinfo->nodes = 1; - ret = 0; cleanup: + /* don't shadow a more serious error */ + if (nodedir && closedir(nodedir) < 0 && ret >= 0) { + virReportSystemError(errno, _("problem closing %s"), sysfs_nodedir); + ret = -1; + } + + VIR_FREE(sysfs_nodedir); VIR_FREE(sysfs_cpudir); return ret; } diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt index 333187e..0306f86 100644 --- a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt @@ -1 +1 @@ -CPUs: 48/48, MHz: 2100, Nodes: 1, Sockets: 4, Cores: 12, Threads: 1 +CPUs: 48/48, MHz: 2100, Nodes: 8, Sockets: 1, Cores: 6, Threads: 1 -- 1.7.8.6

On 09.07.2012 17:17, Peter Krempa wrote:
This patch changes the way data to fill the nodeinfo structure are gathered. We've gathere the test data by iterating processors an sockets separately from nodes. The reported data was based solely on information about core id. Problems arise when eg cores in mulit-processor machines don't have same id's on both processors or maybe one physical processor contains more NUMA nodes.
This patch changes the approach how we detect processors and nodes. Now we start at enumerating nodes and for each node processors, sockets and threads are enumerated separately. This approach provides acurate data that comply to docs about the nodeinfo structure. This also enables to get rid of hacks: see commits 10d9038b744a69c8d4bd29c2e8c012a097481586, ac9dd4a676f21b5e3ca6dbe0526f2a6709072beb. (Those changes in nodeinfo.c are efectively reverted by this patch).
This patch also changes output of one of the tests, as the processor topology is now acquired more precisely. --- src/nodeinfo.c | 311 ++++++++++++-------- .../linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt | 2 +- 2 files changed, 185 insertions(+), 128 deletions(-)
diff --git a/src/nodeinfo.c b/src/nodeinfo.c index 819f954..ae713da 100644 --- a/src/nodeinfo.c +++ b/src/nodeinfo.c @@ -188,38 +188,131 @@ virNodeParseSocket(const char *dir, unsigned int cpu) return ret; }
+/* parses a node entry, returning number of processors in the node and + * filling arguments */ static int -virNodeParseNode(const char *sysfs_dir) +virNodeParseNode(const char *node, int *sockets, int *cores, int *threads)
I'd mark these as ATTRIBUTE_NONNULL esp when ...
{ - char *file = NULL; - char *possible = NULL; - char *tmp; int ret = -1; + int processors = 0; + DIR *cpudir = NULL; + struct dirent *cpudirent = NULL; + int sock_max = 0; + cpu_set_t sock_map; + int sock; + cpu_set_t *core_maps = NULL; + int core; + int i; + int siblings; + unsigned int cpu; + int online;
- if (virAsprintf(&file, "%s/node/possible", sysfs_dir) < 0) { - virReportOOMError(); + *threads = 0; + *cores = 0; + *sockets = 0;
... doing this.
+ + if (!(cpudir = opendir(node))) { + virReportSystemError(errno, _("cannot opendir %s"), node); goto cleanup; } - /* Assume that a missing node/possible file implies no NUMA - * support, and hence all cpus belong to the same node. */ - if (!virFileExists(file)) { - ret = 1; + + /* enumerate sockets in the node */ + CPU_ZERO(&sock_map); + while ((cpudirent = readdir(cpudir))) {
I guess we want reentrant version of readdir here, don't we?
+ if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1) + continue; + + /* Parse socket */ + sock = virNodeParseSocket(node, cpu); + CPU_SET(sock, &sock_map); + + if (sock > sock_max) + sock_max = sock; + } + + if (errno) {
You should have reset errno before while() loop.
+ virReportSystemError(errno, _("problem reading %s"), node); goto cleanup; } - if (virFileReadAll(file, 1024, &possible) < 0) + + sock_max++; + + /* allocate cpu maps for each socket */ + if (VIR_ALLOC_N(core_maps, sock_max) < 0) { + virReportOOMError(); goto cleanup; - if (virStrToLong_i(possible, &tmp, 10, &ret) < 0 || - (*tmp == '-' && virStrToLong_i(tmp+1, &tmp, 10, &ret) < 0) || - *tmp != '\n') { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - _("failed to parse possible nodes '%s'"), possible); + } + + for (i = 0; i < sock_max; i++) + CPU_ZERO(&core_maps[i]); + + /* iterate over all CPU's in the node */ + rewinddir(cpudir); + while ((cpudirent = readdir(cpudir))) {
Again, s/readdir/readdir_r/
+ if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1) + continue; + + if ((online = virNodeGetCpuValue(node, cpu, "online", true)) < 0) + goto cleanup; + + if (!online) + continue; + + processors++; + + /* Parse socket */ + sock = virNodeParseSocket(node, cpu); + if (!CPU_ISSET(sock, &sock_map)) { + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("CPU socket topology has changed")); + goto cleanup; + } + + /* Parse core */ +# if defined(__s390__) || \ + defined(__s390x__) + /* logical cpu is equivalent to a core on s390 */
Bad indentation.
+ core = cpu; +# else + core = virNodeGetCpuValue(node, cpu, "topology/core_id", false); +# endif + + CPU_SET(core, &core_maps[sock]); + + if (!(siblings = virNodeCountThreadSiblings(node, cpu))) + goto cleanup; + + if (siblings > *threads) + *threads = siblings; + } + + if (errno) { + virReportSystemError(errno, _("problem reading %s"), node); goto cleanup; } - ret++; + + /* finalize the returned data */ + *sockets = CPU_COUNT(&sock_map); + + for (i = 0; i < sock_max; i++) { + if (!CPU_ISSET(i, &sock_map)) + continue; + + core = CPU_COUNT(&core_maps[i]); + if (core > *cores) + *cores = core; + } + + ret = processors;
cleanup: - VIR_FREE(file); - VIR_FREE(possible); + /* don't shadow a more serious error */ + if (cpudir && closedir(cpudir) < 0 && ret >= 0) { + virReportSystemError(errno, _("problem closing %s"), node); + ret = -1; + } + VIR_FREE(core_maps); + return ret; }
@@ -228,20 +321,18 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, virNodeInfoPtr nodeinfo) { char line[1024]; - DIR *cpudir = NULL; - struct dirent *cpudirent = NULL; - unsigned int cpu; - unsigned long core, sock, cur_threads; - cpu_set_t core_mask; - cpu_set_t socket_mask; - int online; + DIR *nodedir = NULL; + struct dirent *nodedirent = NULL; + int cpus, cores, socks, threads; + unsigned int node; int ret = -1; + char *sysfs_nodedir = NULL; char *sysfs_cpudir = NULL; - unsigned int cpu_cores = 0;
nodeinfo->cpus = 0; nodeinfo->mhz = 0; nodeinfo->cores = 0; + nodeinfo->nodes = 0;
/* Start with parsing /proc/cpuinfo; although it tends to have * fewer details. Hyperthreads are ignored at this stage. */ @@ -254,40 +345,22 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, char *p; unsigned int ui;
- buf += 9; + buf += 7; while (*buf && c_isspace(*buf)) buf++;
if (*buf != ':' || !buf[1]) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("parsing cpu MHz from cpuinfo")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("parsing cpu MHz from cpuinfo")); goto cleanup; }
- if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 + if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 && /* Accept trailing fractional part. */ - && (*p == '\0' || *p == '.' || c_isspace(*p))) + (*p == '\0' || *p == '.' || c_isspace(*p))) nodeinfo->mhz = ui; }
- if (STRPREFIX(buf, "cpu cores")) { - char *p; - unsigned int ui; - - buf += 9; - while (*buf && c_isspace(*buf)) - buf++; - - if (*buf != ':' || !buf[1]) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("parsing cpu cores from cpuinfo")); - return -1; - } - - if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 - && (*p == '\0' || c_isspace(*p))) - cpu_cores = ui; - } # elif defined(__powerpc__) || \ defined(__powerpc64__) char *buf = line; @@ -300,14 +373,14 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, buf++;
if (*buf != ':' || !buf[1]) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("parsing cpu MHz from cpuinfo")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("parsing cpu MHz from cpuinfo")); goto cleanup; }
- if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 + if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 && /* Accept trailing fractional part. */ - && (*p == '\0' || *p == '.' || c_isspace(*p))) + (*p == '\0' || *p == '.' || c_isspace(*p))) nodeinfo->mhz = ui; /* No other interesting infos are available in /proc/cpuinfo. * However, there is a line identifying processor's version, @@ -328,115 +401,99 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, /* OK, we've parsed clock speed out of /proc/cpuinfo. Get the * core, node, socket, thread and topology information from /sys */ - if (virAsprintf(&sysfs_cpudir, "%s/cpu", sysfs_dir) < 0) { + if (virAsprintf(&sysfs_nodedir, "%s/node", sysfs_dir) < 0) { virReportOOMError(); goto cleanup; } - cpudir = opendir(sysfs_cpudir); - if (cpudir == NULL) { - virReportSystemError(errno, _("cannot opendir %s"), sysfs_cpudir); - goto cleanup; + + if (!(nodedir = opendir(sysfs_nodedir))) { + /* the host isn't probably running a NUMA architecture */ + goto fallback; }
- CPU_ZERO(&core_mask); - CPU_ZERO(&socket_mask);
- while ((cpudirent = readdir(cpudir))) { - if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1) + while ((nodedirent = readdir(nodedir))) { + if (sscanf(nodedirent->d_name, "node%u", &node) != 1) continue;
- online = virNodeGetCpuValue(sysfs_cpudir, cpu, "online", true); - if (online < 0) { - closedir(cpudir); + nodeinfo->nodes++; + + if (virAsprintf(&sysfs_cpudir, "%s/node/%s", + sysfs_dir, nodedirent->d_name) < 0) { + virReportOOMError(); goto cleanup; } - if (!online) - continue; - nodeinfo->cpus++;
- /* Parse core */ -# if defined(__s390__) || \ - defined(__s390x__) - /* logical cpu is equivalent to a core on s390 */ - core = cpu; -# else - core = virNodeGetCpuValue(sysfs_cpudir, cpu, "topology/core_id", false); -# endif - if (!CPU_ISSET(core, &core_mask)) { - CPU_SET(core, &core_mask); - nodeinfo->cores++; - } + if ((cpus = virNodeParseNode(sysfs_cpudir, &socks, + &cores, &threads)) < 0) + goto cleanup;
- /* Parse socket */ - sock = virNodeParseSocket(sysfs_cpudir, cpu); - if (!CPU_ISSET(sock, &socket_mask)) { - CPU_SET(sock, &socket_mask); - nodeinfo->sockets++; - } + VIR_FREE(sysfs_cpudir);
- cur_threads = virNodeCountThreadSiblings(sysfs_cpudir, cpu); - if (cur_threads == 0) { - closedir(cpudir); - goto cleanup; - } - if (cur_threads > nodeinfo->threads) - nodeinfo->threads = cur_threads; + nodeinfo->cpus += cpus; + + if (socks > nodeinfo->sockets) + nodeinfo->sockets = socks; + + if (cores > nodeinfo->cores) + nodeinfo->cores = cores; + + if (threads > nodeinfo->threads) + nodeinfo->threads = threads; } + if (errno) { - virReportSystemError(errno, - _("problem reading %s"), sysfs_cpudir); - closedir(cpudir); + virReportSystemError(errno, _("problem reading %s"), sysfs_nodedir); goto cleanup; } - if (closedir(cpudir) < 0) { - virReportSystemError(errno, - _("problem closing %s"), sysfs_cpudir); + + if (nodeinfo->cpus && nodeinfo->nodes) + goto done; + +fallback: + VIR_FREE(sysfs_cpudir); + + if (virAsprintf(&sysfs_cpudir, "%s/cpu", sysfs_dir) < 0) { + virReportOOMError(); goto cleanup; }
- if ((nodeinfo->nodes = virNodeParseNode(sysfs_dir)) <= 0) + if ((cpus = virNodeParseNode(sysfs_cpudir, &socks, &cores, &threads)) < 0) goto cleanup;
+ nodeinfo->nodes = 1; + nodeinfo->cpus = cpus; + nodeinfo->sockets = socks; + nodeinfo->cores = cores; + nodeinfo->threads = threads; + +done: /* There should always be at least one cpu, socket, node, and thread. */ if (nodeinfo->cpus == 0) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("no CPUs found")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("no CPUs found")); goto cleanup; } + if (nodeinfo->sockets == 0) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("no sockets found")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("no sockets found")); goto cleanup; } + if (nodeinfo->threads == 0) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("no threads found")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("no threads found")); goto cleanup; }
- /* Platform like AMD Magny Cours has two NUMA nodes each package, and - * the two nodes share the same core ID set, it results in the cores - * number calculated from sysfs is not the actual cores number. Use - * "cpu cores" in /proc/cpuinfo as the cores number instead in this case. - * More details about the problem: - * https://www.redhat.com/archives/libvir-list/2012-May/msg00607.html - */ - if (cpu_cores && (cpu_cores > nodeinfo->cores)) - nodeinfo->cores = cpu_cores; - - /* nodeinfo->sockets is supposed to be a number of sockets per NUMA node, - * however if NUMA nodes are not composed of whole sockets, we just lie - * about the number of NUMA nodes and force apps to check capabilities XML - * for the actual NUMA topology. - */ - if (nodeinfo->sockets % nodeinfo->nodes == 0) - nodeinfo->sockets /= nodeinfo->nodes; - else - nodeinfo->nodes = 1; - ret = 0;
cleanup: + /* don't shadow a more serious error */ + if (nodedir && closedir(nodedir) < 0 && ret >= 0) { + virReportSystemError(errno, _("problem closing %s"), sysfs_nodedir); + ret = -1; + } + + VIR_FREE(sysfs_nodedir); VIR_FREE(sysfs_cpudir); return ret; } diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt index 333187e..0306f86 100644 --- a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt @@ -1 +1 @@ -CPUs: 48/48, MHz: 2100, Nodes: 1, Sockets: 4, Cores: 12, Threads: 1 +CPUs: 48/48, MHz: 2100, Nodes: 8, Sockets: 1, Cores: 6, Threads: 1
Otherwise looking good. ACK with switching to reentrant readdir, errno setting before first usage and comment indentation fixed. Michal

On 07/10/2012 04:56 AM, Michal Privoznik wrote:
+ + /* enumerate sockets in the node */ + CPU_ZERO(&sock_map); + while ((cpudirent = readdir(cpudir))) {
I guess we want reentrant version of readdir here, don't we?
readdir_r() is a GNU extension not provided by gnulib, so we can't use it. Furthermore, readdir() is thread-safe if you have only one thread traversing a given DIR*; readdir_r() is only useful if you want to have multiple threads visit the same DIR* (which is not what we are doing here). For that reason, our syntax check does not forbid readdir, and we don't need to use readdir_r.
+ if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1) + continue; + + /* Parse socket */ + sock = virNodeParseSocket(node, cpu); + CPU_SET(sock, &sock_map); + + if (sock > sock_max) + sock_max = sock; + } + + if (errno) {
You should have reset errno before while() loop.
That part is true - you MUST reset errno before every call to readdir(), as it is the only way to tell errors apart from end-of-iteration.
+ /* iterate over all CPU's in the node */ + rewinddir(cpudir); + while ((cpudirent = readdir(cpudir))) {
Again, s/readdir/readdir_r/
Overkill, not necessary. -- Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org

This patch adds test data that describe a machine that has two physical processors that don't share same core id's on their cores. On this data the "virsh nodeinfo" reported that the machine had 10 cores per socket while the processor had only 8. (Before fixing nodeinfo gathering code). --- .../linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt | 1 + .../linux-nodeinfo-sysfs-test-4-x86.cpuinfo | 400 ++++++++++++++++++++ .../cpu/cpu0/topology/core_id | 1 + .../cpu/cpu0/topology/physical_package_id | 1 + .../cpu/cpu0/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu1/online | 1 + .../cpu/cpu1/topology/core_id | 1 + .../cpu/cpu1/topology/physical_package_id | 1 + .../cpu/cpu1/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu10/online | 1 + .../cpu/cpu10/topology/core_id | 1 + .../cpu/cpu10/topology/physical_package_id | 1 + .../cpu/cpu10/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu11/online | 1 + .../cpu/cpu11/topology/core_id | 1 + .../cpu/cpu11/topology/physical_package_id | 1 + .../cpu/cpu11/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu12/online | 1 + .../cpu/cpu12/topology/core_id | 1 + .../cpu/cpu12/topology/physical_package_id | 1 + .../cpu/cpu12/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu13/online | 1 + .../cpu/cpu13/topology/core_id | 1 + .../cpu/cpu13/topology/physical_package_id | 1 + .../cpu/cpu13/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu14/online | 1 + .../cpu/cpu14/topology/core_id | 1 + .../cpu/cpu14/topology/physical_package_id | 1 + .../cpu/cpu14/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu15/online | 1 + .../cpu/cpu15/topology/core_id | 1 + .../cpu/cpu15/topology/physical_package_id | 1 + .../cpu/cpu15/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu2/online | 1 + .../cpu/cpu2/topology/core_id | 1 + .../cpu/cpu2/topology/physical_package_id | 1 + .../cpu/cpu2/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu3/online | 1 + .../cpu/cpu3/topology/core_id | 1 + .../cpu/cpu3/topology/physical_package_id | 1 + .../cpu/cpu3/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu4/online | 1 + .../cpu/cpu4/topology/core_id | 1 + .../cpu/cpu4/topology/physical_package_id | 1 + .../cpu/cpu4/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu5/online | 1 + .../cpu/cpu5/topology/core_id | 1 + .../cpu/cpu5/topology/physical_package_id | 1 + .../cpu/cpu5/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu6/online | 1 + .../cpu/cpu6/topology/core_id | 1 + .../cpu/cpu6/topology/physical_package_id | 1 + .../cpu/cpu6/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu7/online | 1 + .../cpu/cpu7/topology/core_id | 1 + .../cpu/cpu7/topology/physical_package_id | 1 + .../cpu/cpu7/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu8/online | 1 + .../cpu/cpu8/topology/core_id | 1 + .../cpu/cpu8/topology/physical_package_id | 1 + .../cpu/cpu8/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu9/online | 1 + .../cpu/cpu9/topology/core_id | 1 + .../cpu/cpu9/topology/physical_package_id | 1 + .../cpu/cpu9/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu0 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu1 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu2 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu3 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu4 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu5 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu6 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu7 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/meminfo | 29 ++ .../linux-nodeinfo-sysfs-test-4/node/node1/cpu10 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu11 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu12 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu13 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu14 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu15 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu8 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu9 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/meminfo | 29 ++ .../linux-nodeinfo-sysfs-test-4/node/possible | Bin 0 -> 5 bytes tests/nodeinfotest.c | 1 + 85 files changed, 539 insertions(+), 0 deletions(-) create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-x86.cpuinfo create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/thread_siblings create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu0 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu1 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu2 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu3 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu4 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu5 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu6 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu7 create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/meminfo create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu10 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu11 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu12 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu13 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu14 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu15 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu8 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu9 create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/meminfo create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/possible diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt new file mode 100644 index 0000000..0c8f956 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt @@ -0,0 +1 @@ +CPUs: 16/16, MHz: 1064, Nodes: 2, Sockets: 1, Cores: 8, Threads: 1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-x86.cpuinfo b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-x86.cpuinfo new file mode 100644 index 0000000..b3c33b3 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-x86.cpuinfo @@ -0,0 +1,400 @@ +processor : 0 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 1 +cpu cores : 8 +apicid : 2 +initial apicid : 2 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 1 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 2 +cpu cores : 8 +apicid : 4 +initial apicid : 4 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 2 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 8 +cpu cores : 8 +apicid : 16 +initial apicid : 16 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 3 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 9 +cpu cores : 8 +apicid : 18 +initial apicid : 18 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 4 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 16 +cpu cores : 8 +apicid : 32 +initial apicid : 32 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 5 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 17 +cpu cores : 8 +apicid : 34 +initial apicid : 34 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 6 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 18 +cpu cores : 8 +apicid : 36 +initial apicid : 36 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 7 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 24 +cpu cores : 8 +apicid : 48 +initial apicid : 48 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 8 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 0 +cpu cores : 8 +apicid : 64 +initial apicid : 64 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 9 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 2 +cpu cores : 8 +apicid : 68 +initial apicid : 68 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 10 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 8 +cpu cores : 8 +apicid : 80 +initial apicid : 80 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 11 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 9 +cpu cores : 8 +apicid : 82 +initial apicid : 82 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 12 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 16 +cpu cores : 8 +apicid : 96 +initial apicid : 96 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 13 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 17 +cpu cores : 8 +apicid : 98 +initial apicid : 98 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 14 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 18 +cpu cores : 8 +apicid : 100 +initial apicid : 100 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 15 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 25 +cpu cores : 8 +apicid : 114 +initial apicid : 114 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/core_id new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/core_id @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/thread_siblings new file mode 100644 index 0000000..6350475 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/thread_siblings @@ -0,0 +1 @@ +0001 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/core_id new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/core_id @@ -0,0 +1 @@ +2 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/thread_siblings new file mode 100644 index 0000000..5fca1fd --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/thread_siblings @@ -0,0 +1 @@ +0002 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/core_id new file mode 100644 index 0000000..45a4fb7 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/core_id @@ -0,0 +1 @@ +8 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/physical_package_id new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/physical_package_id @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/thread_siblings new file mode 100644 index 0000000..cde5dce --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/thread_siblings @@ -0,0 +1 @@ +0400 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/core_id new file mode 100644 index 0000000..ec63514 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/core_id @@ -0,0 +1 @@ +9 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/physical_package_id new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/physical_package_id @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/thread_siblings new file mode 100644 index 0000000..54c3371 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/thread_siblings @@ -0,0 +1 @@ +0800 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/core_id new file mode 100644 index 0000000..b6a7d89 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/core_id @@ -0,0 +1 @@ +16 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/physical_package_id new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/physical_package_id @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/thread_siblings new file mode 100644 index 0000000..83b33d2 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/thread_siblings @@ -0,0 +1 @@ +1000 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/core_id new file mode 100644 index 0000000..98d9bcb --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/core_id @@ -0,0 +1 @@ +17 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/physical_package_id new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/physical_package_id @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/thread_siblings new file mode 100644 index 0000000..8bd1af1 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/thread_siblings @@ -0,0 +1 @@ +2000 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/core_id new file mode 100644 index 0000000..3c03207 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/core_id @@ -0,0 +1 @@ +18 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/physical_package_id new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/physical_package_id @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/thread_siblings new file mode 100644 index 0000000..26a4dd3 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/thread_siblings @@ -0,0 +1 @@ +4000 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/core_id new file mode 100644 index 0000000..7273c0f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/core_id @@ -0,0 +1 @@ +25 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/physical_package_id new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/physical_package_id @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/thread_siblings new file mode 100644 index 0000000..e002b36 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/thread_siblings @@ -0,0 +1 @@ +8000 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/core_id new file mode 100644 index 0000000..45a4fb7 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/core_id @@ -0,0 +1 @@ +8 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/thread_siblings new file mode 100644 index 0000000..e224381 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/thread_siblings @@ -0,0 +1 @@ +0004 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/core_id new file mode 100644 index 0000000..ec63514 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/core_id @@ -0,0 +1 @@ +9 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/thread_siblings new file mode 100644 index 0000000..be15c71 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/thread_siblings @@ -0,0 +1 @@ +0008 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/core_id new file mode 100644 index 0000000..b6a7d89 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/core_id @@ -0,0 +1 @@ +16 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/thread_siblings new file mode 100644 index 0000000..66375d5 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/thread_siblings @@ -0,0 +1 @@ +0010 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/core_id new file mode 100644 index 0000000..98d9bcb --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/core_id @@ -0,0 +1 @@ +17 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/thread_siblings new file mode 100644 index 0000000..0bfe020 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/thread_siblings @@ -0,0 +1 @@ +0020 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/core_id new file mode 100644 index 0000000..3c03207 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/core_id @@ -0,0 +1 @@ +18 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/thread_siblings new file mode 100644 index 0000000..b5fda7b --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/thread_siblings @@ -0,0 +1 @@ +0040 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/core_id new file mode 100644 index 0000000..a45fd52 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/core_id @@ -0,0 +1 @@ +24 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/thread_siblings new file mode 100644 index 0000000..d46f197 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/thread_siblings @@ -0,0 +1 @@ +0080 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/core_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/core_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/physical_package_id new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/physical_package_id @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/thread_siblings new file mode 100644 index 0000000..e199843 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/thread_siblings @@ -0,0 +1 @@ +0100 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/core_id new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/core_id @@ -0,0 +1 @@ +2 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/physical_package_id new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/physical_package_id @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/thread_siblings new file mode 100644 index 0000000..092ce5f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/thread_siblings @@ -0,0 +1 @@ +0200 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu0 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu0 new file mode 120000 index 0000000..c841bea --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu0 @@ -0,0 +1 @@ +../../cpu/cpu0 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu1 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu1 new file mode 120000 index 0000000..5f45362 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu1 @@ -0,0 +1 @@ +../../cpu/cpu1 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu2 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu2 new file mode 120000 index 0000000..2dcca33 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu2 @@ -0,0 +1 @@ +../../cpu/cpu2 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu3 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu3 new file mode 120000 index 0000000..c7690e5 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu3 @@ -0,0 +1 @@ +../../cpu/cpu3 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu4 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu4 new file mode 120000 index 0000000..9e77a64 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu4 @@ -0,0 +1 @@ +../../cpu/cpu4 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu5 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu5 new file mode 120000 index 0000000..cc07c3b --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu5 @@ -0,0 +1 @@ +../../cpu/cpu5 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu6 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu6 new file mode 120000 index 0000000..2e75763 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu6 @@ -0,0 +1 @@ +../../cpu/cpu6 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu7 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu7 new file mode 120000 index 0000000..09e3f79 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu7 @@ -0,0 +1 @@ +../../cpu/cpu7 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/meminfo b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/meminfo new file mode 100644 index 0000000..c74a372 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/meminfo @@ -0,0 +1,29 @@ + +Node 0 MemTotal: 67002564 kB +Node 0 MemFree: 63623272 kB +Node 0 MemUsed: 3379292 kB +Node 0 Active: 1335192 kB +Node 0 Inactive: 157792 kB +Node 0 Active(anon): 1170928 kB +Node 0 Inactive(anon): 1168 kB +Node 0 Active(file): 164264 kB +Node 0 Inactive(file): 156624 kB +Node 0 Unevictable: 0 kB +Node 0 Mlocked: 0 kB +Node 0 Dirty: 56 kB +Node 0 Writeback: 0 kB +Node 0 FilePages: 322312 kB +Node 0 Mapped: 29584 kB +Node 0 AnonPages: 111848 kB +Node 0 Shmem: 1432 kB +Node 0 KernelStack: 3712 kB +Node 0 PageTables: 12024 kB +Node 0 NFS_Unstable: 0 kB +Node 0 Bounce: 0 kB +Node 0 WritebackTmp: 0 kB +Node 0 Slab: 88028 kB +Node 0 SReclaimable: 50972 kB +Node 0 SUnreclaim: 37056 kB +Node 0 HugePages_Total: 0 +Node 0 HugePages_Free: 0 +Node 0 HugePages_Surp: 0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu10 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu10 new file mode 120000 index 0000000..a6dc6bb --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu10 @@ -0,0 +1 @@ +../../cpu/cpu10 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu11 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu11 new file mode 120000 index 0000000..e29d898 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu11 @@ -0,0 +1 @@ +../../cpu/cpu11 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu12 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu12 new file mode 120000 index 0000000..211519e --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu12 @@ -0,0 +1 @@ +../../cpu/cpu12 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu13 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu13 new file mode 120000 index 0000000..52d3b69 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu13 @@ -0,0 +1 @@ +../../cpu/cpu13 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu14 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu14 new file mode 120000 index 0000000..24cb3b4 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu14 @@ -0,0 +1 @@ +../../cpu/cpu14 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu15 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu15 new file mode 120000 index 0000000..e905d85 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu15 @@ -0,0 +1 @@ +../../cpu/cpu15 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu8 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu8 new file mode 120000 index 0000000..bda10cc --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu8 @@ -0,0 +1 @@ +../../cpu/cpu8 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu9 b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu9 new file mode 120000 index 0000000..1ec1db2 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu9 @@ -0,0 +1 @@ +../../cpu/cpu9 \ No newline at end of file diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/meminfo b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/meminfo new file mode 100644 index 0000000..1f59f19 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/meminfo @@ -0,0 +1,29 @@ + +Node 1 MemTotal: 67108864 kB +Node 1 MemFree: 61752192 kB +Node 1 MemUsed: 5356672 kB +Node 1 Active: 3325724 kB +Node 1 Inactive: 206476 kB +Node 1 Active(anon): 3124584 kB +Node 1 Inactive(anon): 4348 kB +Node 1 Active(file): 201140 kB +Node 1 Inactive(file): 202128 kB +Node 1 Unevictable: 0 kB +Node 1 Mlocked: 0 kB +Node 1 Dirty: 25996 kB +Node 1 Writeback: 0 kB +Node 1 FilePages: 408200 kB +Node 1 Mapped: 28620 kB +Node 1 AnonPages: 112092 kB +Node 1 Shmem: 4432 kB +Node 1 KernelStack: 1184 kB +Node 1 PageTables: 15848 kB +Node 1 NFS_Unstable: 0 kB +Node 1 Bounce: 0 kB +Node 1 WritebackTmp: 0 kB +Node 1 Slab: 126440 kB +Node 1 SReclaimable: 52996 kB +Node 1 SUnreclaim: 73444 kB +Node 1 HugePages_Total: 0 +Node 1 HugePages_Free: 0 +Node 1 HugePages_Surp: 0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/possible b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/possible new file mode 100644 index 0000000000000000000000000000000000000000..138b411f24a5cecb7a254a97b9584b276c805be2 GIT binary patch literal 5 McmXreHRNId00K||nE(I) literal 0 HcmV?d00001 diff --git a/tests/nodeinfotest.c b/tests/nodeinfotest.c index a2b89dd..09dae40 100644 --- a/tests/nodeinfotest.c +++ b/tests/nodeinfotest.c @@ -128,6 +128,7 @@ mymain(void) defined(__powerpc64__)) "nodeinfo-sysfs-test-2", "nodeinfo-sysfs-test-3", + "nodeinfo-sysfs-test-4", # endif }; -- 1.7.8.6

On 09.07.2012 17:17, Peter Krempa wrote:
This patch adds test data that describe a machine that has two physical processors that don't share same core id's on their cores. On this data the "virsh nodeinfo" reported that the machine had 10 cores per socket while the processor had only 8. (Before fixing nodeinfo gathering code). --- .../linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt | 1 + .../linux-nodeinfo-sysfs-test-4-x86.cpuinfo | 400 ++++++++++++++++++++ .../cpu/cpu0/topology/core_id | 1 + .../cpu/cpu0/topology/physical_package_id | 1 + .../cpu/cpu0/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu1/online | 1 + .../cpu/cpu1/topology/core_id | 1 + .../cpu/cpu1/topology/physical_package_id | 1 + .../cpu/cpu1/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu10/online | 1 + .../cpu/cpu10/topology/core_id | 1 + .../cpu/cpu10/topology/physical_package_id | 1 + .../cpu/cpu10/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu11/online | 1 + .../cpu/cpu11/topology/core_id | 1 + .../cpu/cpu11/topology/physical_package_id | 1 + .../cpu/cpu11/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu12/online | 1 + .../cpu/cpu12/topology/core_id | 1 + .../cpu/cpu12/topology/physical_package_id | 1 + .../cpu/cpu12/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu13/online | 1 + .../cpu/cpu13/topology/core_id | 1 + .../cpu/cpu13/topology/physical_package_id | 1 + .../cpu/cpu13/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu14/online | 1 + .../cpu/cpu14/topology/core_id | 1 + .../cpu/cpu14/topology/physical_package_id | 1 + .../cpu/cpu14/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu15/online | 1 + .../cpu/cpu15/topology/core_id | 1 + .../cpu/cpu15/topology/physical_package_id | 1 + .../cpu/cpu15/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu2/online | 1 + .../cpu/cpu2/topology/core_id | 1 + .../cpu/cpu2/topology/physical_package_id | 1 + .../cpu/cpu2/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu3/online | 1 + .../cpu/cpu3/topology/core_id | 1 + .../cpu/cpu3/topology/physical_package_id | 1 + .../cpu/cpu3/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu4/online | 1 + .../cpu/cpu4/topology/core_id | 1 + .../cpu/cpu4/topology/physical_package_id | 1 + .../cpu/cpu4/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu5/online | 1 + .../cpu/cpu5/topology/core_id | 1 + .../cpu/cpu5/topology/physical_package_id | 1 + .../cpu/cpu5/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu6/online | 1 + .../cpu/cpu6/topology/core_id | 1 + .../cpu/cpu6/topology/physical_package_id | 1 + .../cpu/cpu6/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu7/online | 1 + .../cpu/cpu7/topology/core_id | 1 + .../cpu/cpu7/topology/physical_package_id | 1 + .../cpu/cpu7/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu8/online | 1 + .../cpu/cpu8/topology/core_id | 1 + .../cpu/cpu8/topology/physical_package_id | 1 + .../cpu/cpu8/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/cpu/cpu9/online | 1 + .../cpu/cpu9/topology/core_id | 1 + .../cpu/cpu9/topology/physical_package_id | 1 + .../cpu/cpu9/topology/thread_siblings | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu0 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu1 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu2 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu3 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu4 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu5 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu6 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/cpu7 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node0/meminfo | 29 ++ .../linux-nodeinfo-sysfs-test-4/node/node1/cpu10 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu11 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu12 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu13 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu14 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu15 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu8 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/cpu9 | 1 + .../linux-nodeinfo-sysfs-test-4/node/node1/meminfo | 29 ++ .../linux-nodeinfo-sysfs-test-4/node/possible | Bin 0 -> 5 bytes tests/nodeinfotest.c | 1 + 85 files changed, 539 insertions(+), 0 deletions(-) create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-x86.cpuinfo create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu0/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu1/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu10/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu11/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu12/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu13/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu14/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu15/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu2/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu3/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu4/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu5/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu6/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu7/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu8/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/cpu/cpu9/topology/thread_siblings create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu0 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu1 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu2 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu3 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu4 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu5 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu6 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/cpu7 create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node0/meminfo create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu10 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu11 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu12 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu13 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu14 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu15 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu8 create mode 120000 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/cpu9 create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/node1/meminfo create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-4/node/possible
diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt new file mode 100644 index 0000000..0c8f956 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-cpu-x86-output.txt @@ -0,0 +1 @@ +CPUs: 16/16, MHz: 1064, Nodes: 2, Sockets: 1, Cores: 8, Threads: 1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-x86.cpuinfo b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-x86.cpuinfo new file mode 100644 index 0000000..b3c33b3 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-4-x86.cpuinfo @@ -0,0 +1,400 @@ +processor : 0 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 1 +cpu cores : 8 +apicid : 2 +initial apicid : 2 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 1 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 2 +cpu cores : 8 +apicid : 4 +initial apicid : 4 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 2 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 8 +cpu cores : 8 +apicid : 16 +initial apicid : 16 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 3 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 9 +cpu cores : 8 +apicid : 18 +initial apicid : 18 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 4 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 16 +cpu cores : 8 +apicid : 32 +initial apicid : 32 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 5 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 17 +cpu cores : 8 +apicid : 34 +initial apicid : 34 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 6 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 18 +cpu cores : 8 +apicid : 36 +initial apicid : 36 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 7 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 0 +siblings : 8 +core id : 24 +cpu cores : 8 +apicid : 48 +initial apicid : 48 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5320.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 8 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 0 +cpu cores : 8 +apicid : 64 +initial apicid : 64 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 9 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 2 +cpu cores : 8 +apicid : 68 +initial apicid : 68 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 10 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 8 +cpu cores : 8 +apicid : 80 +initial apicid : 80 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 11 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 9 +cpu cores : 8 +apicid : 82 +initial apicid : 82 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 12 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 16 +cpu cores : 8 +apicid : 96 +initial apicid : 96 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 13 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 17 +cpu cores : 8 +apicid : 98 +initial apicid : 98 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 14 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 18 +cpu cores : 8 +apicid : 100 +initial apicid : 100 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: + +processor : 15 +vendor_id : GenuineIntel +cpu family : 6 +model : 47 +model name : Intel(R) Xeon(R) CPU E7- 8837 @ 2.67GHz +stepping : 2 +cpu MHz : 1064.000 +cache size : 24576 KB +physical id : 1 +siblings : 8 +core id : 25 +cpu cores : 8 +apicid : 114 +initial apicid : 114 +fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: +
Don't add empty newline here. ACK modulo empty newline. Michal

On 07/10/2012 04:56 AM, Michal Privoznik wrote:
On 09.07.2012 17:17, Peter Krempa wrote:
This patch adds test data that describe a machine that has two physical processors that don't share same core id's on their cores. On this data the "virsh nodeinfo" reported that the machine had 10 cores per socket while the processor had only 8. (Before fixing nodeinfo gathering code).
+fpu : yes +fpu_exception : yes +cpuid level : 11 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 x2apic popcnt aes lahf_lm ida arat epb dts tpr_shadow vnmi flexpriority ept vpid +bogomips : 5319.83 +clflush size : 64 +cache_alignment : 64 +address sizes : 44 bits physical, 48 bits virtual +power management: +
Don't add empty newline here.
We have an explicit whitespace exemption for these sorts of files, so that they can match actual machine outputs with their trailing empty line. This particular file will not trigger either a syntax check error or a commit hook rejection.
ACK modulo empty newline.
Empty newline is fine in this case, actually. -- Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org

This patch changes the way data to fill the nodeinfo structure are gathered. We've gathere the test data by iterating processors an sockets separately from nodes. The reported data was based solely on information about core id. Problems arise when eg cores in mulit-processor machines don't have same id's on both processors or maybe one physical processor contains more NUMA nodes. This patch changes the approach how we detect processors and nodes. Now we start at enumerating nodes and for each node processors, sockets and threads are enumerated separately. This approach provides acurate data that comply to docs about the nodeinfo structure. This also enables to get rid of hacks: see commits 10d9038b744a69c8d4bd29c2e8c012a097481586, ac9dd4a676f21b5e3ca6dbe0526f2a6709072beb. (Those changes in nodeinfo.c are efectively reverted by this patch). This patch also changes output of one of the tests, as the processor topology is now acquired more precisely. --- Changes to v3: - added ATTRIBUTE_NONNULL to arguments of virNodeParseNode() - added resetting of errno before calling readdir() - indented comment properly - edited comment placed before parsing info from /proc/cpuinfo to reflect current state better --- src/nodeinfo.c | 326 ++++++++++++-------- .../linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt | 2 +- 2 files changed, 197 insertions(+), 131 deletions(-) diff --git a/src/nodeinfo.c b/src/nodeinfo.c index 819f954..a892e7a 100644 --- a/src/nodeinfo.c +++ b/src/nodeinfo.c @@ -188,38 +188,139 @@ virNodeParseSocket(const char *dir, unsigned int cpu) return ret; } +/* parses a node entry, returning number of processors in the node and + * filling arguments */ static int -virNodeParseNode(const char *sysfs_dir) +virNodeParseNode(const char *node, int *sockets, int *cores, int *threads) + ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2) + ATTRIBUTE_NONNULL(3) ATTRIBUTE_NONNULL(4) { - char *file = NULL; - char *possible = NULL; - char *tmp; int ret = -1; + int processors = 0; + DIR *cpudir = NULL; + struct dirent *cpudirent = NULL; + int sock_max = 0; + cpu_set_t sock_map; + int sock; + cpu_set_t *core_maps = NULL; + int core; + int i; + int siblings; + unsigned int cpu; + int online; - if (virAsprintf(&file, "%s/node/possible", sysfs_dir) < 0) { - virReportOOMError(); + *threads = 0; + *cores = 0; + *sockets = 0; + + if (!(cpudir = opendir(node))) { + virReportSystemError(errno, _("cannot opendir %s"), node); goto cleanup; } - /* Assume that a missing node/possible file implies no NUMA - * support, and hence all cpus belong to the same node. */ - if (!virFileExists(file)) { - ret = 1; + + /* enumerate sockets in the node */ + CPU_ZERO(&sock_map); + errno = 0; + while ((cpudirent = readdir(cpudir))) { + if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1) + continue; + + /* Parse socket */ + sock = virNodeParseSocket(node, cpu); + CPU_SET(sock, &sock_map); + + if (sock > sock_max) + sock_max = sock; + + errno = 0; + } + + if (errno) { + virReportSystemError(errno, _("problem reading %s"), node); goto cleanup; } - if (virFileReadAll(file, 1024, &possible) < 0) + + sock_max++; + + /* allocate cpu maps for each socket */ + if (VIR_ALLOC_N(core_maps, sock_max) < 0) { + virReportOOMError(); goto cleanup; - if (virStrToLong_i(possible, &tmp, 10, &ret) < 0 || - (*tmp == '-' && virStrToLong_i(tmp+1, &tmp, 10, &ret) < 0) || - *tmp != '\n') { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - _("failed to parse possible nodes '%s'"), possible); + } + + for (i = 0; i < sock_max; i++) + CPU_ZERO(&core_maps[i]); + + /* iterate over all CPU's in the node */ + rewinddir(cpudir); + errno = 0; + while ((cpudirent = readdir(cpudir))) { + if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1) + continue; + + if ((online = virNodeGetCpuValue(node, cpu, "online", true)) < 0) + goto cleanup; + + if (!online) + continue; + + processors++; + + /* Parse socket */ + sock = virNodeParseSocket(node, cpu); + if (!CPU_ISSET(sock, &sock_map)) { + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("CPU socket topology has changed")); + goto cleanup; + } + + /* Parse core */ +# if defined(__s390__) || \ + defined(__s390x__) + /* logical cpu is equivalent to a core on s390 */ + core = cpu; +# else + core = virNodeGetCpuValue(node, cpu, "topology/core_id", false); +# endif + + CPU_SET(core, &core_maps[sock]); + + if (!(siblings = virNodeCountThreadSiblings(node, cpu))) + goto cleanup; + + if (siblings > *threads) + *threads = siblings; + + errno = 0; + } + + if (errno) { + virReportSystemError(errno, _("problem reading %s"), node); goto cleanup; } - ret++; + + /* finalize the returned data */ + *sockets = CPU_COUNT(&sock_map); + + for (i = 0; i < sock_max; i++) { + if (!CPU_ISSET(i, &sock_map)) + continue; + + core = CPU_COUNT(&core_maps[i]); + if (core > *cores) + *cores = core; + } + + ret = processors; cleanup: - VIR_FREE(file); - VIR_FREE(possible); + /* don't shadow a more serious error */ + if (cpudir && closedir(cpudir) < 0 && ret >= 0) { + virReportSystemError(errno, _("problem closing %s"), node); + ret = -1; + } + VIR_FREE(core_maps); + return ret; } @@ -228,23 +329,20 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, virNodeInfoPtr nodeinfo) { char line[1024]; - DIR *cpudir = NULL; - struct dirent *cpudirent = NULL; - unsigned int cpu; - unsigned long core, sock, cur_threads; - cpu_set_t core_mask; - cpu_set_t socket_mask; - int online; + DIR *nodedir = NULL; + struct dirent *nodedirent = NULL; + int cpus, cores, socks, threads; + unsigned int node; int ret = -1; + char *sysfs_nodedir = NULL; char *sysfs_cpudir = NULL; - unsigned int cpu_cores = 0; nodeinfo->cpus = 0; nodeinfo->mhz = 0; nodeinfo->cores = 0; + nodeinfo->nodes = 0; - /* Start with parsing /proc/cpuinfo; although it tends to have - * fewer details. Hyperthreads are ignored at this stage. */ + /* Start with parsing CPU clock speed from /proc/cpuinfo */ while (fgets(line, sizeof(line), cpuinfo) != NULL) { # if defined(__x86_64__) || \ defined(__amd64__) || \ @@ -254,40 +352,22 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, char *p; unsigned int ui; - buf += 9; + buf += 7; while (*buf && c_isspace(*buf)) buf++; if (*buf != ':' || !buf[1]) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("parsing cpu MHz from cpuinfo")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("parsing cpu MHz from cpuinfo")); goto cleanup; } - if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 + if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 && /* Accept trailing fractional part. */ - && (*p == '\0' || *p == '.' || c_isspace(*p))) + (*p == '\0' || *p == '.' || c_isspace(*p))) nodeinfo->mhz = ui; } - if (STRPREFIX(buf, "cpu cores")) { - char *p; - unsigned int ui; - - buf += 9; - while (*buf && c_isspace(*buf)) - buf++; - - if (*buf != ':' || !buf[1]) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("parsing cpu cores from cpuinfo")); - return -1; - } - - if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 - && (*p == '\0' || c_isspace(*p))) - cpu_cores = ui; - } # elif defined(__powerpc__) || \ defined(__powerpc64__) char *buf = line; @@ -300,14 +380,14 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, buf++; if (*buf != ':' || !buf[1]) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("parsing cpu MHz from cpuinfo")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("parsing cpu MHz from cpuinfo")); goto cleanup; } - if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 + if (virStrToLong_ui(buf+1, &p, 10, &ui) == 0 && /* Accept trailing fractional part. */ - && (*p == '\0' || *p == '.' || c_isspace(*p))) + (*p == '\0' || *p == '.' || c_isspace(*p))) nodeinfo->mhz = ui; /* No other interesting infos are available in /proc/cpuinfo. * However, there is a line identifying processor's version, @@ -328,115 +408,101 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo, /* OK, we've parsed clock speed out of /proc/cpuinfo. Get the * core, node, socket, thread and topology information from /sys */ - if (virAsprintf(&sysfs_cpudir, "%s/cpu", sysfs_dir) < 0) { + if (virAsprintf(&sysfs_nodedir, "%s/node", sysfs_dir) < 0) { virReportOOMError(); goto cleanup; } - cpudir = opendir(sysfs_cpudir); - if (cpudir == NULL) { - virReportSystemError(errno, _("cannot opendir %s"), sysfs_cpudir); - goto cleanup; - } - CPU_ZERO(&core_mask); - CPU_ZERO(&socket_mask); + if (!(nodedir = opendir(sysfs_nodedir))) { + /* the host isn't probably running a NUMA architecture */ + goto fallback; + } - while ((cpudirent = readdir(cpudir))) { - if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1) + errno = 0; + while ((nodedirent = readdir(nodedir))) { + if (sscanf(nodedirent->d_name, "node%u", &node) != 1) continue; - online = virNodeGetCpuValue(sysfs_cpudir, cpu, "online", true); - if (online < 0) { - closedir(cpudir); + nodeinfo->nodes++; + + if (virAsprintf(&sysfs_cpudir, "%s/node/%s", + sysfs_dir, nodedirent->d_name) < 0) { + virReportOOMError(); goto cleanup; } - if (!online) - continue; - nodeinfo->cpus++; - /* Parse core */ -# if defined(__s390__) || \ - defined(__s390x__) - /* logical cpu is equivalent to a core on s390 */ - core = cpu; -# else - core = virNodeGetCpuValue(sysfs_cpudir, cpu, "topology/core_id", false); -# endif - if (!CPU_ISSET(core, &core_mask)) { - CPU_SET(core, &core_mask); - nodeinfo->cores++; - } + if ((cpus = virNodeParseNode(sysfs_cpudir, &socks, + &cores, &threads)) < 0) + goto cleanup; - /* Parse socket */ - sock = virNodeParseSocket(sysfs_cpudir, cpu); - if (!CPU_ISSET(sock, &socket_mask)) { - CPU_SET(sock, &socket_mask); - nodeinfo->sockets++; - } + VIR_FREE(sysfs_cpudir); - cur_threads = virNodeCountThreadSiblings(sysfs_cpudir, cpu); - if (cur_threads == 0) { - closedir(cpudir); - goto cleanup; - } - if (cur_threads > nodeinfo->threads) - nodeinfo->threads = cur_threads; + nodeinfo->cpus += cpus; + + if (socks > nodeinfo->sockets) + nodeinfo->sockets = socks; + + if (cores > nodeinfo->cores) + nodeinfo->cores = cores; + + if (threads > nodeinfo->threads) + nodeinfo->threads = threads; + + errno = 0; } + if (errno) { - virReportSystemError(errno, - _("problem reading %s"), sysfs_cpudir); - closedir(cpudir); + virReportSystemError(errno, _("problem reading %s"), sysfs_nodedir); goto cleanup; } - if (closedir(cpudir) < 0) { - virReportSystemError(errno, - _("problem closing %s"), sysfs_cpudir); + + if (nodeinfo->cpus && nodeinfo->nodes) + goto done; + +fallback: + VIR_FREE(sysfs_cpudir); + + if (virAsprintf(&sysfs_cpudir, "%s/cpu", sysfs_dir) < 0) { + virReportOOMError(); goto cleanup; } - if ((nodeinfo->nodes = virNodeParseNode(sysfs_dir)) <= 0) + if ((cpus = virNodeParseNode(sysfs_cpudir, &socks, &cores, &threads)) < 0) goto cleanup; + nodeinfo->nodes = 1; + nodeinfo->cpus = cpus; + nodeinfo->sockets = socks; + nodeinfo->cores = cores; + nodeinfo->threads = threads; + +done: /* There should always be at least one cpu, socket, node, and thread. */ if (nodeinfo->cpus == 0) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("no CPUs found")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("no CPUs found")); goto cleanup; } + if (nodeinfo->sockets == 0) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("no sockets found")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("no sockets found")); goto cleanup; } + if (nodeinfo->threads == 0) { - nodeReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("no threads found")); + nodeReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("no threads found")); goto cleanup; } - /* Platform like AMD Magny Cours has two NUMA nodes each package, and - * the two nodes share the same core ID set, it results in the cores - * number calculated from sysfs is not the actual cores number. Use - * "cpu cores" in /proc/cpuinfo as the cores number instead in this case. - * More details about the problem: - * https://www.redhat.com/archives/libvir-list/2012-May/msg00607.html - */ - if (cpu_cores && (cpu_cores > nodeinfo->cores)) - nodeinfo->cores = cpu_cores; - - /* nodeinfo->sockets is supposed to be a number of sockets per NUMA node, - * however if NUMA nodes are not composed of whole sockets, we just lie - * about the number of NUMA nodes and force apps to check capabilities XML - * for the actual NUMA topology. - */ - if (nodeinfo->sockets % nodeinfo->nodes == 0) - nodeinfo->sockets /= nodeinfo->nodes; - else - nodeinfo->nodes = 1; - ret = 0; cleanup: + /* don't shadow a more serious error */ + if (nodedir && closedir(nodedir) < 0 && ret >= 0) { + virReportSystemError(errno, _("problem closing %s"), sysfs_nodedir); + ret = -1; + } + + VIR_FREE(sysfs_nodedir); VIR_FREE(sysfs_cpudir); return ret; } diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt index 333187e..0306f86 100644 --- a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt @@ -1 +1 @@ -CPUs: 48/48, MHz: 2100, Nodes: 1, Sockets: 4, Cores: 12, Threads: 1 +CPUs: 48/48, MHz: 2100, Nodes: 8, Sockets: 1, Cores: 6, Threads: 1 -- 1.7.8.6

On 11.07.2012 11:47, Peter Krempa wrote:
This patch changes the way data to fill the nodeinfo structure are gathered. We've gathere the test data by iterating processors an sockets separately from nodes. The reported data was based solely on information about core id. Problems arise when eg cores in mulit-processor machines don't have same id's on both processors or maybe one physical processor contains more NUMA nodes.
This patch changes the approach how we detect processors and nodes. Now we start at enumerating nodes and for each node processors, sockets and threads are enumerated separately. This approach provides acurate data that comply to docs about the nodeinfo structure. This also enables to get rid of hacks: see commits 10d9038b744a69c8d4bd29c2e8c012a097481586, ac9dd4a676f21b5e3ca6dbe0526f2a6709072beb. (Those changes in nodeinfo.c are efectively reverted by this patch).
This patch also changes output of one of the tests, as the processor topology is now acquired more precisely. --- Changes to v3: - added ATTRIBUTE_NONNULL to arguments of virNodeParseNode() - added resetting of errno before calling readdir() - indented comment properly - edited comment placed before parsing info from /proc/cpuinfo to reflect current state better --- src/nodeinfo.c | 326 ++++++++++++-------- .../linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt | 2 +- 2 files changed, 197 insertions(+), 131 deletions(-)
ACK Michal

On 07/11/12 15:08, Michal Privoznik wrote:
On 11.07.2012 11:47, Peter Krempa wrote:
This patch changes the way data to fill the nodeinfo structure are gathered. We've gathere the test data by iterating processors an sockets separately from nodes. The reported data was based solely on information about core id. Problems arise when eg cores in mulit-processor machines don't have same id's on both processors or maybe one physical processor contains more NUMA nodes.
This patch changes the approach how we detect processors and nodes. Now we start at enumerating nodes and for each node processors, sockets and threads are enumerated separately. This approach provides acurate data that comply to docs about the nodeinfo structure. This also enables to get rid of hacks: see commits 10d9038b744a69c8d4bd29c2e8c012a097481586, ac9dd4a676f21b5e3ca6dbe0526f2a6709072beb. (Those changes in nodeinfo.c are efectively reverted by this patch).
This patch also changes output of one of the tests, as the processor topology is now acquired more precisely. --- Changes to v3: - added ATTRIBUTE_NONNULL to arguments of virNodeParseNode() - added resetting of errno before calling readdir() - indented comment properly - edited comment placed before parsing info from /proc/cpuinfo to reflect current state better --- src/nodeinfo.c | 326 ++++++++++++-------- .../linux-nodeinfo-sysfs-test-3-cpu-x86-output.txt | 2 +- 2 files changed, 197 insertions(+), 131 deletions(-)
ACK
Thanks! Series pushed with along with the tests. Peter
Michal
-- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list

Test filling of nodeinfo structure if /sys/devices/system/node does not exist. (Based on dump from a real machine) --- .../linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt | 1 + .../linux-nodeinfo-sysfs-test-5-x86.cpuinfo | 100 ++++++++++++++++++++ .../cpu/cpu0/topology/core_id | 1 + .../cpu/cpu0/topology/core_siblings | 1 + .../cpu/cpu0/topology/core_siblings_list | 1 + .../cpu/cpu0/topology/physical_package_id | 1 + .../cpu/cpu0/topology/thread_siblings | 1 + .../cpu/cpu0/topology/thread_siblings_list | 1 + .../linux-nodeinfo-sysfs-test-5/cpu/cpu1/online | 1 + .../cpu/cpu1/topology/core_id | 1 + .../cpu/cpu1/topology/core_siblings | 1 + .../cpu/cpu1/topology/core_siblings_list | 1 + .../cpu/cpu1/topology/physical_package_id | 1 + .../cpu/cpu1/topology/thread_siblings | 1 + .../cpu/cpu1/topology/thread_siblings_list | 1 + .../linux-nodeinfo-sysfs-test-5/cpu/cpu2/online | 1 + .../cpu/cpu2/topology/core_id | 1 + .../cpu/cpu2/topology/core_siblings | 1 + .../cpu/cpu2/topology/core_siblings_list | 1 + .../cpu/cpu2/topology/physical_package_id | 1 + .../cpu/cpu2/topology/thread_siblings | 1 + .../cpu/cpu2/topology/thread_siblings_list | 1 + .../linux-nodeinfo-sysfs-test-5/cpu/cpu3/online | 1 + .../cpu/cpu3/topology/core_id | 1 + .../cpu/cpu3/topology/core_siblings | 1 + .../cpu/cpu3/topology/core_siblings_list | 1 + .../cpu/cpu3/topology/physical_package_id | 1 + .../cpu/cpu3/topology/thread_siblings | 1 + .../cpu/cpu3/topology/thread_siblings_list | 1 + tests/nodeinfotest.c | 1 + 30 files changed, 129 insertions(+), 0 deletions(-) create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-x86.cpuinfo create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings_list diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt new file mode 100644 index 0000000..e63cf76 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt @@ -0,0 +1 @@ +CPUs: 4/4, MHz: 1861, Nodes: 1, Sockets: 1, Cores: 4, Threads: 1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-x86.cpuinfo b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-x86.cpuinfo new file mode 100644 index 0000000..0c3fbe8 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-x86.cpuinfo @@ -0,0 +1,100 @@ +processor : 0 +vendor_id : GenuineIntel +cpu family : 6 +model : 15 +model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz +stepping : 7 +cpu MHz : 1861.965 +cache size : 4096 KB +physical id : 0 +siblings : 4 +core id : 0 +cpu cores : 4 +apicid : 0 +initial apicid : 0 +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca lahf_lm tpr_shadow +bogomips : 3723.93 +clflush size : 64 +cache_alignment : 64 +address sizes : 36 bits physical, 48 bits virtual +power management: + +processor : 1 +vendor_id : GenuineIntel +cpu family : 6 +model : 15 +model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz +stepping : 7 +cpu MHz : 1861.965 +cache size : 4096 KB +physical id : 0 +siblings : 4 +core id : 2 +cpu cores : 4 +apicid : 2 +initial apicid : 2 +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca lahf_lm tpr_shadow +bogomips : 3723.85 +clflush size : 64 +cache_alignment : 64 +address sizes : 36 bits physical, 48 bits virtual +power management: + +processor : 2 +vendor_id : GenuineIntel +cpu family : 6 +model : 15 +model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz +stepping : 7 +cpu MHz : 1861.965 +cache size : 4096 KB +physical id : 0 +siblings : 4 +core id : 1 +cpu cores : 4 +apicid : 1 +initial apicid : 1 +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca lahf_lm tpr_shadow +bogomips : 3723.86 +clflush size : 64 +cache_alignment : 64 +address sizes : 36 bits physical, 48 bits virtual +power management: + +processor : 3 +vendor_id : GenuineIntel +cpu family : 6 +model : 15 +model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz +stepping : 7 +cpu MHz : 1861.965 +cache size : 4096 KB +physical id : 0 +siblings : 4 +core id : 3 +cpu cores : 4 +apicid : 3 +initial apicid : 3 +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca lahf_lm tpr_shadow +bogomips : 3723.85 +clflush size : 64 +cache_alignment : 64 +address sizes : 36 bits physical, 48 bits virtual +power management: + diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings new file mode 100644 index 0000000..96a53c7 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings @@ -0,0 +1 @@ +000f diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings_list b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings_list new file mode 100644 index 0000000..40c7bb2 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings_list @@ -0,0 +1 @@ +0-3 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings new file mode 100644 index 0000000..6350475 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings @@ -0,0 +1 @@ +0001 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings_list b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings_list new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings_list @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_id new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_id @@ -0,0 +1 @@ +2 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings new file mode 100644 index 0000000..96a53c7 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings @@ -0,0 +1 @@ +000f diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings_list b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings_list new file mode 100644 index 0000000..40c7bb2 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings_list @@ -0,0 +1 @@ +0-3 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings new file mode 100644 index 0000000..5fca1fd --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings @@ -0,0 +1 @@ +0002 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings_list b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings_list new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings_list @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_id new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_id @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings new file mode 100644 index 0000000..96a53c7 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings @@ -0,0 +1 @@ +000f diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings_list b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings_list new file mode 100644 index 0000000..40c7bb2 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings_list @@ -0,0 +1 @@ +0-3 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings new file mode 100644 index 0000000..e224381 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings @@ -0,0 +1 @@ +0004 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings_list b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings_list new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings_list @@ -0,0 +1 @@ +2 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/online b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/online new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/online @@ -0,0 +1 @@ +1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_id new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_id @@ -0,0 +1 @@ +3 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings new file mode 100644 index 0000000..96a53c7 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings @@ -0,0 +1 @@ +000f diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings_list b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings_list new file mode 100644 index 0000000..40c7bb2 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings_list @@ -0,0 +1 @@ +0-3 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/physical_package_id b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/physical_package_id new file mode 100644 index 0000000..573541a --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/physical_package_id @@ -0,0 +1 @@ +0 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings new file mode 100644 index 0000000..be15c71 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings @@ -0,0 +1 @@ +0008 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings_list b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings_list new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings_list @@ -0,0 +1 @@ +3 diff --git a/tests/nodeinfotest.c b/tests/nodeinfotest.c index 09dae40..346af58 100644 --- a/tests/nodeinfotest.c +++ b/tests/nodeinfotest.c @@ -129,6 +129,7 @@ mymain(void) "nodeinfo-sysfs-test-2", "nodeinfo-sysfs-test-3", "nodeinfo-sysfs-test-4", + "nodeinfo-sysfs-test-5", # endif }; -- 1.7.8.6

On 09.07.2012 17:17, Peter Krempa wrote:
Test filling of nodeinfo structure if /sys/devices/system/node does not exist. (Based on dump from a real machine) --- .../linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt | 1 + .../linux-nodeinfo-sysfs-test-5-x86.cpuinfo | 100 ++++++++++++++++++++ .../cpu/cpu0/topology/core_id | 1 + .../cpu/cpu0/topology/core_siblings | 1 + .../cpu/cpu0/topology/core_siblings_list | 1 + .../cpu/cpu0/topology/physical_package_id | 1 + .../cpu/cpu0/topology/thread_siblings | 1 + .../cpu/cpu0/topology/thread_siblings_list | 1 + .../linux-nodeinfo-sysfs-test-5/cpu/cpu1/online | 1 + .../cpu/cpu1/topology/core_id | 1 + .../cpu/cpu1/topology/core_siblings | 1 + .../cpu/cpu1/topology/core_siblings_list | 1 + .../cpu/cpu1/topology/physical_package_id | 1 + .../cpu/cpu1/topology/thread_siblings | 1 + .../cpu/cpu1/topology/thread_siblings_list | 1 + .../linux-nodeinfo-sysfs-test-5/cpu/cpu2/online | 1 + .../cpu/cpu2/topology/core_id | 1 + .../cpu/cpu2/topology/core_siblings | 1 + .../cpu/cpu2/topology/core_siblings_list | 1 + .../cpu/cpu2/topology/physical_package_id | 1 + .../cpu/cpu2/topology/thread_siblings | 1 + .../cpu/cpu2/topology/thread_siblings_list | 1 + .../linux-nodeinfo-sysfs-test-5/cpu/cpu3/online | 1 + .../cpu/cpu3/topology/core_id | 1 + .../cpu/cpu3/topology/core_siblings | 1 + .../cpu/cpu3/topology/core_siblings_list | 1 + .../cpu/cpu3/topology/physical_package_id | 1 + .../cpu/cpu3/topology/thread_siblings | 1 + .../cpu/cpu3/topology/thread_siblings_list | 1 + tests/nodeinfotest.c | 1 + 30 files changed, 129 insertions(+), 0 deletions(-) create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-x86.cpuinfo create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu0/topology/thread_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu1/topology/thread_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu2/topology/thread_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/online create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/core_siblings_list create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/physical_package_id create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings create mode 100644 tests/nodeinfodata/linux-nodeinfo-sysfs-test-5/cpu/cpu3/topology/thread_siblings_list
diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt new file mode 100644 index 0000000..e63cf76 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-cpu-x86-output.txt @@ -0,0 +1 @@ +CPUs: 4/4, MHz: 1861, Nodes: 1, Sockets: 1, Cores: 4, Threads: 1 diff --git a/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-x86.cpuinfo b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-x86.cpuinfo new file mode 100644 index 0000000..0c3fbe8 --- /dev/null +++ b/tests/nodeinfodata/linux-nodeinfo-sysfs-test-5-x86.cpuinfo @@ -0,0 +1,100 @@ +processor : 0 +vendor_id : GenuineIntel +cpu family : 6 +model : 15 +model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz +stepping : 7 +cpu MHz : 1861.965 +cache size : 4096 KB +physical id : 0 +siblings : 4 +core id : 0 +cpu cores : 4 +apicid : 0 +initial apicid : 0 +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca lahf_lm tpr_shadow +bogomips : 3723.93 +clflush size : 64 +cache_alignment : 64 +address sizes : 36 bits physical, 48 bits virtual +power management: + +processor : 1 +vendor_id : GenuineIntel +cpu family : 6 +model : 15 +model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz +stepping : 7 +cpu MHz : 1861.965 +cache size : 4096 KB +physical id : 0 +siblings : 4 +core id : 2 +cpu cores : 4 +apicid : 2 +initial apicid : 2 +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca lahf_lm tpr_shadow +bogomips : 3723.85 +clflush size : 64 +cache_alignment : 64 +address sizes : 36 bits physical, 48 bits virtual +power management: + +processor : 2 +vendor_id : GenuineIntel +cpu family : 6 +model : 15 +model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz +stepping : 7 +cpu MHz : 1861.965 +cache size : 4096 KB +physical id : 0 +siblings : 4 +core id : 1 +cpu cores : 4 +apicid : 1 +initial apicid : 1 +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca lahf_lm tpr_shadow +bogomips : 3723.86 +clflush size : 64 +cache_alignment : 64 +address sizes : 36 bits physical, 48 bits virtual +power management: + +processor : 3 +vendor_id : GenuineIntel +cpu family : 6 +model : 15 +model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz +stepping : 7 +cpu MHz : 1861.965 +cache size : 4096 KB +physical id : 0 +siblings : 4 +core id : 3 +cpu cores : 4 +apicid : 3 +initial apicid : 3 +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca lahf_lm tpr_shadow +bogomips : 3723.85 +clflush size : 64 +cache_alignment : 64 +address sizes : 36 bits physical, 48 bits virtual +power management: +
Again, ACK modulo this ^^ empty newline. Michal

On 07/10/2012 04:56 AM, Michal Privoznik wrote:
On 09.07.2012 17:17, Peter Krempa wrote:
Test filling of nodeinfo structure if /sys/devices/system/node does not exist. (Based on dump from a real machine) ---
+bogomips : 3723.85 +clflush size : 64 +cache_alignment : 64 +address sizes : 36 bits physical, 48 bits virtual +power management: +
Again, ACK modulo this ^^ empty newline.
Again, empty newline is fine, since this file already has an explicit exemption. -- Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
participants (3)
-
Eric Blake
-
Michal Privoznik
-
Peter Krempa