[libvirt] [PATCH 00/24] hostdev: Cleanups and fixes

Andrea Bolognani abologna at redhat.com
Mon Mar 7 17:24:16 UTC 2016


Part of an ongoing quest to fix:

  libvirt management of VFIO devices can lead to host crashes
  https://bugzilla.redhat.com/show_bug.cgi?id=1272300

Previous episode:

  [PATCH v2 0/9] PCI hostdev refactoring
  https://www.redhat.com/archives/libvir-list/2016-January/msg01066.html

The plan:

  Once this is in, rebase the series mentioned above on top of it;
  hopefully it will be smaller and easier to review. Once *that*
  is in, rebase / rewrite the actual bug fix - probably the latter,
  because the code has changed a lot since I posted it

In this episode:

  01-06  Cleanups in the test cases; mostly unrelated, but commit
         24 depends on them

  07-17  More cleanups and (I believe) farily uncontroversial
         changes, aimed at making the actual changes either
         smaller or more obvious

  18-19  Change in variable names that make the intended semantics
         clearer, which should in turn make the follow-up changes
         easier to review

  Up until here there should be basically no change in behavior

     20  Bug fix

     21  Improvement to error reporting

     22  The whole point of this series, and also the commit
         where it's more likely that I might have gotten something
         wrong :) I haven't been able to figure out a way to split
         it into smaller chunks, sorry

     23 Another bug fix

     24 Test the changes made by the rest of the series

Cheers.


Andrea Bolognani (24):
  tests: hostdev: Remove magic numbers
  tests: hostdev: Use better variable names
  tests: hostdev: Declare count inside CHECK_LIST_COUNT()
  tests: hostdev: Use size_t for count variables
  tests: hostdev: Add more checks on list size
  tests: hostdev: Group test cases
  hostdev: Make comments easier to change later
  hostdev: Remove false comment
  hostdev: Fix indentation
  hostdev: Remove explicit NULL checks
  hostdev: Remove redundant check
  hostdev: virHostdevIsPCINetDevice() should return a bool
  hostdev: Change argument order for virHostdevReattachPCIDevice()
  hostdev: Look up devices using IDs when possible
  hostdev: Remove virHostdevGetActivePCIHostDeviceList()
  hostdev: Rename hostdev_mgr -> mgr
  hostdev: Rename usesVfio -> usesVFIO
  hostdev: Use consistent variable names
  hostdev: Add more comments
  hostdev: Save netdev configuration of actual device
  hostdev: Stop early if unmanaged devices have not been detached
  hostdev: Streamline device ownership tracking
  hostdev: Use actual device when reattaching
  tests: hostdev: Add more tests

 src/util/virhostdev.c  | 660 +++++++++++++++++++++++++------------------------
 tests/virhostdevtest.c | 320 ++++++++++++++++++------
 2 files changed, 576 insertions(+), 404 deletions(-)

-- 
2.5.0




More information about the libvir-list mailing list