[libvirt] [PATCH v4 00/14] Make virNodeDeviceObj and virNodeDeviceObjList private

John Ferlan jferlan at redhat.com
Mon Jul 3 21:25:16 UTC 2017


v3 here:
https://www.redhat.com/archives/libvir-list/2017-June/msg00155.html

Most patches were ACK'd in v3 (some with conditions).  Changes this time
around are:

-> Patch1:
  Make the call to virNodeDeviceObjFree in dev_refresh() prior to dev_create
  Move the virNodeDeviceObjFree in device_removed() to after the Unlock as
   it avoids the need for { } else { } (besides the *ObjFree checks for !dev
   anyway).

-> Patch2:
  Change as requested to remove the unnecessary obj = NULL in testDestroyVport
  Change as requested to goto cleanup in testStoragePoolDestroy

-> Patch3:
  Fixed the comments to have the right variable name

-> Patch4:
  Use "if ((obj = ...))) {" type syntax as suggested.

-> Patch5-9:
  No change

-> Patch10:
  Fix commit description

-> Patch11:
  No change

-> Patch 12:
  Fix the testNodeDeviceDestroy logic

-> Patch 13-14
  New patches that take the next two logical steps - objectifying the
   virNodeDeviceObjList and using a HashTable for access (along with all
   those bells and whistles).  Finally remove the need for driver level
   locks when accessing the @devs ObjList. 

John Ferlan (14):
  nodedev: Alter virNodeDeviceObjRemove
  test: Adjust cleanup/error paths for nodedev test APIs
  nodedev: Use common naming for virnodedeviceobj
  nodedev: Use consistent names for driver variables
  nodedev: Introduce virNodeDeviceObjNew
  nodedev: Introduce virNodeDeviceObjListNew
  nodedev: Alter node device obj list function names
  nodedev: Dereference the obj/def in virNodeDeviceObjListFind* APIs
  nodedev: Introduce virNodeDeviceGetSCSIHostCaps
  nodedev: Introduce virNodeDeviceObjListFindSCSIHostByWWNs
  nodedev: Privatize _virNodeDeviceObj and _virNodeDeviceObjList
  nodedev: Convert virNodeDeviceObj to use virObjectLockable
  nodedev: Convert virNodeDeviceObjListPtr to use hash tables
  nodedev: Remove driver locks around object list mgmt code

 src/conf/node_device_conf.c               |  82 +++
 src/conf/node_device_conf.h               |  20 +-
 src/conf/virnodedeviceobj.c               | 846 ++++++++++++++++++++----------
 src/conf/virnodedeviceobj.h               |  67 +--
 src/libvirt_private.syms                  |  20 +-
 src/node_device/node_device_driver.c      | 201 +++----
 src/node_device/node_device_hal.c         |  51 +-
 src/node_device/node_device_linux_sysfs.c |  77 +--
 src/node_device/node_device_udev.c        |  63 +--
 src/test/test_driver.c                    | 133 +++--
 10 files changed, 895 insertions(+), 665 deletions(-)

-- 
2.9.4




More information about the libvir-list mailing list