network_conf: Make virNetworkObj actually virObject

So far it's just a structure which happens to have 'Obj' in its
name, but otherwise it not related to virObject at all. No
reference counting, not virObjectLock(), nothing.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Michal Privoznik 2015-02-25 14:08:19 +01:00
parent 8529d5ec6b
commit ea57049156
9 changed files with 113 additions and 122 deletions

2
cfg.mk
View File

@ -160,7 +160,6 @@ useless_free_options = \
--name=virNWFilterRuleDefFree \ --name=virNWFilterRuleDefFree \
--name=virNWFilterRuleInstFree \ --name=virNWFilterRuleInstFree \
--name=virNetworkDefFree \ --name=virNetworkDefFree \
--name=virNetworkObjFree \
--name=virNodeDeviceDefFree \ --name=virNodeDeviceDefFree \
--name=virNodeDeviceObjFree \ --name=virNodeDeviceObjFree \
--name=virObjectUnref \ --name=virObjectUnref \
@ -249,7 +248,6 @@ useless_free_options = \
# y virNetworkDefFree # y virNetworkDefFree
# n virNetworkFree (returns int) # n virNetworkFree (returns int)
# n virNetworkFreeName (returns int) # n virNetworkFreeName (returns int)
# y virNetworkObjFree
# n virNodeDevCapsDefFree FIXME # n virNodeDevCapsDefFree FIXME
# y virNodeDeviceDefFree # y virNodeDeviceDefFree
# n virNodeDeviceFree (returns int) # n virNodeDeviceFree (returns int)

View File

@ -79,11 +79,19 @@ VIR_ENUM_IMPL(virNetworkForwardDriverName,
VIR_ENUM_IMPL(virNetworkTaint, VIR_NETWORK_TAINT_LAST, VIR_ENUM_IMPL(virNetworkTaint, VIR_NETWORK_TAINT_LAST,
"hook-script"); "hook-script");
static virClassPtr virNetworkObjClass;
static virClassPtr virNetworkObjListClass; static virClassPtr virNetworkObjListClass;
static void virNetworkObjDispose(void *obj);
static void virNetworkObjListDispose(void *obj); static void virNetworkObjListDispose(void *obj);
static int virNetworkObjOnceInit(void) static int virNetworkObjOnceInit(void)
{ {
if (!(virNetworkObjClass = virClassNew(virClassForObjectLockable(),
"virNetworkObj",
sizeof(virNetworkObj),
virNetworkObjDispose)))
return -1;
if (!(virNetworkObjListClass = virClassNew(virClassForObject(), if (!(virNetworkObjListClass = virClassNew(virClassForObject(),
"virNetworkObjList", "virNetworkObjList",
sizeof(virNetworkObjList), sizeof(virNetworkObjList),
@ -95,11 +103,30 @@ static int virNetworkObjOnceInit(void)
VIR_ONCE_GLOBAL_INIT(virNetworkObj) VIR_ONCE_GLOBAL_INIT(virNetworkObj)
static void virNetworkObjPtr
virNetworkObjListDataFree(void *payload, const void *name ATTRIBUTE_UNUSED) virNetworkObjNew(void)
{ {
virNetworkObjPtr obj = payload; virNetworkObjPtr net;
virNetworkObjFree(obj);
if (virNetworkObjInitialize() < 0)
return NULL;
if (!(net = virObjectLockableNew(virNetworkObjClass)))
return NULL;
if (!(net->class_id = virBitmapNew(CLASS_ID_BITMAP_SIZE)))
goto error;
/* The first three class IDs are already taken */
ignore_value(virBitmapSetBit(net->class_id, 0));
ignore_value(virBitmapSetBit(net->class_id, 1));
ignore_value(virBitmapSetBit(net->class_id, 2));
return net;
error:
virObjectUnref(net);
return NULL;
} }
virNetworkObjListPtr virNetworkObjListNew(void) virNetworkObjListPtr virNetworkObjListNew(void)
@ -112,7 +139,7 @@ virNetworkObjListPtr virNetworkObjListNew(void)
if (!(nets = virObjectNew(virNetworkObjListClass))) if (!(nets = virObjectNew(virNetworkObjListClass)))
return NULL; return NULL;
if (!(nets->objs = virHashCreate(50, virNetworkObjListDataFree))) { if (!(nets->objs = virHashCreate(50, virObjectFreeHashData))) {
virObjectUnref(nets); virObjectUnref(nets);
return NULL; return NULL;
} }
@ -130,7 +157,7 @@ virNetworkObjPtr virNetworkObjFindByUUID(virNetworkObjListPtr nets,
ret = virHashLookup(nets->objs, uuidstr); ret = virHashLookup(nets->objs, uuidstr);
if (ret) if (ret)
virNetworkObjLock(ret); virObjectLock(ret);
return ret; return ret;
} }
@ -142,10 +169,10 @@ virNetworkObjSearchName(const void *payload,
virNetworkObjPtr net = (virNetworkObjPtr) payload; virNetworkObjPtr net = (virNetworkObjPtr) payload;
int want = 0; int want = 0;
virNetworkObjLock(net); virObjectLock(net);
if (STREQ(net->def->name, (const char *)data)) if (STREQ(net->def->name, (const char *)data))
want = 1; want = 1;
virNetworkObjUnlock(net); virObjectUnlock(net);
return want; return want;
} }
@ -156,7 +183,7 @@ virNetworkObjPtr virNetworkObjFindByName(virNetworkObjListPtr nets,
ret = virHashSearch(nets->objs, virNetworkObjSearchName, name); ret = virHashSearch(nets->objs, virNetworkObjSearchName, name);
if (ret) if (ret)
virNetworkObjLock(ret); virObjectLock(ret);
return ret; return ret;
} }
@ -318,18 +345,14 @@ virNetworkDefFree(virNetworkDefPtr def)
VIR_FREE(def); VIR_FREE(def);
} }
void virNetworkObjFree(virNetworkObjPtr net) static void
virNetworkObjDispose(void *obj)
{ {
if (!net) virNetworkObjPtr net = obj;
return;
virNetworkDefFree(net->def); virNetworkDefFree(net->def);
virNetworkDefFree(net->newDef); virNetworkDefFree(net->newDef);
virBitmapFree(net->class_id); virBitmapFree(net->class_id);
virMutexDestroy(&net->lock);
VIR_FREE(net);
} }
static void static void
@ -427,35 +450,21 @@ virNetworkAssignDef(virNetworkObjListPtr nets,
return network; return network;
} }
if (VIR_ALLOC(network) < 0) if (!(network = virNetworkObjNew()))
return NULL; return NULL;
if (virMutexInit(&network->lock) < 0) { virObjectLock(network);
virReportError(VIR_ERR_INTERNAL_ERROR,
"%s", _("cannot initialize mutex"));
VIR_FREE(network);
return NULL;
}
virNetworkObjLock(network);
if (!(network->class_id = virBitmapNew(CLASS_ID_BITMAP_SIZE)))
goto error;
virUUIDFormat(def->uuid, uuidstr); virUUIDFormat(def->uuid, uuidstr);
if (virHashAddEntry(nets->objs, uuidstr, network) < 0) if (virHashAddEntry(nets->objs, uuidstr, network) < 0)
goto error; goto error;
/* The first three class IDs are already taken */
ignore_value(virBitmapSetBit(network->class_id, 0));
ignore_value(virBitmapSetBit(network->class_id, 1));
ignore_value(virBitmapSetBit(network->class_id, 2));
network->def = def; network->def = def;
network->persistent = !live; network->persistent = !live;
return network; return network;
error: error:
virNetworkObjUnlock(network); virObjectUnlock(network);
virNetworkObjFree(network); virObjectUnref(network);
return NULL; return NULL;
} }
@ -624,7 +633,7 @@ void virNetworkRemoveInactive(virNetworkObjListPtr nets,
char uuidstr[VIR_UUID_STRING_BUFLEN]; char uuidstr[VIR_UUID_STRING_BUFLEN];
virUUIDFormat(net->def->uuid, uuidstr); virUUIDFormat(net->def->uuid, uuidstr);
virNetworkObjUnlock(net); virObjectUnlock(net);
virHashRemoveEntry(nets->objs, uuidstr); virHashRemoveEntry(nets->objs, uuidstr);
} }
@ -3026,7 +3035,7 @@ virNetworkLoadAllState(virNetworkObjListPtr nets,
continue; continue;
if ((net = virNetworkLoadState(nets, stateDir, entry->d_name))) if ((net = virNetworkLoadState(nets, stateDir, entry->d_name)))
virNetworkObjUnlock(net); virObjectUnlock(net);
} }
closedir(dir); closedir(dir);
@ -3067,7 +3076,7 @@ int virNetworkLoadAllConfigs(virNetworkObjListPtr nets,
autostartDir, autostartDir,
entry->d_name); entry->d_name);
if (net) if (net)
virNetworkObjUnlock(net); virObjectUnlock(net);
} }
closedir(dir); closedir(dir);
@ -3129,12 +3138,12 @@ virNetworkBridgeInUseHelper(const void *payload,
virNetworkObjPtr net = (virNetworkObjPtr) payload; virNetworkObjPtr net = (virNetworkObjPtr) payload;
const struct virNetworkBridgeInUseHelperData *data = opaque; const struct virNetworkBridgeInUseHelperData *data = opaque;
virNetworkObjLock(net); virObjectLock(net);
if (net->def->bridge && if (net->def->bridge &&
STREQ(net->def->bridge, data->bridge) && STREQ(net->def->bridge, data->bridge) &&
!(data->skipname && STREQ(net->def->name, data->skipname))) !(data->skipname && STREQ(net->def->name, data->skipname)))
ret = 1; ret = 1;
virNetworkObjUnlock(net); virObjectUnlock(net);
return ret; return ret;
} }
@ -4252,21 +4261,11 @@ virNetworkObjIsDuplicate(virNetworkObjListPtr nets,
cleanup: cleanup:
if (net) if (net)
virNetworkObjUnlock(net); virObjectUnlock(net);
return ret; return ret;
} }
void virNetworkObjLock(virNetworkObjPtr obj)
{
virMutexLock(&obj->lock);
}
void virNetworkObjUnlock(virNetworkObjPtr obj)
{
virMutexUnlock(&obj->lock);
}
#define MATCH(FLAG) (flags & (FLAG)) #define MATCH(FLAG) (flags & (FLAG))
static bool static bool
virNetworkMatch(virNetworkObjPtr netobj, virNetworkMatch(virNetworkObjPtr netobj,
@ -4321,7 +4320,7 @@ virNetworkObjListPopulate(void *payload,
if (data->error) if (data->error)
return; return;
virNetworkObjLock(obj); virObjectLock(obj);
if (data->filter && if (data->filter &&
!data->filter(data->conn, obj->def)) !data->filter(data->conn, obj->def))
@ -4343,7 +4342,7 @@ virNetworkObjListPopulate(void *payload,
data->nets[data->nnets++] = net; data->nets[data->nnets++] = net;
cleanup: cleanup:
virNetworkObjUnlock(obj); virObjectUnlock(obj);
} }
int int
@ -4443,7 +4442,7 @@ virNetworkObjListGetHelper(void *payload,
data->got == data->nnames) data->got == data->nnames)
return; return;
virNetworkObjLock(obj); virObjectLock(obj);
if (data->filter && if (data->filter &&
!data->filter(data->conn, obj->def)) !data->filter(data->conn, obj->def))
@ -4460,7 +4459,7 @@ virNetworkObjListGetHelper(void *payload,
} }
cleanup: cleanup:
virNetworkObjUnlock(obj); virObjectUnlock(obj);
} }
int int
@ -4517,9 +4516,9 @@ virNetworkObjListPruneHelper(const void *payload,
virNetworkObjPtr obj = (virNetworkObjPtr) payload; virNetworkObjPtr obj = (virNetworkObjPtr) payload;
int want = 0; int want = 0;
virNetworkObjLock(obj); virObjectLock(obj);
want = virNetworkMatch(obj, data->flags); want = virNetworkMatch(obj, data->flags);
virNetworkObjUnlock(obj); virObjectUnlock(obj);
return want; return want;
} }

