bug-hurd
[Top][All Lists]
Advanced

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

Re: A segmentation fault when running sleep()


From: Samuel Thibault
Subject: Re: A segmentation fault when running sleep()
Date: Tue, 15 Dec 2009 11:48:53 +0100
User-agent: Mutt/1.5.12-2006-07-14

Hello again,

Da Zheng, le Tue 15 Dec 2009 13:51:09 +0800, a écrit :
> (gdb) run
> Starting program: /root/hurd/ddekit_test/test 
> test1 thread starts at 1260701688
> test1 thread wakes up at 1260701691
> test1 thread enter a semaphore at 1260701691, timeout: 1
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x0105f88c in evc_wait () from /lib/libc.so.0.3
> (gdb) info stack
> #0  0x0105f88c in evc_wait () from /lib/libc.so.0.3
> #1  0x01060089 in mach_msg () from /lib/libc.so.0.3
> #2  0x0110bb1e in sleep () from /lib/libc.so.0.3
> #3  0x08049ad7 in thread_test () at main.c:302
> #4  0x08049b61 in main (argc=1, argv=0x125fda4) at main.c:318

Please make sure that it's really this kernel thread that generates the
SIGSEGV.

> It's quite weird, as it shows that mach_msg calls evc_wait.

That could be a glitch of some other mechanism.  You can use disassemble
0x01060089 to check what's really there and l * 0x01060089 to check
which precise file that comes from.

> I can find two mach_msg implementations which are in mach/msg.c and 
> hurd/intr-rpc.h respectively.

See the comment of intr-rpc.h: that implementation of mach_msg is only
used for mig-generated functions.

Samuel




reply via email to

[Prev in Thread] Current Thread [Next in Thread]