[Spice-devel] [PATCH vdagent-win 1/1] vdservice: fix vdagent first launch (during startup) failure handling rhbz#750037

Arnon Gilboa agilboa at redhat.com
Tue Dec 27 03:06:49 PST 2011


Thanks Uri;) I couldn't explain it better.

Uri Lublin wrote:
> On 12/26/2011 12:58 PM, Arnon Gilboa wrote:
>   
>> In case of agent launch failure: if connection state is not active(*), wait for
>> agent launch on the next session connection. Otherwise, the service is stopped.
>> (*) The failure was due to system startup timings and logon settings, causing
>> the first agent instance lifetime (before session connect) to be too short to
>> connect the service.
>>     
>
> Ack.
>
> Although Arnon explained it above, I'd like to clarify (please correct
> me if I'm wrong).
> This case only happens on system startup.
> On system startup, there is a default "startup" session, that is later
> replaced with another session. Sometimes the switch between those
> sessions are "too fast" such that the first session is terminated before
> connecting to the service.
> In such a case the service had exited.
> When the next session starts we get an event and can retry.
>
> This fix makes vdservice wait for the next session to start, instead of
> exiting.
> Service exits only if a user is already logged-in (active state).
>
>
>
>   
>> @@ -952,7 +975,9 @@ bool VDService::restart_agent(bool normal_restart)
>>          }
>>          _last_agent_restart_time = time;
>>          ret = true;
>> -        read_pipe();
>> +        if (_vdi_port) {
>> +            read_pipe();
>> +        }
>>      }
>>      MUTEX_UNLOCK(_agent_mutex);
>>      return ret;
>>
>>     
>
> For cleanliness, I'd add setting _vdi_port to NULL in init_vdi_port()
> upon failure.
>
>
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
>   



More information about the Spice-devel mailing list