View File

@ -258,7 +258,7 @@ struct _virNetworkDef {
typedef struct _virNetworkObj virNetworkObj; typedef struct _virNetworkObj virNetworkObj;
typedef virNetworkObj *virNetworkObjPtr; typedef virNetworkObj *virNetworkObjPtr;
struct _virNetworkObj { struct _virNetworkObj {
virMutex lock; virObjectLockable parent;
pid_t dnsmasqPid; pid_t dnsmasqPid;
pid_t radvdPid; pid_t radvdPid;
@ -275,6 +275,8 @@ struct _virNetworkObj {
unsigned int taint; unsigned int taint;
}; };
virNetworkObjPtr virNetworkObjNew(void);
typedef struct _virNetworkObjList virNetworkObjList; typedef struct _virNetworkObjList virNetworkObjList;
typedef virNetworkObjList *virNetworkObjListPtr; typedef virNetworkObjList *virNetworkObjListPtr;
@ -305,7 +307,6 @@ bool virNetworkObjTaint(virNetworkObjPtr obj,
virNetworkTaintFlags taint); virNetworkTaintFlags taint);
void virNetworkDefFree(virNetworkDefPtr def); void virNetworkDefFree(virNetworkDefPtr def);
void virNetworkObjFree(virNetworkObjPtr net);
typedef bool (*virNetworkObjListFilter)(virConnectPtr conn, typedef bool (*virNetworkObjListFilter)(virConnectPtr conn,
virNetworkDefPtr def); virNetworkDefPtr def);
@ -412,9 +413,6 @@ int virNetworkObjIsDuplicate(virNetworkObjListPtr nets,
virNetworkDefPtr def, virNetworkDefPtr def,
bool check_active); bool check_active);
void virNetworkObjLock(virNetworkObjPtr obj);
void virNetworkObjUnlock(virNetworkObjPtr obj);
VIR_ENUM_DECL(virNetworkForward) VIR_ENUM_DECL(virNetworkForward)
# define VIR_CONNECT_LIST_NETWORKS_FILTERS_ACTIVE \ # define VIR_CONNECT_LIST_NETWORKS_FILTERS_ACTIVE \

