From owner-freebsd-hackers@FreeBSD.ORG Wed Sep 1 22:11:54 2004 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E6CA416A4CE for ; Wed, 1 Sep 2004 22:11:54 +0000 (GMT) Received: from athena.softcardsystems.com (mail.softcardsystems.com [12.34.136.114]) by mx1.FreeBSD.org (Postfix) with ESMTP id AA6BA43D2D for ; Wed, 1 Sep 2004 22:11:54 +0000 (GMT) (envelope-from sah@softcardsystems.com) Received: from athena (athena [12.34.136.114])i81NBm6M003460 for ; Wed, 1 Sep 2004 18:11:48 -0500 Date: Wed, 1 Sep 2004 18:11:48 -0500 (EST) From: Sam X-X-Sender: sah@athena To: freebsd-hackers@freebsd.org Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Subject: kernel panic, unknown / reserved trap X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Sep 2004 22:11:55 -0000 Hello, I'm working on a driver for AoE (ATA over Ethernet) for the 4.x kernel (check recent freebsd-arch postings for info). I have modified a few files in order to support catching ethernet frames of type 0x88a2. The make kernel completes successfully, but on boot the kernel panics with an unknown/reserved trap failure. I've modified the following: freebsd% for i in `find . -type f | tr \\\n ' '`; do > echo $i; diff $i ../sysorig/$i; done ./net/ethernet.h 310d309 < #define ETHERTYPE_AOE 0x88A2 /* ATA over Ethernet */ ./net/if_ethersubr.c 43d42 < #include "opt_aoe.h" 103,106d101 < #ifdef AOE < struct ifqueue *aoeintrq; < #endif /* AOE */ < 751,761d745 < #ifdef AOE < case ETHERTYPE_AOE: < if(aoeintrq) { < schednetisr(NETISR_AOE); < inq = aoeintrq; < break; < } < m_freem(m); < return; < #endif /* AOE */ < ./net/netisr.h 59d58 < #define NETISR_AOE 17 /* ATA over Ethernet */ ./conf/options 256,258d255 < # AoE network option < AOE opt_aoe.h < ./conf/files 288,293d287 < dev/aoe/aoe.c optional aoe < dev/aoe/aoedev.c optional aoe < dev/aoe/aoecmd.c optional aoe < dev/aoe/aoenet.c optional aoe < dev/aoe/aoeblk.c optional aoe < dev/aoe/utils.c optional aoe I've also added dev/aoe/ with the files listed above and modules/aoe/ with a makefile similar to modules/md/Makefile. I don't really see how what I did is causing the kernel to panic so early ... is anything obvious? Cheers, Sam