Re: panic in ithread_loop()

2002-12-10 Thread John Baldwin

On 10-Dec-2002 Dag-Erling Smorgrav wrote:
> John Baldwin <[EMAIL PROTECTED]> writes:
>> On 10-Dec-2002 Dag-Erling Smorgrav wrote:
>> > John Baldwin <[EMAIL PROTECTED]> writes:
>> > > This is where it faulted for some reason or another.  It was running
>> > > a registered interrupt handler. Do you have any kernel modules in this
>> > > system?
>> > Not that were loaded at the time of the panic.
>> Had you unloaded any modules prior to the panic?
> 
> No, the panic occurs during boot.  Sorry for not making that clear.

Oh, hrm. :(

-- 

John Baldwin <[EMAIL PROTECTED]>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

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



Re: panic in ithread_loop()

2002-12-10 Thread Dag-Erling Smorgrav
John Baldwin <[EMAIL PROTECTED]> writes:
> On 10-Dec-2002 Dag-Erling Smorgrav wrote:
> > John Baldwin <[EMAIL PROTECTED]> writes:
> > > This is where it faulted for some reason or another.  It was running
> > > a registered interrupt handler. Do you have any kernel modules in this
> > > system?
> > Not that were loaded at the time of the panic.
> Had you unloaded any modules prior to the panic?

No, the panic occurs during boot.  Sorry for not making that clear.

DES
-- 
Dag-Erling Smorgrav - [EMAIL PROTECTED]

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



Re: panic in ithread_loop()

2002-12-10 Thread Nate Lawson
On Wed, 11 Dec 2002, Mitsuru IWASAKI wrote:
> > Fatal trap 12: page fault while in kernel mode
> > fault virtual address   = 0xc01e8d
> > fault code  = supervisor write, page not present
> > instruction pointer = 0x8:0xc045dc80
> > stack pointer   = 0x10:0xd536dce4
> > frame pointer   = 0x10:0xd536dd00
> > code segment= base 0x0, limit 0xf, type 0x1b
> > = DPL 0, pres 1, def32 1, gran 1
> > processor eflags= interrupt enabled, resume, IOPL = 0
> > current process = 12 (swi6: tty:sio clock)
> > kernel: type 12 trap, code=0
> > Stopped at  0xc045dc80: movb%al,0xc01e8d
> 
> I saw this panics many times recently.  After totally fresh
> buildworld and buildkernel (i.e. rm -rf /usr/obj/* and w/o -DNOCLEAN),
> problem was gone.
> 
> Please note that recently we had gcc changes.
> 
> I've noticed -freg-struct-return brakages, some important ports which
> using ndbm library (such as qpopper) is broken right now...

I am suspicious about the fault address.  If you add a lsb, you get a
valid kernel address, which seems to indicate a packing/alignment problem.

-Nate


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



Re: panic in ithread_loop()

2002-12-10 Thread Mitsuru IWASAKI
> This is 100% reproducible with a top-of-tree kernel, but didn't happen
> with Wednesday's sources:
> 
> Fatal trap 12: page fault while in kernel mode
> fault virtual address   = 0xc01e8d
> fault code  = supervisor write, page not present
> instruction pointer = 0x8:0xc045dc80
> stack pointer   = 0x10:0xd536dce4
> frame pointer   = 0x10:0xd536dd00
> code segment= base 0x0, limit 0xf, type 0x1b
> = DPL 0, pres 1, def32 1, gran 1
> processor eflags= interrupt enabled, resume, IOPL = 0
> current process = 12 (swi6: tty:sio clock)
> kernel: type 12 trap, code=0
> Stopped at  0xc045dc80: movb%al,0xc01e8d

I saw this panics many times recently.  After totally fresh
buildworld and buildkernel (i.e. rm -rf /usr/obj/* and w/o -DNOCLEAN),
problem was gone.

Please note that recently we had gcc changes.

I've noticed -freg-struct-return brakages, some important ports which
using ndbm library (such as qpopper) is broken right now...

Thanks

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



Re: panic in ithread_loop()

2002-12-10 Thread John Baldwin

On 10-Dec-2002 Dag-Erling Smorgrav wrote:
> John Baldwin <[EMAIL PROTECTED]> writes:
>> This is where it faulted for some reason or another.  It was running
>> a registered interrupt handler. Do you have any kernel modules in this
>> system?
> 
> Not that were loaded at the time of the panic.

Had you unloaded any modules prior to the panic?

-- 

John Baldwin <[EMAIL PROTECTED]>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

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



Re: panic in ithread_loop()

2002-12-10 Thread Dag-Erling Smorgrav
John Baldwin <[EMAIL PROTECTED]> writes:
> This is where it faulted for some reason or another.  It was running
> a registered interrupt handler. Do you have any kernel modules in this
> system?

Not that were loaded at the time of the panic.

DES
-- 
Dag-Erling Smorgrav - [EMAIL PROTECTED]

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



RE: panic in ithread_loop()

2002-12-09 Thread John Baldwin

On 08-Dec-2002 Dag-Erling Smorgrav wrote:
> This is 100% reproducible with a top-of-tree kernel, but didn't happen
> with Wednesday's sources:
> 
> Fatal trap 12: page fault while in kernel mode
> fault virtual address   = 0xc01e8d
> fault code  = supervisor write, page not present
> instruction pointer = 0x8:0xc045dc80
> stack pointer   = 0x10:0xd536dce4
> frame pointer   = 0x10:0xd536dd00
> code segment= base 0x0, limit 0xf, type 0x1b
> = DPL 0, pres 1, def32 1, gran 1
> processor eflags= interrupt enabled, resume, IOPL = 0
> current process = 12 (swi6: tty:sio clock)
> kernel: type 12 trap, code=0
> Stopped at  0xc045dc80: movb%al,0xc01e8d
> db> trace
> _end(0) at 0xc045dc80
> ithread_loop(c152ab00,d536dd48,c1537b60,c01d3d80,0) at ithread_loop+0x11c
> fork_exit(c01d3d80,c152ab00,d536dd48) at fork_exit+0x8f
> fork_trampoline() at fork_trampoline+0x1a
> --- trap 0x1, eip = 0, esp = 0xd536dd7c, ebp = 0 ---
> 
> and according to gdb:
> 
> (gdb) list _end
> No line number known for _end.
> (gdb) list *0xc045dc80
> No source file for address 0xc045dc80.

This is where it faulted for some reason or another.  It was running
a registered interrupt handler. Do you have any kernel modules in this
system?

> (gdb) l *(ithread_loop + 0x11c)
> 0xc01d3e9c is in ithread_loop (../../../kern/kern_intr.c:536).
> 531 goto restart;
> 532 }
> 533 if ((ih->ih_flags & IH_MPSAFE) == 0)
> 534 mtx_lock(&Giant);
> 535 ih->ih_handler(ih->ih_argument);
> 536 if ((ih->ih_flags & IH_MPSAFE) == 0)
> 537 mtx_unlock(&Giant);
> 538 }
> 539 }
> 540
> (gdb) l *(fork_exit+0x8f)
> 0xc01d326f is in fork_exit (../../../kern/kern_fork.c:872).
> 867
> 868 /*
> 869  * Check if a kernel thread misbehaved and returned from its main
> 870  * function.
> 871  */
> 872 PROC_LOCK(p);
> 873 if (p->p_flag & P_KTHREAD) {
> 874 PROC_UNLOCK(p);
> 875 mtx_lock(&Giant);
> 876 printf("Kernel thread \"%s\" (pid %d) exited prematurely.\n",
> (gdb) l *(fork_trampoline+0x1a)
> 0xc02db94e is at {standard input}:152.
> 147 {standard input}: No such file or directory.
> in {standard input}
> 
> DES
> -- 
> Dag-Erling Smorgrav - [EMAIL PROTECTED]
> 
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-current" in the body of the message

-- 

John Baldwin <[EMAIL PROTECTED]>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

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



panic in ithread_loop()

2002-12-08 Thread Dag-Erling Smorgrav
This is 100% reproducible with a top-of-tree kernel, but didn't happen
with Wednesday's sources:

Fatal trap 12: page fault while in kernel mode
fault virtual address   = 0xc01e8d
fault code  = supervisor write, page not present
instruction pointer = 0x8:0xc045dc80
stack pointer   = 0x10:0xd536dce4
frame pointer   = 0x10:0xd536dd00
code segment= base 0x0, limit 0xf, type 0x1b
= DPL 0, pres 1, def32 1, gran 1
processor eflags= interrupt enabled, resume, IOPL = 0
current process = 12 (swi6: tty:sio clock)
kernel: type 12 trap, code=0
Stopped at  0xc045dc80: movb%al,0xc01e8d
db> trace
_end(0) at 0xc045dc80
ithread_loop(c152ab00,d536dd48,c1537b60,c01d3d80,0) at ithread_loop+0x11c
fork_exit(c01d3d80,c152ab00,d536dd48) at fork_exit+0x8f
fork_trampoline() at fork_trampoline+0x1a
--- trap 0x1, eip = 0, esp = 0xd536dd7c, ebp = 0 ---

and according to gdb:

(gdb) list _end
No line number known for _end.
(gdb) list *0xc045dc80
No source file for address 0xc045dc80.
(gdb) l *(ithread_loop + 0x11c)
0xc01d3e9c is in ithread_loop (../../../kern/kern_intr.c:536).
531 goto restart;
532 }
533 if ((ih->ih_flags & IH_MPSAFE) == 0)
534 mtx_lock(&Giant);
535 ih->ih_handler(ih->ih_argument);
536 if ((ih->ih_flags & IH_MPSAFE) == 0)
537 mtx_unlock(&Giant);
538 }
539 }
540
(gdb) l *(fork_exit+0x8f)
0xc01d326f is in fork_exit (../../../kern/kern_fork.c:872).
867
868 /*
869  * Check if a kernel thread misbehaved and returned from its main
870  * function.
871  */
872 PROC_LOCK(p);
873 if (p->p_flag & P_KTHREAD) {
874 PROC_UNLOCK(p);
875 mtx_lock(&Giant);
876 printf("Kernel thread \"%s\" (pid %d) exited prematurely.\n",
(gdb) l *(fork_trampoline+0x1a)
0xc02db94e is at {standard input}:152.
147 {standard input}: No such file or directory.
in {standard input}

DES
-- 
Dag-Erling Smorgrav - [EMAIL PROTECTED]

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