View File

@ -565,7 +565,6 @@ virNetworkLoadAllState;
virNetworkObjAssignDef; virNetworkObjAssignDef;
virNetworkObjFindByName; virNetworkObjFindByName;
virNetworkObjFindByUUID; virNetworkObjFindByUUID;
virNetworkObjFree;
virNetworkObjGetPersistentDef; virNetworkObjGetPersistentDef;
virNetworkObjIsDuplicate; virNetworkObjIsDuplicate;
virNetworkObjListExport; virNetworkObjListExport;
@ -574,11 +573,10 @@ virNetworkObjListGetNames;
virNetworkObjListNew; virNetworkObjListNew;
virNetworkObjListNumOfNetworks; virNetworkObjListNumOfNetworks;
virNetworkObjListPrune; virNetworkObjListPrune;
virNetworkObjLock; virNetworkObjNew;
virNetworkObjReplacePersistentDef; virNetworkObjReplacePersistentDef;
virNetworkObjSetDefTransient; virNetworkObjSetDefTransient;
virNetworkObjTaint; virNetworkObjTaint;
virNetworkObjUnlock;
virNetworkObjUnsetDefTransient; virNetworkObjUnsetDefTransient;
virNetworkObjUpdate; virNetworkObjUpdate;
virNetworkRemoveInactive; virNetworkRemoveInactive;

View File

