mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-23 06:05:27 +00:00
conf: start search for next unused PCI address at same slot as previous find
There is a very slight time advantage to beginning the search for the next unused PCI address at the slot *after* the previous find (which is now used), but if we do that, we will miss allocating the other functions of the same slot (when we implement a VIR_PCI_CONNECT_AGGREGATE_SLOT flag to support that).
This commit is contained in:
parent
99bf66f3fa
commit
66e0b08d34
@ -748,18 +748,14 @@ virDomainPCIAddressGetNextSlot(virDomainPCIAddressSetPtr addrs,
|
||||
}
|
||||
|
||||
/* ...unless this search is for the exact same type of device as
|
||||
* last time, then continue the search from the next slot after
|
||||
* the previous match (the "next slot" may possibly be the first
|
||||
* slot of the next bus).
|
||||
* last time, then continue the search from the slot where we
|
||||
* found the previous match (it's possible there will still be a
|
||||
* function available on that slot).
|
||||
*/
|
||||
if (flags == addrs->lastFlags) {
|
||||
if (flags == addrs->lastFlags)
|
||||
a = addrs->lastaddr;
|
||||
if (++a.slot > addrs->buses[a.bus].maxSlot &&
|
||||
++a.bus < addrs->nbuses)
|
||||
a.slot = addrs->buses[a.bus].minSlot;
|
||||
} else {
|
||||
else
|
||||
a.slot = addrs->buses[0].minSlot;
|
||||
}
|
||||
|
||||
/* if the caller asks for "any function", give them function 0 */
|
||||
if (function == -1)
|
||||
|
Loading…
Reference in New Issue
Block a user