On Sun, 3 Oct 2010 22:41:50 +0200, you wrote: >err... reading the trace first helps. this is actually pretty clearly a >problem in re. I don't feel responsible for re tho :)
Is there something else I should do before submitting something to bugs? Both of these source files haven't been modified since I grabbed this snapshot. OpenBSD 4.8-current (GENERIC) #312: Tue Aug 31 21:59:22 MDT 2010 dera...@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC http://www.openbsd.org/cgi-bin/cvsweb/src/sys/dev/ic/re.c?sortby=date http://www.openbsd.org/cgi-bin/cvsweb/src/sys/net/if_ethersubr.c?sortby=date ddb> trace ether_input(d1be7054,0,d66ca000,0,60) at ether_input+0xa9 re_rxeof(d1be7000,dbc13000,3e,4001,1) at re_rxeof+0x33c # objdump --line --disassemble --reloc re.o > ~/re.o.dis # cat ~/re.o.dis | grep "<re_rxeof>" 00001800 <re_rxeof>: 0x1800 + 0x33c = 1b3c # cat /root/re.o.dis ../../../../dev/ic/re.c:1480 1b38: 66 89 43 26 mov %ax,0x26(%ebx) 1b3c: e9 76 ff ff ff jmp 1ab7 <re_rxeof+0x2b7> # cat -n ../../../../dev/ic/re.c | head -n 1485 | tail -n 10 1476 M_UDP_CSUM_IN_OK; 1477 } 1478 #if NVLAN > 0 1479 if (rxvlan & RL_RDESC_VLANCTL_TAG) { 1480 m->m_pkthdr.ether_vtag = 1481 ntohs((rxvlan & RL_RDESC_VLANCTL_DATA)); 1482 m->m_flags |= M_VLANTAG; 1483 } 1484 #endif 1485 # objdump --line --disassemble --reloc if_ethersubr.o > ~/if_ethersubr.o.dis # cat /root/if_ethersubr.o.dis | grep "<ether_input>" 00000e80 <ether_input>: 0xe80 +0xa9 = 0xf29 # cat /root/if_ethersubr.o.dis ../../../../net/if_ethersubr.c:570 f26: 8b 55 e0 mov 0xffffffe0(%ebp),%edx f29: f6 02 01 testb $0x1,(%edx) f2c: 0f 85 09 01 00 00 jne 103b <ether_input+0x1bb> # cat -n ../../../../net/if_ethersubr.c | head -n 575 | tail -n 10 566 if ((ifp->if_flags & IFF_UP) == 0) { 567 m_freem(m); 568 return; 569 } 570 if (ETHER_IS_MULTICAST(eh->ether_dhost)) { 571 if ((ifp->if_flags & IFF_SIMPLEX) == 0) { 572 struct ifaddr *ifa; 573 struct sockaddr_dl *sdl = NULL; 574 575 TAILQ_FOREACH(ifa, &ifp->if_addrlist, ifa_list) {