@ -348,9 +348,9 @@ networkUpdateState(virNetworkObjPtr obj,
{ {
int ret = -1; int ret = -1;
virNetworkObjLock(obj); virObjectLock(obj);
if (!virNetworkObjIsActive(obj)) { if (!virNetworkObjIsActive(obj)) {
virNetworkObjUnlock(obj); virObjectUnlock(obj);
return 0; return 0;
} }
@ -403,7 +403,7 @@ networkUpdateState(virNetworkObjPtr obj,
ret = 0; ret = 0;
cleanup: cleanup:
virNetworkObjUnlock(obj); virObjectUnlock(obj);
return ret; return ret;
} }
@ -413,7 +413,7 @@ networkAutostartConfig(virNetworkObjPtr net,
{ {
int ret = -1; int ret = -1;
virNetworkObjLock(net); virObjectLock(net);
if (net->autostart && if (net->autostart &&
!virNetworkObjIsActive(net) && !virNetworkObjIsActive(net) &&
networkStartNetwork(net) < 0) networkStartNetwork(net) < 0)
@ -421,7 +421,7 @@ networkAutostartConfig(virNetworkObjPtr net,
ret = 0; ret = 0;
cleanup: cleanup:
virNetworkObjUnlock(net); virObjectUnlock(net);
return ret; return ret;
} }
@ -1745,7 +1745,7 @@ networkRefreshDaemonsHelper(virNetworkObjPtr net,
void *opaque ATTRIBUTE_UNUSED) void *opaque ATTRIBUTE_UNUSED)
{ {
virNetworkObjLock(net); virObjectLock(net);
if (virNetworkObjIsActive(net) && if (virNetworkObjIsActive(net) &&
((net->def->forward.type == VIR_NETWORK_FORWARD_NONE) || ((net->def->forward.type == VIR_NETWORK_FORWARD_NONE) ||
(net->def->forward.type == VIR_NETWORK_FORWARD_NAT) || (net->def->forward.type == VIR_NETWORK_FORWARD_NAT) ||
@ -1759,7 +1759,7 @@ networkRefreshDaemonsHelper(virNetworkObjPtr net,
networkRefreshDhcpDaemon(net); networkRefreshDhcpDaemon(net);
networkRefreshRadvd(net); networkRefreshRadvd(net);
} }
virNetworkObjUnlock(net); virObjectUnlock(net);
return 0; return 0;
} }
@ -1780,7 +1780,7 @@ networkReloadFirewallRulesHelper(virNetworkObjPtr net,
void *opaque ATTRIBUTE_UNUSED) void *opaque ATTRIBUTE_UNUSED)
{ {
virNetworkObjLock(net); virObjectLock(net);
if (virNetworkObjIsActive(net) && if (virNetworkObjIsActive(net) &&
((net->def->forward.type == VIR_NETWORK_FORWARD_NONE) || ((net->def->forward.type == VIR_NETWORK_FORWARD_NONE) ||
(net->def->forward.type == VIR_NETWORK_FORWARD_NAT) || (net->def->forward.type == VIR_NETWORK_FORWARD_NAT) ||
@ -1793,7 +1793,7 @@ networkReloadFirewallRulesHelper(virNetworkObjPtr net,
/* failed to add but already logged */ /* failed to add but already logged */
} }
} }
virNetworkObjUnlock(net); virObjectUnlock(net);
return 0; return 0;
} }
@ -2497,7 +2497,7 @@ static virNetworkPtr networkLookupByUUID(virConnectPtr conn,
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return ret; return ret;
} }
@ -2523,7 +2523,7 @@ static virNetworkPtr networkLookupByName(virConnectPtr conn,
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return ret; return ret;
} }
@ -2671,7 +2671,7 @@ static int networkIsActive(virNetworkPtr net)
cleanup: cleanup:
if (obj) if (obj)
virNetworkObjUnlock(obj); virObjectUnlock(obj);
return ret; return ret;
} }
@ -2690,7 +2690,7 @@ static int networkIsPersistent(virNetworkPtr net)
cleanup: cleanup:
if (obj) if (obj)
virNetworkObjUnlock(obj); virObjectUnlock(obj);
return ret; return ret;
} }
@ -2960,7 +2960,7 @@ static virNetworkPtr networkCreateXML(virConnectPtr conn, const char *xml)
if (event) if (event)
virObjectEventStateQueue(driver->networkEventState, event); virObjectEventStateQueue(driver->networkEventState, event);
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
networkDriverUnlock(); networkDriverUnlock();
return ret; return ret;
} }
@ -3017,7 +3017,7 @@ static virNetworkPtr networkDefineXML(virConnectPtr conn, const char *xml)
if (freeDef) if (freeDef)
virNetworkDefFree(def); virNetworkDefFree(def);
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
networkDriverUnlock(); networkDriverUnlock();
return ret; return ret;
} }
@ -3077,7 +3077,7 @@ networkUndefine(virNetworkPtr net)
if (event) if (event)
virObjectEventStateQueue(driver->networkEventState, event); virObjectEventStateQueue(driver->networkEventState, event);
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
networkDriverUnlock(); networkDriverUnlock();
return ret; return ret;
} }
@ -3249,7 +3249,7 @@ networkUpdate(virNetworkPtr net,
ret = 0; ret = 0;
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
networkDriverUnlock(); networkDriverUnlock();
return ret; return ret;
} }
@ -3284,7 +3284,7 @@ static int networkCreate(virNetworkPtr net)
if (event) if (event)
virObjectEventStateQueue(driver->networkEventState, event); virObjectEventStateQueue(driver->networkEventState, event);
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
networkDriverUnlock(); networkDriverUnlock();
return ret; return ret;
} }
@ -3335,7 +3335,7 @@ static int networkDestroy(virNetworkPtr net)
if (event) if (event)
virObjectEventStateQueue(driver->networkEventState, event); virObjectEventStateQueue(driver->networkEventState, event);
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
networkDriverUnlock(); networkDriverUnlock();
return ret; return ret;
} }
@ -3364,7 +3364,7 @@ static char *networkGetXMLDesc(virNetworkPtr net,
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return ret; return ret;
} }
@ -3389,7 +3389,7 @@ static char *networkGetBridgeName(virNetworkPtr net) {
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return bridge; return bridge;
} }
@ -3410,7 +3410,7 @@ static int networkGetAutostart(virNetworkPtr net,
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return ret; return ret;
} }
@ -3478,7 +3478,7 @@ static int networkSetAutostart(virNetworkPtr net,
VIR_FREE(configFile); VIR_FREE(configFile);
VIR_FREE(autostartLink); VIR_FREE(autostartLink);
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
networkDriverUnlock(); networkDriverUnlock();
return ret; return ret;
} }
@ -3651,7 +3651,7 @@ networkGetDHCPLeases(virNetworkPtr network,
virJSONValueFree(leases_array); virJSONValueFree(leases_array);
if (obj) if (obj)
virNetworkObjUnlock(obj); virObjectUnlock(obj);
return rv; return rv;
@ -4124,7 +4124,7 @@ networkAllocateActualDevice(virDomainDefPtr dom,
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return ret; return ret;
error: error:
@ -4327,7 +4327,7 @@ networkNotifyActualDevice(virDomainDefPtr dom,
ret = 0; ret = 0;
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return ret; return ret;
error: error:
@ -4477,7 +4477,7 @@ networkReleaseActualDevice(virDomainDefPtr dom,
ret = 0; ret = 0;
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
if (iface->type == VIR_DOMAIN_NET_TYPE_NETWORK) { if (iface->type == VIR_DOMAIN_NET_TYPE_NETWORK) {
virDomainActualNetDefFree(iface->data.network.actual); virDomainActualNetDefFree(iface->data.network.actual);
iface->data.network.actual = NULL; iface->data.network.actual = NULL;
@ -4581,7 +4581,7 @@ networkGetNetworkAddress(const char *netname, char **netaddr)
ret = 0; ret = 0;
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return ret; return ret;
} }

View File

@ -230,7 +230,7 @@ parallelsLoadNetwork(parallelsConnPtr privconn, virJSONValuePtr jobj)
goto cleanup; goto cleanup;
net->active = 1; net->active = 1;
net->autostart = 1; net->autostart = 1;
virNetworkObjUnlock(net); virObjectUnlock(net);
return net; return net;
cleanup: cleanup:
@ -265,7 +265,7 @@ parallelsAddRoutedNetwork(parallelsConnPtr privconn)
} }
net->active = 1; net->active = 1;
net->autostart = 1; net->autostart = 1;
virNetworkObjUnlock(net); virObjectUnlock(net);
return net; return net;
@ -445,7 +445,7 @@ static virNetworkPtr parallelsNetworkLookupByUUID(virConnectPtr conn,
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return ret; return ret;
} }
@ -469,7 +469,7 @@ static virNetworkPtr parallelsNetworkLookupByName(virConnectPtr conn,
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return ret; return ret;
} }
@ -496,7 +496,7 @@ static char *parallelsNetworkGetXMLDesc(virNetworkPtr net,
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return ret; return ret;
} }
@ -517,7 +517,7 @@ static int parallelsNetworkIsActive(virNetworkPtr net)
cleanup: cleanup:
if (obj) if (obj)
virNetworkObjUnlock(obj); virObjectUnlock(obj);
return ret; return ret;
} }
@ -538,7 +538,7 @@ static int parallelsNetworkIsPersistent(virNetworkPtr net)
cleanup: cleanup:
if (obj) if (obj)
virNetworkObjUnlock(obj); virObjectUnlock(obj);
return ret; return ret;
} }
@ -563,7 +563,7 @@ static int parallelsNetworkGetAutostart(virNetworkPtr net,
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
return ret; return ret;
} }

