On Tue, Jul 02, 2002 at 10:53:23PM -0500, Erik Greenwald wrote:
> I took a stab at hunting it down, I think I may've found it in the
> libc_r, not the kern
> 
> src/lib/libc_r/uthread/uthread_kern.c, in the neighborhood of line 172,
> the last line of _thread_kern_sched() is 
> 
>         ___longjmp(_thread_kern_sched_jb, 1);
> 
> I think that's where the crash is. the setjmp is in uthread_init.c, on
> line 320, "_setjmp(_thread_kern_sched_jb);", but that function doesn't
> seem to be called? I put some printf's with fflush's in there and I'm
> not seeing them come up. Maybe I'm misreading something, but that seems
> to me to be the issue, _thread_kern_sched_jb having junk when it gets
> longjmp'd... I'm really not quite what all goes into this, so I'm
> throwing this out to let more experienced minds consider it? :) I think
> I'm going to wait an hour or two before trying to fix it, maybe someone
> sees this as a quick fix

Yeah, that's where I'm poking at currently.

The thing that I'm seeing is that the entry function _thread_start is
on the wrong stack. This problem predates the KSE commit, so it's not
related to it. It could be that the jump_buf isn't being set up
correctly or some other unknown craziness, but I believe I'm close to
finding the SEGV in question.

The problem is persistent across pre-KSE (3 days ago) and KSE kernels.
I'm running an older kernel now with the latest world, so that the
environment is stable enough for me to do bug tracking. If I'm doing
something wrong, then please tell me.

bill


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

Reply via email to