diff options
author | Tim Wiederhake <twiederh@redhat.com> | 2022-02-04 16:13:34 +0100 |
---|---|---|
committer | Tim Wiederhake <twiederh@redhat.com> | 2022-02-11 11:04:01 +0100 |
commit | 6f3c0480b1e8405e623514cca4a7729a4243365f (patch) | |
tree | 1a7228bbc2adb5a9501a3ebc4261ffc421228db6 /src/ch | |
parent | 0a6ff46c9e4e5ba1964dac09aaf3730f012251bf (diff) | |
download | libvirt-6f3c0480b1e8405e623514cca4a7729a4243365f.tar.gz |
ch: Use automatic mutex management
Signed-off-by: Tim Wiederhake <twiederh@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Diffstat (limited to 'src/ch')
-rw-r--r-- | src/ch/ch_conf.c | 20 | ||||
-rw-r--r-- | src/ch/ch_conf.h | 10 |
2 files changed, 8 insertions, 22 deletions
diff --git a/src/ch/ch_conf.c b/src/ch/ch_conf.c index f865d93681..bae245adf3 100644 --- a/src/ch/ch_conf.c +++ b/src/ch/ch_conf.c @@ -93,16 +93,15 @@ virCaps *virCHDriverGetCapabilities(virCHDriver *driver, if (refresh && !(caps = virCHDriverCapsInit())) return NULL; - chDriverLock(driver); + VIR_WITH_MUTEX_LOCK_GUARD(&driver->lock) { + if (refresh) { + virObjectUnref(driver->caps); + driver->caps = caps; + } - if (refresh) { - virObjectUnref(driver->caps); - driver->caps = caps; + ret = virObjectRef(driver->caps); } - ret = virObjectRef(driver->caps); - chDriverUnlock(driver); - return ret; } @@ -159,11 +158,8 @@ virCHDriverConfigNew(bool privileged) virCHDriverConfig *virCHDriverGetConfig(virCHDriver *driver) { - virCHDriverConfig *cfg; - chDriverLock(driver); - cfg = virObjectRef(driver->config); - chDriverUnlock(driver); - return cfg; + VIR_LOCK_GUARD lock = virLockGuardLock(&driver->lock); + return virObjectRef(driver->config); } static void diff --git a/src/ch/ch_conf.h b/src/ch/ch_conf.h index c56caa3f5f..b927621a97 100644 --- a/src/ch/ch_conf.h +++ b/src/ch/ch_conf.h @@ -78,13 +78,3 @@ virDomainXMLOption *chDomainXMLConfInit(virCHDriver *driver); virCHDriverConfig *virCHDriverConfigNew(bool privileged); virCHDriverConfig *virCHDriverGetConfig(virCHDriver *driver); int chExtractVersion(virCHDriver *driver); - -static inline void chDriverLock(virCHDriver *driver) -{ - virMutexLock(&driver->lock); -} - -static inline void chDriverUnlock(virCHDriver *driver) -{ - virMutexUnlock(&driver->lock); -} |