Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 1 Aug 2003 21:14:51 +0200
From:      Wilko Bulte <wkb@freebie.xs4all.nl>
To:        current@freebsd.org
Subject:   crash when bringing up fddi interface
Message-ID:  <20030801191451.GA83917@freebie.xs4all.nl>

next in thread | raw e-mail | index | archive | help
I added a DEC DEFPA PCI FDDI card to my Alpha.

When ifconfig fpa0 <foo> I am greeted by the following
panic:

fatal kernel trap:

    trap entry     = 0x2 (memory management fault)
    cpuid          = 2
    faulting va    = 0x53c443f8000091b8
    type           = access violation
    cause          = load instructon
    pc             = 0xfffffc00004addc8
    ra             = 0xfffffc00004ad3ac
    sp             = 0xfffffe0039dfd970
    usp            = 0x11fffa70
    curthread      = 0xfffffc0006acba20
        pid = 571, comm = ifconfig

Stopped at      rt_maskedcopy+0x18:     ldq_u   t0,0(a2)
<0x53c443f8000091b8>   
<t0=0x0,a2=0x53c443f8000091b8>
db> tb
No such command
db> bt
No such command
db> tsa^H ^H^H ^Hrace
rt_maskedcopy() at rt_maskedcopy+0x18
rtrequest1() at rtrequest1+0x39c
rtinit() at rtinit+0x250
in_ifinit() at in_ifinit+0x6d4
in_control() at in_control+0x918
ifioctl() at ifioctl+0x2b4
soo_ioctl() at soo_ioctl+0x290
ioctl() at ioctl+0x750
syscall() at syscall+0x3b8
XentSys() at XentSys+0x64
--- syscall (54, FreeBSD ELF64, ioctl) ---
--- user mode ---
db> 

So, something appears to go wrong in:

static void
rt_maskedcopy(src, dst, netmask)
        struct sockaddr *src, *dst, *netmask;
{
        register u_char *cp1 = (u_char *)src;
        register u_char *cp2 = (u_char *)dst;
        register u_char *cp3 = (u_char *)netmask;
        u_char *cplim = cp2 + *cp3;
        u_char *cplim2 = cp2 + *cp1;
                   
        *cp2++ = *cp1++; *cp2++ = *cp1++; /* copies sa_len & sa_family */
        cp3 += 2;
        if (cplim > cplim2)
                cplim = cplim2;
        while (cp2 < cplim)
                *cp2++ = *cp1++ & *cp3++;
        if (cp2 < cplim2)
                bzero((caddr_t)cp2, (unsigned)(cplim2 - cp2));
}

My other DEFPA lives in a BP6 x86 box and is not panicing.

Suggestions?

W/

-- 
|   / o / /_  _   		wilko@FreeBSD.org
|/|/ / / /(  (_)  Bulte				



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