Mostly the same as v2;

- patch 1 makes the error paths of vfio_get_device a bit simpler

- patch 2 introduces instance_finalize

- patch 3 makes the freeing of BARs RCU-friendly

Changes from v2:

1) not removing anymore the NULL assignment in vfio_put_base_device

2) patch 1 should "goto out_put" if vfio_populate_device fails (later
changed to "return ret" in patch 2).  The final code doesn't change;
this only matters for bisectability (and even then only in a corner case).

Thanks,

Paolo

Paolo Bonzini (3):
  vfio: cleanup vfio_get_device error path, remove vfio_populate_device callback
  vfio: free dynamically-allocated data in instance_finalize
  vfio: unmap and free BAR data in instance_finalize

 hw/vfio/common.c              | 36 ++++++++--------
 hw/vfio/pci.c                 | 96 ++++++++++++++++++++++++++++++++++---------
 include/hw/vfio/vfio-common.h |  1 -
 3 files changed, 92 insertions(+), 41 deletions(-)

-- 
1.8.3.1


Reply via email to