The patchset starts slowly, with small patches, and small
changes, accelerating towards the end, with big changes.
I know that network driver is not used as intensely as domain
drivers, but hey, if we remove 100 lines (and substitute some
others) we get fine grained locking! And cleaner code, of course.
Oh, and this is meant for next release, obviously :)
Michal Privoznik (31):
networkLookupByUUID: Improve error message
bridge_driver: Don't check network active unlocked
testNetworkUpdate: Unlock network at the end
networkGetNetworkAddress: Drop empty 'error' label
virNetworkObjIsDuplicate: s/@doms/@nets/
virNetworkObjListFree: Accept NULL
virNetworkObjListExport: Pass virNetworkObjListPtr
test_driver: s/virNetworkObjList/virNetworkObjListPtr/
parallels: s/virNetworkObjList/virNetworkObjListPtr/
bridge_driver: s/virNetworkObjList/virNetworkObjListPtr/
conf: s/virNetworkFindByUUID/virNetworkObjFindByUUID/
conf: s/virNetworkFindByUUID/virNetworkObjFindByUUID/
network_conf: Introduce virNetworkObjListForEach
network_conf: Introduce virNetworkObjListGetNames
network_conf: Introduce virNetworkObjListNumOfNetworks
bridge_driver: Adapt to new virNetworkObjList accessors
test_driver: Adapt to new virNetworkObjList accessors
parallels_network: Adapt to new virNetworkObjList accessors
network_conf: Turn virNetworkObjList into virObject
network_conf: Turn struct _virNetworkObjList private
network_conf: Make virNetworkObj actually virObject
virNetworkObjList: Derive from virObjectLockableClass
network_conf: Introduce virNetworkObjEndAPI
bridge_driver: Use virNetworkObjEndAPI
test_driver: Use virNetworkObjEndAPI
parallels_network: Use virNetworkObjEndAPI
virNetworkObjListPtr: Make APIs self-locking
virNetworkObjFindBy*: Return an reference to found object
bridge_driver: Drop networkDriverLock() from almost everywhere
test_driver: Drop testDriverLock() from almost everywhere
parallels_network: Drop parallelsDriverLock() from everywhere.
cfg.mk | 3 -
src/conf/network_conf.c | 372 +++++++++++++++++++-------
src/conf/network_conf.h | 51 ++--
src/libvirt_private.syms | 14 +-
src/network/bridge_driver.c | 502 ++++++++++++++---------------------
src/network/bridge_driver_platform.h | 2 +-
src/parallels/parallels_driver.c | 5 +-
src/parallels/parallels_network.c | 144 +++-------
src/parallels/parallels_utils.h | 2 +-
src/test/test_driver.c | 223 ++++------------
tests/networkxml2conftest.c | 4 +-
tests/objectlocking.ml | 2 -
12 files changed, 612 insertions(+), 712 deletions(-)
--
2.0.5