Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Jan 2002 17:29:20 +0100
From:      Bernd Walter <ticso@cicely8.cicely.de>
To:        Andrew Gallatin <gallatin@cs.duke.edu>
Cc:        freebsd-alpha@FreeBSD.ORG
Subject:   Re: 4.5-RC panic
Message-ID:  <20020121172920.U58301@cicely8.cicely.de>
In-Reply-To: <15436.8686.765933.505738@grasshopper.cs.duke.edu>
References:  <20020121035556.D58301@cicely8.cicely.de> <15436.8686.765933.505738@grasshopper.cs.duke.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jan 21, 2002 at 09:13:02AM -0500, Andrew Gallatin wrote:
> 
> Bernd Walter writes:
>  > (kgdb) bt
>  > #0  0xfffffc000037fdc0 in dumpsys () at ../../kern/kern_shutdown.c:472
>  > #1  0xfffffc000037f988 in boot (howto=256) at ../../kern/kern_shutdown.c:313
>  > #2  0xfffffc00003801d0 in panic (fmt=0xfffffc000051c3dc "trap") at ../../kern/kern_shutdown.c:581
>  > #3  0xfffffc00004dba60 in trap (a0=4833124384, a1=4832532772, a2=0, entry=2, framep=0xfffffe00071d3a40)
>  >     at ../../alpha/alpha/trap.c:551
>  > #4  0xfffffc00004cd97c in XentMM ()
>  > #5  0xfffffc00004dbcc4 in syscall (code=344, framep=0xfffffe00071d3ee0) at ../../alpha/alpha/trap.c:655
>  > 
>  > dmesg:
> 
> <...>
> 
>  > fatal kernel trap:
>  > 
>  >     trap entry = 0x2 (memory management fault)
>  >     a0         = 0x12013a020
>  >     a1         = 0x1
>  >     a2         = 0x0
>  >     pc         = 0xfffffc00004d035c
>  >     ra         = 0xfffffc00004dbcc4
>  >     curproc    = 0xfffffe0005c6efc0
>  >         pid = 268, comm = tcsh
> 
> Truly bizzare.  Its trap'ping on what looks like user-space address
> somewhere in the user proc's heap.  a2 is 0, so its a load.  What
> pointer had this value?
> 
> The syscall in question (344) is sigreturn. I haven't been keeping up
> with committers in the last few months.  Has anything changed lately
> wrt. signal delivery?  

I did not follow the -stable commits regulary so I can't say.
The box has some memory load so I wouldn't be surprised if the complete
tcsh was swapped.

> Can you disassemble this and see if its faulting on the call or the return?

int
sigreturn(struct proc *p,
        struct sigreturn_args /* {
                ucontext_t *sigcntxp;
        } */ *uap)
{
fffffc00004d0354:       09 04 f0 47     mov     a0,s0
        ucontext_t uc, *ucp;
        struct pcb *pcb;
        unsigned long val;

        if (((struct osigcontext*)uap->sigcntxp)->sc_regs[R_ZERO] == 0xACEDBADE)
fffffc00004d0358:       00 00 31 a4     ldq     t0,0(a1)
fffffc00004d035c:       18 01 41 a4     ldq     t1,280(t0)
fffffc00004d0360:       de ba 3f 20     lda     t0,-17698(zero)
fffffc00004d0364:       ee ac 21 24     ldah    t0,-21266(t0)
fffffc00004d0368:       21 f6 21 48     zapnot  t0,0xf,t0
fffffc00004d036c:       a2 05 41 40     cmpeq   t1,t0,t1
fffffc00004d0370:       03 00 40 e4     beq     t1,fffffc00004d0380 <sigreturn+0x40>
                return osigreturn(p, (struct osigreturn_args *)uap);
fffffc00004d0374:       a4 ff 5f d3     bsr     ra,fffffc00004d0208 <osigreturn+0x8>
fffffc00004d0378:       43 00 e0 c3     br      fffffc00004d0488 <sigreturn+0x148>
fffffc00004d037c:       00 00 e0 2f     unop    

        ucp = uap->sigcntxp;
        pcb = &p->p_addr->u_pcb;

-- 
B.Walter              COSMO-Project         http://www.cosmo-project.de
ticso@cicely.de         Usergroup           info@cosmo-project.de


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




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