[libvirt] Zombie process after open libvirt connection

Michal Privoznik mprivozn at redhat.com
Wed Mar 19 18:00:04 UTC 2014


On 19.03.2014 18:55, Carlos Rodrigues wrote:
> Thank you Michal, this is good news for me.
> 
> I'll wait for this patch.
> 
> Regards,
> 

I've just pushed it to the repository:

commit 3d4b4f5ac634c123af1981084add29d3a2ca6ab0
Author:     Michal Privoznik <mprivozn at redhat.com>
AuthorDate: Wed Mar 19 18:10:34 2014 +0100
Commit:     Michal Privoznik <mprivozn at redhat.com>
CommitDate: Wed Mar 19 18:54:51 2014 +0100

    virNetClientSetTLSSession: Restore original signal mask
    
    Currently, we use pthread_sigmask(SIG_BLOCK, ...) prior to calling
    poll(). This is okay, as we don't want poll() to be interrupted.
    However, then - immediately as we fall out from the poll() - we try to
    restore the original sigmask - again using SIG_BLOCK. But as the man
    page says, SIG_BLOCK adds signals to the signal mask:
    
    SIG_BLOCK
          The set of blocked signals is the union of the current set and the set argument.
    
    Therefore, when restoring the original mask, we need to completely
    overwrite the one we set earlier and hence we should be using:
    
    SIG_SETMASK
          The set of blocked signals is set to the argument set.
    
    Signed-off-by: Michal Privoznik <mprivozn at redhat.com>



Michal




More information about the libvir-list mailing list