crash when bringing up fddi interface

From: Wilko Bulte <wkb_at_freebie.xs4all.nl>
Date: Fri, 1 Aug 2003 21:14:51 +0200
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_at_FreeBSD.org
|/|/ / / /(  (_)  Bulte				
Received on Fri Aug 01 2003 - 10:14:53 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:17 UTC