From: Ankit Agrawal <ank...@nvidia.com> It may be desirable for some deployments to have QEMU automatically pick a range and create the NUMA nodes. So the admin need not care about passing any additional params. Another advantage is that the feature is not dependent on newer libvirt that support the new parameters pxm-ns and pxm-nc.
Assign default values to pxm-ns (first available node) and pxm-nc (8). This makes the new params optional and the feature will work on older libvirt. Signed-off-by: Ankit Agrawal <ank...@nvidia.com> --- hw/vfio/pci.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c index cc0c516161..0bba161172 100644 --- a/hw/vfio/pci.c +++ b/hw/vfio/pci.c @@ -3053,8 +3053,10 @@ static int vfio_pci_dev_mem_probe(VFIOPCIDevice *vPciDev, VFIODevice *vdev = &vPciDev->vbasedev; MachineState *ms = MACHINE(qdev_get_machine()); int ret = 0; - uint32_t dev_node_start = vPciDev->dev_node_start; - uint32_t dev_node_count = vPciDev->dev_nodes; + uint32_t dev_node_start = vPciDev->dev_node_start ? + vPciDev->dev_node_start : + ms->numa_state->num_nodes; + uint32_t dev_node_count = vPciDev->dev_nodes ? vPciDev->dev_nodes : 8; if (!vdev->sysfsdev || !vfio_pci_read_cohmem_support_sysfs(vdev)) { ret = -ENODEV; -- 2.17.1