[libvirt] [PATCH] Don't update dom->persistent without lock held

From: "Daniel P. Berrange" <berrange@redhat.com> virDomainObjListLoadAllConfigs sets dom->persistent after having released its lock on the domain object. This exposes a possible race condition. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- src/conf/domain_conf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 562d98b..51c4e29 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -17373,9 +17373,9 @@ virDomainObjListLoadAllConfigs(virDomainObjListPtr doms, notify, opaque); if (dom) { - virObjectUnlock(dom); if (!liveStatus) dom->persistent = 1; + virObjectUnlock(dom); } } -- 1.8.3.1

On 10/28/2013 10:08 AM, Daniel P. Berrange wrote:
From: "Daniel P. Berrange" <berrange@redhat.com>
virDomainObjListLoadAllConfigs sets dom->persistent after having released its lock on the domain object. This exposes a possible race condition.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- src/conf/domain_conf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
ACK John
participants (2)
-
Daniel P. Berrange
-
John Ferlan