In message <[EMAIL PROTECTED]>, John Baldwin writes:

>> malloc(48,c0238100,0,c65feb80,0) at malloc+0x2a
>> exit1(c65feb80,0,0,c6623f78,c01fc852) at exit1+0x1b1
>> kthread_suspend(0,c0279a40,0,c022d1ec,a2) at kthread_suspend
>> ithd_loop(0,c6623fa8) at ithd_loop+0x56
>> fork_exit(c01fc7fc,0,c6623fa8) at fork_exit+0x8
>> fork_trampoline() at fork_trampoline+0x8
>> db> witness_list
>>         "Giant" (0xc0279a40) locked at ../../i386/isa/ithread.c:162
>
>Erm, ithd_loop() doesn't call kthread_suspend().  *sigh*.  Something
>else is rather messed up here I'm afraid.

Note that the return address into kthread_suspend is kthread_suspend+0x0.
Since the call to exit1() in kthread_exit is the very last operation
in kthread_exit, you'd expect the return address on the stack to be
at the start of the next function...

Ian


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to