From owner-freebsd-current Sun May 2 10:32:45 1999 Delivered-To: freebsd-current@freebsd.org Received: from kogge.Hanse.DE (kogge.hanse.de [192.76.134.17]) by hub.freebsd.org (Postfix) with ESMTP id 9D6E114D9E; Sun, 2 May 1999 10:32:39 -0700 (PDT) (envelope-from stefan.bethke@hanse.de) Received: from transit.hanse.de (transit-a.Hanse.DE [193.174.9.161]) by kogge.Hanse.DE (8.9.1/8.9.1) with ESMTP id TAA65743; Sun, 2 May 1999 19:32:20 +0200 (CEST) (envelope-from stefan.bethke@hanse.de) Received: from monster.transit-a.hanse.de (monster [193.174.9.163]) by transit.hanse.de (8.8.8/8.8.8) with ESMTP id TAA26605; Sun, 2 May 1999 19:32:18 +0200 (CEST) (envelope-from stefan.bethke@hanse.de) Date: Sun, 02 May 1999 19:32:08 +0200 From: Stefan Bethke To: freebsd-current@freebsd.org Cc: sos@freebsd.org Subject: panic in nexus_setup_intr+0x13 with new ata driver Message-ID: <14289515.3134662328@monster.transit-a.hanse.de> Originator-Info: login-id=stb; server=transit.transit-a.hanse.de X-Mailer: Mulberry (MacOS) [1.4.0, s/n U-301178] MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG I'm currently trying to get a Promise Ultra/33 to work with S=F8rens new = ata drivers. The kernel config is as per LINT: machine "i386" cpu "I486_CPU" ident DEV maxusers 40 options INET #InterNETworking options NETATALK options FFS #Berkeley Fast Filesystem options NFS #Network Filesystem options MFS options "CD9660" #ISO 9660 Filesystem options "CD9660_ROOT" #CD-ROM usable as root device options FFS_ROOT #FFS usable as root device [keep this!] options NFS_ROOT #NFS usable as root device options PROCFS #Process filesystem options SOFTUPDATES options "COMPAT_43" #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=3D3000 #Be pessimistic about Joe SCSI device options UCONSOLE #Allow users to grab the console options FAILSAFE #Be conservative options USERCONFIG #boot -c editor options VISUAL_USERCONFIG #visual boot -c editor config kernel root on sa0 dumps on sa0 controller isa0 controller eisa0 controller pci0 controller pnp0 controller fdc0 at isa? port IO_FD1 irq 6 drq 2 disk fd0 at fdc0 drive 0 disk fd1 at fdc0 drive 1 # ATA and ATAPI devices # This is work in progress, use at your own risk. # It currently reuses the majors of wd.c and friends. # It cannot co-exist with the old system in one kernel. # You only need one "controller ata0" for it to find all # PCI devices on modern machines. controller ata0 device atadisk0 # ATA disk drives #device atapicd0 # ATAPI CDROM drives #device atapifd0 # ATAPI floppy drives #device atapist0 # ATAPI tape drives options DDB makeoptions DEBUG=3D-g makeoptions COPTFLAGS=3D"-O -DATA_DEBUG -DAD_DEBUG" controller ncr0 #controller ahc0 controller scbus0 device da0 device sa0 device cd0 device pass0 controller atkbdc0 at isa? port IO_KBD device atkbd0 at atkbdc? irq 1 device psm0 at atkbdc? irq 12 device vga0 at isa? port ? conflicts # splash screen/screen saver pseudo-device splash # syscons is the default console driver, resembling an SCO console device sc0 at isa? device npx0 at nexus? port IO_NPX irq 13 device sio0 at isa? port IO_COM1 flags 0x10 irq 4 device sio1 at isa? port IO_COM2 irq 3 device ed0 at pci? pseudo-device loop pseudo-device ether pseudo-device ppp 4 pseudo-device tun 4 pseudo-device bpfilter 4 pseudo-device pty 16 pseudo-device gzip # Exec gzipped a.out's pseudo-device vn 4 pseudo-device ccd 4 #options KTRACE #kernel tracing options SYSVSHM options SYSVSEM options SYSVMSG options "VM86" options VESA #device pcm0 at isa? disable port ? tty irq 10 drq 1 flags 0x0 I've written down the following: ata-pci0: at device 5.0 on pci0 ata-pci0: type4d33105a class=3D01 subclass=3D04 cmd=3D02000007 ata-pci0: Busmastering DMA supported ata0: iobase=3D0xa000 altiobase=3D0xa100 ata0: mask=3D03 status0=3D50 status1=3D00 ata0: mask=3D03 status0=3D50 status1=3D00 ata0: devices =3D 0x1 Fatal trap 12: page fault while in kernel mode fault virtual address =3D 0x14 fault code =3D supervisor read, page not present instruction pointer =3D 0x8:0xc02012fb stack pointer =3D 0x10:0xc02dad44 frame pointer =3D 0x10:0xc02dad74 code segment =3D base 0x0, limit 0xfffff, type 0x1b =3D DPL 0, pres 1 def32 1, gran 1 processor flags =3D interrupt enabled, resume, IOPL =3D 0 current process =3D 0 interrupt mask =3D net tty bio cam kernel: type 12 trap, code=3D0 Stopped at nexus_setup_intr+0x13: pushl 0x14(%edx) db> trace,8 nexus_setup_intr(c0689a40,c06895c0,0,c01e9d44,c068bd00) at next_setup_intr+0x13 BUS_SETUP_INTR(c0689a40,c06895c0,0,c01e9d44,c068bd00) at = BUS_SETUP_INTR+0x34 bus_generic_setup_intr(c0689800,c06895c0,0,c011e9d44,c068bd00) at bus_generic_setup_intr+0x2b BUS_SETUP_INTR(c0689800,c06895c0,0,c01e9d44,c068bd00) at = BUS_SETUP_INTR+0x34 bus_generic_setup_intr(c0689740,c06895c0,0,c01e9d44,c068db00) at bus_generic_setup_intr+0x2b BUS_SETUP_INTR(c0689740,c06895c0,0,c01e9d44,c068bd00) at = BUS_SETUP_INTR+0x34 bus_setup_intr(c06895c0,0,c01e9d44,c068bd00,c02dae88) at = bus_setup_intr+0x21 ata_pciattach(c06895c0,c02daed0,c0148ce3,c06895c0,c06895c0) at ata_pciattach+0x439 db> x/ia nexus_setup_intr,10 nexus_setup_intr: pushl %ebp nexus_setup_intr+0x1: movl %esp,%ebp nexus_setup_intr+0x3: subl $0x24,%esp nexus_setup_intr+0x6: pushl %edi nexus_setup_intr+0x7: pushl %esi nexus_setup_intr+0x8: pushl %ebx nexus_setup_intr+0x9: movl 0xc(%ebp),%ebx nexus_setup_intr+0xc: testl %ebx,%ebx nexus_setup_intr+0xe: jz nexus_setup_intr+0x24 nexus_setup_intr+0x10: movl 0x10(%ebp),%edx nexus_setup_intr+0x13: pushl 0x14(%edx) nexus_setup_intr+0x16: pushl $0xc024bd96 nexus_setup_intr+0x1b: pushl %ebx nexus_setup_intr+0x1c: call device_printf nexus_setup_intr+0x21: addl $0xc,%esp nexus_setup_intr+0x24: movl 0x1c(%ebp),%edx db> x/s $0xc024bd96 __set_sysintit_set_sym_nexus_rootmodule_sys_init+0x11e: interrupting at = irq %d\012 db> show reg cs 0x8 ds 0x10 es 0x10 fs 0x10 ss 0x10 eax 0xc02012e8 nexus_setup_intr ecx 0xc0689a40 edx 0 ebx 0xc06895c0 esp 0xc02dad44 epb 0xc02dad74 esi 0x5 edi 0xc06896c0 eip 0xc02012fb nexus_setup_intr+0x13 efl 0x10286 This is with a -current from about three days ago. Unfortunatly, I don't understand enought about the new bus stuff to really understand where the null pointer gets into the game. Ah, if it matters: the Promise currently has the EPROM removed. Any hints appreciated, Stefan -- Stefan Bethke Muehlendamm 12 Phone: +49-40-256848, +49-177-3504009 D-22087 Hamburg Hamburg, Germany To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message