Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Oct 2004 13:32:55 +0300
From:      Andriy Gapon <avg@icyb.net.ua>
To:        freebsd-emulation@freebsd.org
Subject:   Re: linux threaded application hang
Message-ID:  <416D0457.2090106@icyb.net.ua>
In-Reply-To: <416CF40A.3070008@icyb.net.ua>
References:  <416CF40A.3070008@icyb.net.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
on 13.10.2004 12:23 Andriy Gapon said the following:

> #it seems that main thread starts to wait on some condition
> #until it is awaken by child thread by a signal
>   5715 setmqcap CALL  linux_rt_sigsuspend(0xbfbfd910,0x8)
>   5716 setmqcap CALL  read(0x3,0x805b264,0x94)
>   5716 setmqcap GIO   fd 3 read 148 bytes
>   5716 setmqcap RET   read 148/0x94
>   5716 setmqcap CALL  linux_mmap(0x805b194)
>   5716 setmqcap RET   linux_mmap -1086394368/0xbf3ef000
>   5716 setmqcap CALL  mprotect(0xbf3ef000,0x1000,0)
>   5716 setmqcap RET   mprotect 0

having read more about old linux threads, it seems that this "child
thread" (5716) is what they call "thread manager"

> #child thread creates another thread, that's probably not important
>   5716 setmqcap CALL  linux_clone(0xf21,0xbf3ffbf8)
>   5716 setmqcap RET   linux_clone 5717/0x1655
>   5717 setmqcap RET   linux_fork 0

and this is an actual new thread

> #child thread wants to wake up main thread (pid == 5715 == 0x1653)
> #by sending signal 0x20 == 32 (== linux SIGRTMIN ?)
>   5716 setmqcap CALL  linux_kill(0x1653,0x20)
> 
> #but it seems to fail.. or not ?
> #I am not sure how to interpret "RESTART" here
>   5716 setmqcap RET   linux_kill RESTART


-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?416D0457.2090106>