Revision 1.36 of sys/pci/ide_pci.c causes DMA problems and a panic on my laptop: [...] Considering FFS root f/s. changing root device to wd0s1a Card inserted, slot 0 wd0s1: type 0xa5, start 63, end = 12398399, size 12398337 : OK wd0s4: type 0xa0, start 12398400, end = 12670559, size 272160 : OK wd0: DMA failure, DMA status 5<active> wd0: DMA failure, DMA status 5<active> start_init: trying /sbin/init wd0: DMA failure, DMA status 5<active> wd0: DMA failure, DMA status 5<active> wd0: DMA failure, DMA status 5<active> wd0: DMA failure, DMA status 5<active> wd0: DMA failure, DMA status 5<active> spec_getpages: preposterous offset 0xffffff1c19d3fc00 vm_fault: pager read error, pid 1 (\M^P\M^A\M-b) wd0: DMA failure, DMA status 5<active> Fatal trap 12: page fault while in kernel mode fault virtual address = 0x768d2d fault code = supervisor read, page not present instruction pointer = 0x8:0x768d2d stack pointer = 0x10:0xc63ddd04 frame pointer = 0x10:0xeb000000 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, def32 1, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 1 (\M^P\M^A\M-b) interrupt mask = net tty bio cam Unfortunately, I don't have a serial console attached and the dmesg buffer is cut off after any ide_pci messages on the bad boot. I'll be able to get that information tomorrow if the cause of this problem isn't clear without it. I do have the full messages from a successful boot (the only change was backing ide_pci.c to 1.35): Copyright (c) 1992-1999 The FreeBSD Project. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. FreeBSD 4.0-CURRENT #0: Thu Jul 22 00:22:46 EDT 1999 [EMAIL PROTECTED]:/usr/local/usr-src/sys/compile/HABANERO Calibrating clock(s) ... TSC clock: 298385463 Hz, i8254 clock: 1193041 Hz CLK_USE_I8254_CALIBRATION not specified - using default frequency Timecounter "i8254" frequency 1193182 Hz CLK_USE_TSC_CALIBRATION not specified - using old calibration method CPU: Pentium/P55C (quarter-micron) (298.42-MHz 586-class CPU) Origin = "GenuineIntel" Id = 0x582 Stepping = 2 Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX> real memory = 67043328 (65472K bytes) Physical memory chunk(s): 0x00001000 - 0x0009efff, 647168 bytes (158 pages) 0x00314000 - 0x03febfff, 63799296 bytes (15576 pages) sio0: gdb debugging port avail memory = 61865984 (60416K bytes) Found BIOS32 Service Directory header at 0xc00f6d60 Entry = 0xfd7f0 (0xc00fd7f0) Rev = 0 Len = 1 PCI BIOS entry at 0x214 Other BIOS signatures found: ACPI: 00000000 $PnP: 000f6d90 Preloaded elf kernel "kernel" at 0xc02fb000. Intel Pentium detected, installing workaround for F00F bug Math emulator present Initializing PnP override table Probing for PnP devices: Trying Read_Port at 203 Trying Read_Port at 243 Trying Read_Port at 283 Trying Read_Port at 2c3 Trying Read_Port at 303 Trying Read_Port at 343 Trying Read_Port at 383 Trying Read_Port at 3c3 No Plug-n-Play devices were found pci_open(1): mode 1 addr port (0x0cf8) is 0x80000058 pci_open(1a): mode1res=0x80000000 (0x80000000) pci_cfgcheck: device 0 [class=060000] [hdr=00] is there (id=71008086) npx0: <math processor> on motherboard npx0: INT 16 interface i586_bzero() bandwidth = 174155346 bytes/sec bzero() bandwidth = 719942404 bytes/sec apm0: <APM BIOS> on motherboard apm: found APM BIOS version 1.2 pci_open(1): mode 1 addr port (0x0cf8) is 0x80003b54 pci_open(1a): mode1res=0x80000000 (0x80000000) pci_cfgcheck: device 0 [class=060000] [hdr=00] is there (id=71008086) pcib0: <Host to PCI bridge> on motherboard found-> vendor=0x8086, dev=0x7100, revid=0x01 class=06-00-00, hdrtype=0x00, mfdev=0 subordinatebus=0 secondarybus=0 found-> vendor=0x8086, dev=0x7110, revid=0x02 class=06-80-00, hdrtype=0x00, mfdev=1 subordinatebus=0 secondarybus=0 found-> vendor=0x8086, dev=0x7111, revid=0x01 class=01-01-80, hdrtype=0x00, mfdev=0 subordinatebus=0 secondarybus=0 map[0]: type 4, range 32, base 0000fcd0, size 4 found-> vendor=0x8086, dev=0x7112, revid=0x01 class=0c-03-00, hdrtype=0x00, mfdev=0 subordinatebus=0 secondarybus=0 intpin=d, irq=9 map[0]: type 4, range 32, base 0000fce0, size 5 found-> vendor=0x8086, dev=0x7113, revid=0x02 class=06-80-00, hdrtype=0x00, mfdev=0 subordinatebus=0 secondarybus=0 found-> vendor=0x10c8, dev=0x0004, revid=0x01 class=03-00-00, hdrtype=0x00, mfdev=0 subordinatebus=0 secondarybus=0 intpin=a, irq=9 map[0]: type 3, range 32, base fd000000, size 24 map[1]: type 1, range 32, base fea00000, size 21 map[2]: type 1, range 32, base fed00000, size 20 found-> vendor=0x104d, dev=0x8009, revid=0x01 class=0c-00-00, hdrtype=0x00, mfdev=0 subordinatebus=0 secondarybus=0 intpin=a, irq=9 map[0]: type 1, range 32, base fecffc00, size 9 found-> vendor=0x1180, dev=0x0475, revid=0x00 class=06-07-00, hdrtype=0x02, mfdev=0 subordinatebus=0 secondarybus=0 intpin=a, irq=255 pci0: <PCI bus> on pcib0 isab0: <Intel 82371AB PCI to ISA bridge> at device 7.0 on pci0 ide_pci0: <Intel PIIX4 Bus-master IDE controller> at device 7.1 on pci0 intel_piix_status: primary master/slave sample = 3, master/slave recovery = 1 intel_piix_status: primary master fastDMAonly disabled, pre/post enabled, intel_piix_status: IORDY sampling enabled, intel_piix_status: fast PIO enabled intel_piix_status: primary master/slave sample = 3, master/slave recovery = 1 intel_piix_status: primary slave fastDMAonly disabled, pre/post disabled, intel_piix_status: IORDY sampling disabled, intel_piix_status: fast PIO disabled ide_pci: busmaster 0 status: 24 from port: 0000fcd2 ide_pci: ide0:0 has been configured for DMA by BIOS intel_piix_status: secondary master/slave sample = 5, master/slave recovery = 4 intel_piix_status: secondary master fastDMAonly disabled, pre/post disabled, intel_piix_status: IORDY sampling disabled, intel_piix_status: fast PIO disabled intel_piix_status: secondary master/slave sample = 5, master/slave recovery = 4 intel_piix_status: secondary slave fastDMAonly disabled, pre/post disabled, intel_piix_status: IORDY sampling disabled, intel_piix_status: fast PIO disabled ide_pci: busmaster 1 status: 04 from port: 0000fcda uhci0: <Intel 82371AB/EB (PIIX4) USB controller> irq 9 at device 7.2 on pci0 uhci0: USB version 1.0, chip rev. 1 usb0: <Intel 82371AB/EB (PIIX4) USB controller> on uhci0 uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered intpm0: <Intel 82371AB Power management controller> at device 7.3 on pci0 intpm0: I/O mapped 2180 intpm0: intr IRQ 9 enabled revision 0 using shared irq9. intsmb0: <Intel PIIX4 SMBUS Interface> smbus0: <System Management Bus> on intsmb0 smb0: <SMBus general purpose I/O> on smbus0 intpm0: PM I/O mapped 8000 vga-pci0: <NeoMagic NM2160 laptop SVGA controller> irq 9 at device 8.0 on pci0 pcic0: <Ricoh RL5C475 PCI-CardBus Brige> at device 10.0 on pci0 PCI Config space: 00: 04751180 02100007 06070000 00020000 10: 00000000 020000dc 00000000 00000000 20: 00000000 00000000 00000000 00000000 30: 00000000 00000000 00000000 008001ff 40: 8030104d 000003e1 00000000 00000000 50: 00000000 00000000 00000000 00000000 60: 00000000 00000000 00000000 00000000 70: 00000000 00000000 00000000 00000000 80: 00000000 00000000 04630463 00000000 90: 00000000 00000000 00000000 00000000 Cardbus Socket registers: 00: f000ff53: f000ff53: f000e2c3: f000ff53: 10: f000ff53: f000ff54: f000ac16: f000ff53: ExCa registers: 00: fb 77 c5 86 c4 c0 c8 02 08 e8 40 91 88 fe 28 e0 10: 8a 66 03 38 e0 72 02 88 e0 bf 05 00 c4 5e 04 50 20: b4 02 cd 13 5b 73 0a 4f 74 1c 30 e4 cd 13 93 eb 30: eb 0f b6 c3 01 46 08 73 03 ff 46 0a d0 e3 00 5e isa0: <ISA bus> on motherboard fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> at fdc0 drive 0 wdc0 at port 0x1f0-0x1f7 irq 14 flags 0xa0ffa0ff on isa0 wdc0: unit 0 (wd0): <TOSHIBA MK6412MAT>, DMA, 32-bit, multi-block-16 wd0: 6194MB (12685680 sectors), 13424 cyls, 15 heads, 63 S/T, 512 B/S wd0: ATA INQUIRE valid = 0007, dmamword = 0007, apio = 0003, udma = 0407 wdc1: not probed (disabled) atkbdc0: <keyboard controller (i8042)> at port 0x60-0x6f on isa0 atkbd0: <AT Keyboard> irq 1 on atkbdc0 atkbd: the current kbd controller command byte 0047 atkbd: keyboard ID 0x41ab (2) kbdc: RESET_KBD return code:00fa kbdc: RESET_KBD status:00aa kbd0: atkbd0, AT 101/102 (2), config:0x0, flags:0x3d0000 psm0: current command byte:0047 kbdc: TEST_AUX_PORT status:0000 kbdc: RESET_AUX return code:00fa kbdc: RESET_AUX status:00aa kbdc: RESET_AUX ID:0000 psm: status 00 02 64 psm: status 00 00 64 psm: status 00 03 64 psm: status 00 03 64 psm: status 10 00 64 psm: data 08 00 00 psm: data 08 00 00 psm: status 00 02 64 psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model Generic PS/2 mouse, device ID 0-00, 2 buttons psm0: config:00000000, flags:00000000, packet size:3 psm0: syncmask:c0, syncbits:00 vga0: <Generic ISA VGA> at port 0x3b0-0x3df iomem 0xa0000-0xbffff on isa0 fb0: vga0, vga, type:VGA (5), flags:0x7007f fb0: port:0x3b0-0x3df, crtc:0x3d4, mem:0xa0000 0x20000 fb0: init mode:24, bios mode:3, current mode:24 fb0: window:0xc00b8000 size:32k gran:32k, buf:0 size:32k VGA parameters upon power-up 50 18 10 00 00 00 03 00 02 67 5f 4f 50 82 55 81 bf 1f 00 4f 0d 0e 00 00 05 f0 9c 8e 8f 28 1f 96 b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff VGA parameters in BIOS for mode 24 50 18 10 00 10 00 03 00 02 67 5f 4f 50 82 55 81 bf 1f 00 4f 0d 0e 00 00 00 00 9c 8e 8f 28 1f 96 b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff EGA/VGA parameters to be used for mode 24 50 18 10 00 10 00 03 00 02 67 5f 4f 50 82 55 81 bf 1f 00 4f 0d 0e 00 00 00 00 9c 8e 8f 28 1f 96 b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff sc0: <System console> on isa0 sc0: VGA <16 virtual consoles, flags=0x200> sc0: fb0 kbd0 sio0: irq maps: 0x449 0x459 0x449 0x449 sio0 at port 0x3f8-0x3ff irq 4 flags 0x90 on isa0 sio0: type 16550A sio1: irq maps: 0x441 0x449 0x441 0x441 sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A sio2: irq maps: 0x41 0x441 0x41 0x41 sio2 at port 0x3e8-0x3ef irq 10 on isa0 sio2: type 16550A ppc: parallel port found at 0x378 ppc: chipset forced to generic ppc0: ECP SPP ECP+EPP SPP ppc0 at port 0x378-0x37f irq 7 flags 0x40 on isa0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/8 bytes threshold plip: irq 7 plip0: <PLIP network interface> on ppbus 0 bpf: lp0 attached lpt0: <generic printer> on ppbus 0 lpt0: Interrupt-driven port ppi0: <generic parallel i/o> on ppbus 0 mss_probe: no address supplied, try default 0x530 mss_detect error, busy still set (0xff) sb_probe: no address supplied, try defaults (0x220,0x240) pcm0 at port 0x220 irq 5 drq 1 on isa0 ESS1868 (rev 11) device combination doesn't support shared irq3 intr_connect(irq3) failed, result=-1 device combination doesn't support shared irq4 intr_connect(irq4) failed, result=-1 device combination doesn't support shared irq5 intr_connect(irq5) failed, result=-1 device combination doesn't support shared irq7 intr_connect(irq7) failed, result=-1 device combination doesn't support shared irq9 intr_connect(irq9) failed, result=-1 device combination doesn't support shared irq10 intr_connect(irq10) failed, result=-1 device combination doesn't support shared irq12 intr_connect(irq12) failed, result=-1 device combination doesn't support shared irq14 intr_connect(irq14) failed, result=-1 PC-Card Intel 82365 (5 mem & 2 I/O windows) pcic: controller irq 11 Initializing PC-card drivers: ep BIOS Geometries: 0:0345ef3f 0..837=838 cylinders, 0..239=240 heads, 1..63=63 sectors 0 accounted for Device configuration finished. Considering MFS root f/s. No MFS image available as root f/s. IP packet filtering initialized, divert disabled, rule-based forwarding enabled, logging limited to 100 packets/entry DUMMYNET initialized (990504) bpf: tun0 attached bpf: sl0 attached bpf: ppp0 attached new masks: bio 40084240, tty 4003149a, net 4007149a bpf: lo0 attached Considering FFS root f/s. changing root device to wd0s1a Card inserted, slot 0 wd0s1: type 0xa5, start 63, end = 12398399, size 12398337 : OK wd0s4: type 0xa0, start 12398400, end = 12670559, size 272160 : OK start_init: trying /sbin/init And here's the config file: machine i386 cpu I586_CPU ident HABANERO maxusers 64 makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols options MATH_EMULATE #Support for x87 emulation options INET #InterNETworking options FFS #Berkeley Fast Filesystem options FFS_ROOT #FFS usable as root device [keep this!] options MFS #Memory Filesystem options MFS_ROOT #MFS usable as root device, "MFS" req'ed options NFS #Network Filesystem options NFS_ROOT #NFS usable as root device, "NFS" req'ed options MSDOSFS #MSDOS Filesystem options CD9660 #ISO 9660 Filesystem options CD9660_ROOT #CD-ROM usable as root. "CD9660" req'ed options PROCFS #Process filesystem options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=15000 #Be pessimistic about Joe SCSI device options UCONSOLE #Allow users to grab the console options USERCONFIG #boot -c editor options VISUAL_USERCONFIG #visual boot -c editor controller isa0 controller pnp0 # PnP support for ISA controller pci0 #controller pccard0 controller fdc0 at isa? port IO_FD1 irq 6 drq 2 disk fd0 at fdc0 drive 0 #controller ata0 #device atadisk0 # ATA disk drives #device atapicd0 # ATAPI CDROM drives #device atapist0 # ATAPI tape drives controller wdc0 at isa? port IO_WD1 irq 14 flags 0xa0ffa0ff disk wd0 at wdc0 drive 0 disk wd1 at wdc0 drive 1 controller wdc1 at isa? disable port IO_WD2 irq 15 disk wd2 at wdc1 drive 0 disk wd3 at wdc1 drive 1 # atkbdc0 controls both the keyboard and the PS/2 mouse controller atkbdc0 at isa? port IO_KBD device atkbd0 at atkbdc? irq 1 device psm0 at atkbdc? irq 12 # Options for psm: #options PSM_HOOKAPM #options PSM_RESETAFTERSUSPEND 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 apm0 at nexus? flags 0x20 # Advanced Power Management device sio0 at isa? port IO_COM1 flags 0x90 irq 4 device sio1 at isa? port IO_COM2 irq 3 device sio2 at isa? port 0x3e8 irq 10 # Parallel port device ppc0 at isa? port? flags 0x40 irq 7 controller ppbus0 device lpt0 at ppbus? device plip0 at ppbus? device ppi0 at ppbus? device ep0 at isa? port 0x300 irq 10 # SMB Bus controller smbus0 controller intpm0 controller alpm0 device smb0 at smbus? # PCCARD controller card0 device pcic0 at card? #device pcic0 options PCIC_RESUME_RESET # Sound device pcm0 at isa? port ? irq 5 drq 1 flags 0x0 #controller snd0 #device sb0 at isa? port 0x220 irq 5 drq 1 #device sbxvi0 at isa? drq 5 #device sbmidi0 at isa? port 0x330 #device awe0 at isa? port 0x620 # USB controller uhci0 controller ohci0 controller usb0 #controller umass0 device ums0 device ukbd0 device ulpt0 device uhid0 device ugen0 pseudo-device loop pseudo-device ether pseudo-device sl 1 pseudo-device ppp 1 pseudo-device tun 1 pseudo-device pty 32 pseudo-device gzip # Exec gzipped a.out's pseudo-device snp 3 # KTRACE enables the system-call tracing facility ktrace(2). # This adds 4 KB bloat to your kernel, and slightly increases # the costs of each syscall. options KTRACE #kernel tracing # This provides support for System V shared memory and message queues. # options SYSVSHM options SYSVMSG options SYSVSEM # The `bpfilter' pseudo-device enables the Berkeley Packet Filter. Be # aware of the legal and administrative consequences of enabling this # option. The number of devices determines the maximum number of # simultaneous BPF clients programs runnable. pseudo-device bpf 4 #Berkeley packet filter #options NETATALK options MSGBUF_SIZE=16384 options DDB #options DDB_UNATTENDED options BREAK_TO_DEBUGGER options SOFTUPDATES options IPFIREWALL options IPFIREWALL_VERBOSE options IPFIREWALL_FORWARD options IPFIREWALL_VERBOSE_LIMIT=100 options ICMP_BANDLIM options DUMMYNET options USER_LDT #options VM86 #options VESA options P1003_1B options _KPOSIX_PRIORITY_SCHEDULING options _KPOSIX_VERSION=199309L I really don't know crap about what's going on in that part of the kernel, but I'll do whatever I can to help track this down. Or perhaps it will be intuitively obvious from this report. -- Christopher Masto Senior Network Monkey NetMonger Communications [EMAIL PROTECTED] [EMAIL PROTECTED] http://www.netmonger.net Free yourself, free your machine, free the daemon -- http://www.freebsd.org/ To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message