View File

@ -787,7 +787,7 @@ testOpenDefault(virConnectPtr conn)
goto error; goto error;
} }
netobj->active = 1; netobj->active = 1;
virNetworkObjUnlock(netobj); virObjectUnlock(netobj);
if (!(interfacedef = virInterfaceDefParseString(defaultInterfaceXML))) if (!(interfacedef = virInterfaceDefParseString(defaultInterfaceXML)))
goto error; goto error;
@ -1155,7 +1155,7 @@ testParseNetworks(testConnPtr privconn,
} }
obj->active = 1; obj->active = 1;
virNetworkObjUnlock(obj); virObjectUnlock(obj);
} }
ret = 0; ret = 0;
@ -3508,7 +3508,7 @@ static virNetworkPtr testNetworkLookupByUUID(virConnectPtr conn,
cleanup: cleanup:
if (net) if (net)
virNetworkObjUnlock(net); virObjectUnlock(net);
return ret; return ret;
} }
@ -3532,7 +3532,7 @@ static virNetworkPtr testNetworkLookupByName(virConnectPtr conn,
cleanup: cleanup:
if (net) if (net)
virNetworkObjUnlock(net); virObjectUnlock(net);
return ret; return ret;
} }
@ -3621,7 +3621,7 @@ static int testNetworkIsActive(virNetworkPtr net)
cleanup: cleanup:
if (obj) if (obj)
virNetworkObjUnlock(obj); virObjectUnlock(obj);
return ret; return ret;
} }
@ -3642,7 +3642,7 @@ static int testNetworkIsPersistent(virNetworkPtr net)
cleanup: cleanup:
if (obj) if (obj)
virNetworkObjUnlock(obj); virObjectUnlock(obj);
return ret; return ret;
} }
@ -3675,7 +3675,7 @@ static virNetworkPtr testNetworkCreateXML(virConnectPtr conn, const char *xml)
if (event) if (event)
testObjectEventQueue(privconn, event); testObjectEventQueue(privconn, event);
if (net) if (net)
virNetworkObjUnlock(net); virObjectUnlock(net);
testDriverUnlock(privconn); testDriverUnlock(privconn);
return ret; return ret;
} }
@ -3708,7 +3708,7 @@ virNetworkPtr testNetworkDefineXML(virConnectPtr conn, const char *xml)
if (event) if (event)
testObjectEventQueue(privconn, event); testObjectEventQueue(privconn, event);
if (net) if (net)
virNetworkObjUnlock(net); virObjectUnlock(net);
testDriverUnlock(privconn); testDriverUnlock(privconn);
return ret; return ret;
} }
@ -3746,7 +3746,7 @@ static int testNetworkUndefine(virNetworkPtr network)
if (event) if (event)
testObjectEventQueue(privconn, event); testObjectEventQueue(privconn, event);
if (privnet) if (privnet)
virNetworkObjUnlock(privnet); virObjectUnlock(privnet);
testDriverUnlock(privconn); testDriverUnlock(privconn);
return ret; return ret;
} }
@ -3796,7 +3796,7 @@ testNetworkUpdate(virNetworkPtr net,
ret = 0; ret = 0;
cleanup: cleanup:
if (network) if (network)
virNetworkObjUnlock(network); virObjectUnlock(network);
testDriverUnlock(privconn); testDriverUnlock(privconn);
return ret; return ret;
} }
@ -3833,7 +3833,7 @@ static int testNetworkCreate(virNetworkPtr network)
if (event) if (event)
testObjectEventQueue(privconn, event); testObjectEventQueue(privconn, event);
if (privnet) if (privnet)
virNetworkObjUnlock(privnet); virObjectUnlock(privnet);
return ret; return ret;
} }
@ -3866,7 +3866,7 @@ static int testNetworkDestroy(virNetworkPtr network)
if (event) if (event)
testObjectEventQueue(privconn, event); testObjectEventQueue(privconn, event);
if (privnet) if (privnet)
virNetworkObjUnlock(privnet); virObjectUnlock(privnet);
testDriverUnlock(privconn); testDriverUnlock(privconn);
return ret; return ret;
} }
@ -3893,7 +3893,7 @@ static char *testNetworkGetXMLDesc(virNetworkPtr network,
cleanup: cleanup:
if (privnet) if (privnet)
virNetworkObjUnlock(privnet); virObjectUnlock(privnet);
return ret; return ret;
} }
@ -3922,7 +3922,7 @@ static char *testNetworkGetBridgeName(virNetworkPtr network) {
cleanup: cleanup:
if (privnet) if (privnet)
virNetworkObjUnlock(privnet); virObjectUnlock(privnet);
return bridge; return bridge;
} }
@ -3947,7 +3947,7 @@ static int testNetworkGetAutostart(virNetworkPtr network,
cleanup: cleanup:
if (privnet) if (privnet)
virNetworkObjUnlock(privnet); virObjectUnlock(privnet);
return ret; return ret;
} }
@ -3972,7 +3972,7 @@ static int testNetworkSetAutostart(virNetworkPtr network,
cleanup: cleanup:
if (privnet) if (privnet)
virNetworkObjUnlock(privnet); virObjectUnlock(privnet);
return ret; return ret;
} }

