Why do we need it to be exactly the same value ? nextslot is just
an
efficiency optimization isn't it. ie, so instead of starting from
slot 0 and iterating over 'N' already used slots till we find a free
slot, we can get the next free slot in 1 step. As such do we really
need to worry about restoring it to the same value after restarting
libvirtd.
That was my understanding too. But Eric was concerned (in an older thread)
about hotplugging PCI devices in a nonmonotonic way. He thinks it could upset
Windows guests. Of course, if nextslot ever wraps from
QEMU_PCI_ADDRESS_LAST_SLOT back to zero, such guests would be doomed anyway so
we are only a bit nicer to them. I don't know if this is a real issue or not
since I haven't met a Windows guest which I'd like to hotplug a PCI device in.
Jirka