Nova is not depending of neutron-sriov-agent to read the VFs. Nova is referring to libvirt which refers to udev events to update its cache.
Based on the code my thinking is that we restart Nova service before to have updated nova.conf that to whitelist the PCIs devices. I think that does not make sense to ask Nova to be restarted from here [0]. Basically we should ask for a restart after to have updated pci/passthrough_whitelist. Even if the VFs are not yet configured Nova will discover them during the next call to grab resources from host.
Nova is not depending of neutron-sriov-agent to read the VFs. Nova is referring to libvirt which refers to udev events to update its cache.
Based on the code my thinking is that we restart Nova service before to have updated nova.conf that to whitelist the PCIs devices. I think that does not make sense to ask Nova to be restarted from here [0]. Basically we should ask for a restart after to have updated pci/passthrough _whitelist. Even if the VFs are not yet configured Nova will discover them during the next call to grab resources from host.
[0] https:/ /github. com/openstack/ charm-neutron- openvswitch/ blob/ee81e0eaf5 3a9b64319947565 b378cee3e5d5f88 /hooks/ neutron_ ovs_utils. py#L663- L672