View File

@ -40,7 +40,7 @@ testCompareXMLToConfFiles(const char *inxml, const char *outconf, dnsmasqCapsPtr
if (!(dev = virNetworkDefParseString(inXmlData))) if (!(dev = virNetworkDefParseString(inXmlData)))
goto fail; goto fail;
if (VIR_ALLOC(obj) < 0) if (!(obj = virNetworkObjNew()))
goto fail; goto fail;
obj->def = dev; obj->def = dev;
@ -66,7 +66,7 @@ testCompareXMLToConfFiles(const char *inxml, const char *outconf, dnsmasqCapsPtr
VIR_FREE(actual); VIR_FREE(actual);
VIR_FREE(pidfile); VIR_FREE(pidfile);
virCommandFree(cmd); virCommandFree(cmd);
virNetworkObjFree(obj); virObjectUnref(obj);
dnsmasqContextFree(dctx); dnsmasqContextFree(dctx);
return ret; return ret;
} }

View File

@ -84,7 +84,6 @@ let lockedObjMethods = [
*) *)
let objectLockMethods = [ let objectLockMethods = [
"virDomainObjLock"; "virDomainObjLock";
"virNetworkObjLock";
"virStoragePoolObjLock"; "virStoragePoolObjLock";
"virNodeDevObjLock" "virNodeDevObjLock"
] ]
@ -99,7 +98,6 @@ let objectLockMethods = [
*) *)
let objectUnlockMethods = [ let objectUnlockMethods = [
"virDomainObjUnlock"; "virDomainObjUnlock";
"virNetworkObjUnlock";
"virStoragePoolObjUnlock"; "virStoragePoolObjUnlock";
"virNodeDevObjUnlock" "virNodeDevObjUnlock"
] ]