vfio/common: return early if space isn't empty
This is a trivial optimization. If there is active container in space, vfio_reset_handler will never be unregistered. So revert the check of space->containers and return early. Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com> Reviewed-by: Cédric Le Goater <clg@redhat.com> Reviewed-by: Eric Auger <eric.auger@redhat.com> Tested-by: Eric Auger <eric.auger@redhat.com> Tested-by: Nicolin Chen <nicolinc@nvidia.com> Signed-off-by: Cédric Le Goater <clg@redhat.com>
This commit is contained in:
parent
d6b5c4c1b5
commit
1eae5b7bd3
@ -1462,10 +1462,13 @@ VFIOAddressSpace *vfio_get_address_space(AddressSpace *as)
|
|||||||
|
|
||||||
void vfio_put_address_space(VFIOAddressSpace *space)
|
void vfio_put_address_space(VFIOAddressSpace *space)
|
||||||
{
|
{
|
||||||
if (QLIST_EMPTY(&space->containers)) {
|
if (!QLIST_EMPTY(&space->containers)) {
|
||||||
QLIST_REMOVE(space, list);
|
return;
|
||||||
g_free(space);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QLIST_REMOVE(space, list);
|
||||||
|
g_free(space);
|
||||||
|
|
||||||
if (QLIST_EMPTY(&vfio_address_spaces)) {
|
if (QLIST_EMPTY(&vfio_address_spaces)) {
|
||||||
qemu_unregister_reset(vfio_reset_handler, NULL);
|
qemu_unregister_reset(vfio_reset_handler, NULL);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user