Am 22. April 2012 04:32 schrieb Eric Blake <eblake@xxxxxxxxxx>: > On 04/21/2012 11:11 AM, Matthias Bolte wrote: >> virThreadSelf tries to access the virThreadPtr stored in TLS for the >> current thread via TlsGetValue. When virThreadSelf is called on a thread >> that was not created via virThreadCreate (e.g. the main thread) then >> TlsGetValue returns NULL as TlsAlloc initializes TLS slots to NULL. >> >> virThreadSelf can be called on the main thread via this call chain from >> virsh >> >> vshDeinit >> virEventAddTimeout >> virEventPollAddTimeout >> virEventPollInterruptLocked >> virThreadIsSelf >> >> triggering a segfault as virThreadSelf unconditionally dereferences the >> return value of TlsGetValue. >> >> Fix this by making virThreadSelf check the TLS slot value for NULL and >> setting the given virThreadPtr accordingly. >> >> Reported by Marcel Müller. >> --- >> src/util/threads-win32.c | 11 +++++++++-- >> 1 files changed, 9 insertions(+), 2 deletions(-) > > ACK. Thanks, pushed. -- Matthias Bolte http://photron.blogspot.com -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list