mbox series

[v2,0/2] kvm_io_bus_unregister_dev cleanup

Message ID 20230207123713.3905-1-wei.w.wang@intel.com (mailing list archive)
Headers show
Series kvm_io_bus_unregister_dev cleanup | expand

Message

Wang, Wei W Feb. 7, 2023, 12:37 p.m. UTC
This patchset moves kvm io_device destruction into
kvm_io_bus_unregister_dev. This reduces LOCs a bit for users and can 
avoid the leakage of destructing the device explicitly.
Accordingly, below cleanups are included:
- remove the exposure of kvm_iodevice_destructor and the invocation in
  the users as kvm_iodevice_destructor is now invoked in
  kvm_io_bus_unregister_dev;
- Change kvm_deassign_ioeventfd_idx to use list_for_each_entry as the 
  loop ends at the entry that's founded and deleted.

The patches are rebased to
https://github.com/kvm-x86/linux/commit/b1cb1fac22ab

Changelog:
v1->v2:
 - keep kfree(bus) when the new bus is successfully allocated
 - add patch 2

Previous version:
https://lore.kernel.org/lkml/20221229123302.4083-1-wei.w.wang@intel.com/

Wei Wang (2):
  KVM: destruct kvm_io_device while unregistering it from kvm_io_bus
  kvm/eventfd: use list_for_each_entry when deassign ioeventfd

 include/kvm/iodev.h       |  6 ------
 virt/kvm/coalesced_mmio.c |  9 ++-------
 virt/kvm/eventfd.c        |  6 ++----
 virt/kvm/kvm_main.c       | 23 +++++++++++++++--------
 4 files changed, 19 insertions(+), 25 deletions(-)

Comments

Sean Christopherson June 13, 2023, 11:21 p.m. UTC | #1
On Tue, 07 Feb 2023 20:37:11 +0800, Wei Wang wrote:
> This patchset moves kvm io_device destruction into
> kvm_io_bus_unregister_dev. This reduces LOCs a bit for users and can
> avoid the leakage of destructing the device explicitly.
> Accordingly, below cleanups are included:
> - remove the exposure of kvm_iodevice_destructor and the invocation in
>   the users as kvm_iodevice_destructor is now invoked in
>   kvm_io_bus_unregister_dev;
> - Change kvm_deassign_ioeventfd_idx to use list_for_each_entry as the
>   loop ends at the entry that's founded and deleted.
> 
> [...]

Applied to kvm-x86 generic, thanks!

[1/2] KVM: destruct kvm_io_device while unregistering it from kvm_io_bus
      https://github.com/kvm-x86/linux/commit/5ea5ca3c2b4b
[2/2] kvm/eventfd: use list_for_each_entry when deassign ioeventfd
      https://github.com/kvm-x86/linux/commit/cc77b95acf3c

--
https://github.com/kvm-x86/linux/tree/next
https://github.com/kvm-x86/linux/tree/fixes