Re: [PATCH 35/41] remote: change hand written methods to not directly access connection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2019-07-23 at 17:03 +0100, Daniel P. Berrangé wrote:
[...]
> +++ b/src/remote/remote_daemon_dispatch.c
> @@ -4210,14 +4128,13 @@ remoteDispatchConnectDomainEventRegister(virNetServerPtr server ATTRIBUTE_UNUSED
>      daemonClientEventCallbackPtr ref;
>      struct daemonClientPrivate *priv =
>          virNetServerClientGetPrivateData(client);
> -
> -    if (!priv->conn) {
> -        virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("connection not open"));
> -        goto cleanup;
> -    }
> +    virConnectPtr conn = remoteGetHypervisorConn(client);
>  
>      virMutexLock(&priv->lock);
>  
> +    if (!conn)
> +        goto cleanup;
> +

Shouldn't this be *before* the virMutexLock() call? As far as I can
tell, that would match the existing behavior...

The same is true for

  remoteDispatchConnectDomainEventDeregister()
  remoteDispatchConnectDomainEventRegisterAny()
  remoteDispatchConnectDomainEventDeregisterAny()
  remoteDispatchConnectDomainEventCallbackRegisterAny()
  remoteDispatchConnectDomainEventCallbackDeregisterAny()
  remoteDispatchConnectNetworkEventRegisterAny()
  remoteDispatchConnectNetworkEventDeregisterAny()
  remoteDispatchConnectStoragePoolEventRegisterAny()
  remoteDispatchConnectStoragePoolEventDeregisterAny()
  remoteDispatchConnectNodeDeviceEventRegisterAny()
  remoteDispatchConnectNodeDeviceEventDeregisterAny()
  remoteDispatchConnectSecretEventRegisterAny()
  remoteDispatchConnectSecretEventDeregisterAny()
  qemuDispatchConnectDomainMonitorEventRegister()
  qemuDispatchConnectDomainMonitorEventDeregister()

With either all of them updated, if my understanding of the situation
as described above is correct, or left as is otherwise,

  Reviewed-by: Andrea Bolognani <abologna@xxxxxxxxxx>

-- 
Andrea Bolognani / Red Hat / Virtualization

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux