From owner-freebsd-current Wed Jul 4 15: 9:21 2001 Delivered-To: freebsd-current@freebsd.org Received: from bunrab.catwhisker.org (adsl-63-193-123-122.dsl.snfc21.pacbell.net [63.193.123.122]) by hub.freebsd.org (Postfix) with ESMTP id D08CE37B401 for ; Wed, 4 Jul 2001 15:08:49 -0700 (PDT) (envelope-from david@catwhisker.org) Received: (from david@localhost) by bunrab.catwhisker.org (8.11.4/8.11.4) id f64M8mp14089 for current@freebsd.org; Wed, 4 Jul 2001 15:08:48 -0700 (PDT) Date: Wed, 4 Jul 2001 15:08:48 -0700 (PDT) From: David Wolfskill Message-Id: <200107042208.f64M8mp14089@bunrab.catwhisker.org> To: current@freebsd.org Subject: Interruptable hang starting init in today's -CURRENT Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Well, maybe it's not in starting init per se; I see the usual log messages (I'll quote what gets logged from a "boot-v" below) up to: start_init: trying /sbin/init DEPENDENCY NOTE: portmap will be enabled to support NFS Entropy harvesting: interrupts ethernet point_to_point Leaving the system alone, it will apparently sit there (staying fairly busy, based on the speed of the fan -- this is my laptop) indefinitely. Ctl+Alt+Esc drops into debugger, where I see (hand-copied): Debugger("manual escape to debugger") Stopped at Debugger+0x44 pushl %ebx db> trace Debugger(c0391069) at Debugger+0x44 scgetc(c042e240,2,c169fdc0,c04271e0,4) at scgetc+0x41e sckbdevent(c04271e0,0,c042e240,c169fdc0,c169ee00) at sckbdevent+0x1c5 atkbd_intr(c04271e0,0,ccdd1f7c,c01d3563,c04271e0) at atkbd_intr+0x22 atkbd_isa_intr(c04271e0) at atkbd_isa_intr+0x18 ithread_loop(c169ee00,ccdd1fa8) at ithread_loop+0x2bf fork_exit(c01d32a4,c169ee00,ccdd1fa8) at fork_exit+0xb4 fork_trampoline() at fork_trampoline+0x8 db> show locks exclusive (sleep mutex) Giant (0xc043ef40) locked @ /usr/src/sys/kern/kern_intr.c:519 I do have some experimental code, but that's been unchanged for the past week or so, and affects the an (Aironet) driver mostly; I was able to recreate the symptoms when I power-cycled the machine with neither the CD-ROM nor the Aironet card connected in any way. And interrupting the boot sequence to unload the kernel & load yesterday's -CURRENT kernel (/boot/kernel.old/kernel) worked like a charm -- no hangs. Here's my recent CVSup history: CVSup begin from cvsup14.freebsd.org at Sun Jul 1 03:47:01 PDT 2001 CVSup ended from cvsup14.freebsd.org at Sun Jul 1 03:52:23 PDT 2001 CVSup begin from cvsup14.freebsd.org at Mon Jul 2 03:47:01 PDT 2001 CVSup ended from cvsup14.freebsd.org at Mon Jul 2 03:52:46 PDT 2001 CVSup begin from cvsup14.freebsd.org at Tue Jul 3 03:47:01 PDT 2001 CVSup ended from cvsup14.freebsd.org at Tue Jul 3 03:52:47 PDT 2001 CVSup begin from cvsup14.freebsd.org at Wed Jul 4 03:47:01 PDT 2001 CVSup ended from cvsup14.freebsd.org at Wed Jul 4 03:53:33 PDT 2001 I have a local CVS repository, so I have some flexibility here. (I also run & track -STABLE on the same machine. I got today's -STABLE built & running before attacking -CURRENT, as usual. The "trackinig" is for both -STABLE & -CURRENT, and is daily.) Here's what got logged to /var/run/dmesg.boot from that most recent boot (which was verbose, and I interrupted it with the debugger stuff shown above): Copyright (c) 1992-2001 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 5.0-CURRENT #59: Wed Jul 4 13:02:32 PDT 2001 root@dhcp-140.catwhisker.org:/common/C/obj/usr/src/sys/LAPTOP_30W Calibrating clock(s) ... TSC clock: 746316090 Hz, i8254 clock: 1193151 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 III/Pentium III Xeon/Celeron (746.34-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x683 Stepping = 3 Features=0x383f9ff real memory = 268369920 (262080K bytes) Physical memory chunk(s): 0x00001000 - 0x0009efff, 647168 bytes (158 pages) 0x004e7000 - 0x0ffe7fff, 263196672 bytes (64257 pages) avail memory = 256208896 (250204K bytes) bios32: Found BIOS32 Service Directory header at 0xc00f7210 bios32: Entry = 0xfd890 (c00fd890) Rev = 0 Len = 1 pcibios: PCI BIOS entry at 0xfd890+0x11e pnpbios: Found PnP BIOS data at 0xc00f7240 pnpbios: Entry = f0000:a600 Rev = 1.0 pnpbios: Event flag at 4b4 Other BIOS signatures found: Preloaded elf kernel "kernel" at 0xc04c1000. null: random: mem: Pentium Pro MTRR support enabled Using $PIR table, 7 entries at 0xc00fdf50 apm0: on motherboard apm0: found APM BIOS v1.2, connected at v1.2 npx0: on motherboard npx0: INT 16 interface pcib0: at pcibus 0 on motherboard pci0: physical bus=0 map[10]: type 3, range 32, base e0000000, size 26, enabled found-> vendor=0x8086, dev=0x7190, revid=0x03 bus=0, slot=0, func=0 class=06-00-00, hdrtype=0x00, mfdev=0 found-> vendor=0x8086, dev=0x7191, revid=0x03 bus=0, slot=1, func=0 class=06-04-00, hdrtype=0x01, mfdev=0 map[10]: type 1, range 32, base 44000000, size 12, enabled found-> vendor=0x104c, dev=0xac51, revid=0x00 bus=0, slot=4, func=0 class=06-07-00, hdrtype=0x02, mfdev=1 intpin=a, irq=255 powerspec 1 supports D0 D1 D2 D3 current D0 map[10]: type 1, range 32, base 44001000, size 12, enabled found-> vendor=0x104c, dev=0xac51, revid=0x00 bus=0, slot=4, func=1 class=06-07-00, hdrtype=0x02, mfdev=1 intpin=a, irq=255 powerspec 1 supports D0 D1 D2 D3 current D0 found-> vendor=0x8086, dev=0x7110, revid=0x02 bus=0, slot=7, func=0 class=06-80-00, hdrtype=0x00, mfdev=1 map[20]: type 4, range 32, base 00001050, size 4, enabled found-> vendor=0x8086, dev=0x7111, revid=0x01 bus=0, slot=7, func=1 class=01-01-80, hdrtype=0x00, mfdev=0 map[20]: type 4, range 32, base 00001060, size 5, enabled found-> vendor=0x8086, dev=0x7112, revid=0x01 bus=0, slot=7, func=2 class=0c-03-00, hdrtype=0x00, mfdev=0 intpin=d, irq=7 map[90]: type 4, range 32, base 00001040, size 4, enabled found-> vendor=0x8086, dev=0x7113, revid=0x03 bus=0, slot=7, func=3 class=06-80-00, hdrtype=0x00, mfdev=0 map[10]: type 4, range 32, base 00001400, size 8, enabled found-> vendor=0x125d, dev=0x1978, revid=0x10 bus=0, slot=8, func=0 class=04-01-00, hdrtype=0x00, mfdev=0 intpin=a, irq=7 powerspec 2 supports D0 D1 D2 D3 current D0 map[10]: type 1, range 32, base f4000000, size 8, enabled map[14]: type 4, range 32, base 00001080, size 3, enabled map[18]: type 4, range 32, base 00001800, size 8, enabled found-> vendor=0x11c1, dev=0x0450, revid=0x00 bus=0, slot=16, func=0 class=07-80-00, hdrtype=0x00, mfdev=0 intpin=a, irq=7 powerspec 2 supports D0 D3 current D0 pci0: on pcib0 pcib1: at device 1.0 on pci0 pcib1: secondary bus 1 pcib1: subordinate bus 1 pcib1: I/O decode 0x2000-0x2fff pcib1: memory decode 0xf4100000-0xf41fffff pcib1: prefetched decode 0xf8000000-0xfbffffff pci1: physical bus=1 map[10]: type 3, range 32, base f8000000, size 26, enabled map[14]: type 4, range 32, base 00002000, size 8, enabled map[18]: type 1, range 32, base f4100000, size 14, enabled found-> vendor=0x1002, dev=0x4c46, revid=0x02 bus=1, slot=0, func=0 class=03-00-00, hdrtype=0x00, mfdev=0 intpin=a, irq=11 powerspec 2 supports D0 D1 D2 D3 current D0 pci1: on pcib1 pci1: at 0.0 (no driver attached) pci_cfgintr_unique: hard-routed to irq 11 pci_cfgintr: 0:4 INTA routed to irq 11 pcic0: mem 0x44000000-0x44000fff irq 11 at device 4.0 on pci0 pcic0: Memory mapped device, will work. pcic0: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][pci only] pccard0: on pcic0 stat is 0 pci_cfgintr_unique: hard-routed to irq 11 pci_cfgintr: 0:4 INTA routed to irq 11 pcic1: mem 0x44001000-0x44001fff irq 11 at device 4.1 on pci0 pcic1: Memory mapped device, will work. pcic1: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][pci only] pccard1: on pcic1 stat is 6d PCI-ISA bridge with incorrect subclass 0x80 PCI-ISA bridge with incorrect subclass 0x80 isab0: at device 7.0 on pci0 isa0: on isab0 atapci0: port 0x1050-0x105f at device 7.1 on pci0 ata0: iobase=0x01f0 altiobase=0x03f6 bmaddr=0x1050 ata0: mask=03 ostat0=50 ostat2=00 ata0-slave: ATAPI probe 00 00 ata0-master: ATAPI probe 00 00 ata0: mask=03 stat0=50 stat1=00 ata0-master: ATA probe 01 a5 ata0: devices=01 ata0: at 0x1f0 irq 14 on atapci0 ata1: iobase=0x0170 altiobase=0x0376 bmaddr=0x1058 ata1: mask=02 ostat0=a5 ostat2=00 ata1-master: ATAPI probe 7f 7f ata1-slave: ATAPI probe 14 eb ata1: mask=02 stat0=00 stat1=00 ata1: devices=08 ata1: at 0x170 irq 15 on atapci0 uhci0: port 0x1060-0x107f irq 7 at device 7.2 on pci0 usb0: on uhci0 usb0: USB revision 1.0 uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered pci0: at 7.3 (no driver attached) pcm0: port 0x1400-0x14ff irq 7 at device 8.0 on pci0 setmap (56a000, 4000), nseg=1, error=0 pcm0: Maestro DMA base: 0x56a000 pcm0: ac97 codec id 0x83847609 (SigmaTel STAC9721/9723) pcm0: ac97 codec features 18 bit DAC, 18 bit ADC, 5 bit master volume, SigmaTel 3D Enhancement pcm0: ac97 primary codec extended features AMAP setmap (572000, 4000), nseg=1, error=0 pcm0: pch[0].offset = 0x8000 setmap (581000, 4000), nseg=1, error=0 pcm0: pch[1].offset = 0x17000 setmap (589000, 4000), nseg=1, error=0 pcm0: pch[2].offset = 0x1f000 setmap (591000, 4000), nseg=1, error=0 pcm0: pch[3].offset = 0x27000 pci0: at 16.0 (no driver attached) ata-: ata0 already exists, using ata2 instead ata-: ata1 already exists, using ata3 instead pcic-: pcic0 already exists, using pcic2 instead pcic-: pcic1 already exists, using pcic3 instead pcm-: pcm0 already exists, using pcm1 instead 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 pnpbios: 16 devices, largest 170 bytes PNP0c02: adding io range 0x80-0x80, size=0x1, align=0x1 PNP0c02: adding fixed memory32 range 0xfff80000-0xffffffff, size=0x80000 PNP0c02: end config pnpbios: handle 0 device ID PNP0c02 (020cd041) PNP0c01: adding fixed memory32 range 0-0x9ffff, size=0xa0000 PNP0c01: adding fixed memory32 range 0xe4000-0xfffff, size=0x1c000 PNP0c01: adding fixed memory32 range 0x100000-0xfffffff, size=0xff00000 PNP0c01: end config pnpbios: handle 1 device ID PNP0c01 (010cd041) PNP0200: adding io range 0-0xf, size=0x10, align=0x1 PNP0200: adding io range 0x81-0x8f, size=0xf, align=0x1 PNP0200: adding io range 0xc0-0xdf, size=0x20, align=0x1 PNP0200: adding dma mask 0x10 PNP0200: end config pnpbios: handle 2 device ID PNP0200 (0002d041) PNP0000: adding io range 0x20-0x21, size=0x2, align=0x1 PNP0000: adding io range 0xa0-0xa1, size=0x2, align=0x1 PNP0000: adding irq mask 0x4 PNP0000: end config pnpbios: handle 3 device ID PNP0000 (0000d041) PNP0100: adding io range 0x40-0x43, size=0x4, align=0x1 PNP0100: adding irq mask 0x1 PNP0100: end config pnpbios: handle 4 device ID PNP0100 (0001d041) PNP0b00: adding io range 0x70-0x71, size=0x2, align=0x1 PNP0b00: adding irq mask 0x100 PNP0b00: end config pnpbios: handle 5 device ID PNP0b00 (000bd041) PNP0303: adding io range 0x60-0x60, size=0x1, align=0x1 PNP0303: adding io range 0x64-0x64, size=0x1, align=0x1 PNP0303: adding irq mask 0x2 PNP0303: end config pnpbios: handle 6 device ID PNP0303 (0303d041) PNP0c04: adding io range 0xf0-0xff, size=0x10, align=0x1 PNP0c04: adding irq mask 0x2000 PNP0c04: end config pnpbios: handle 7 device ID PNP0c04 (040cd041) PNP0800: adding io range 0x61-0x61, size=0x1, align=0x1 PNP0800: end config pnpbios: handle 8 device ID PNP0800 (0008d041) PNP0a03: adding io range 0xcf8-0xcff, size=0x8, align=0x1 PNP0a03: end config pnpbios: handle 9 device ID PNP0a03 (030ad041) PNP0c02: adding io range 0x4d0-0x4d1, size=0x2, align=0x1 PNP0c02: adding io range 0x1000-0x103f, size=0x40, align=0x1 PNP0c02: adding io range 0x1040-0x104f, size=0x10, align=0x1 PNP0c02: adding io range 0x10-0x18, size=0x9, align=0x1 PNP0c02: adding io range 0x1f-0x1f, size=0x1, align=0x1 PNP0c02: adding io range 0x24-0x25, size=0x2, align=0x1 PNP0c02: adding io range 0x28-0x29, size=0x2, align=0x1 PNP0c02: adding io range 0x2c-0x2d, size=0x2, align=0x1 PNP0c02: adding io range 0x30-0x31, size=0x2, align=0x1 PNP0c02: adding io range 0x34-0x35, size=0x2, align=0x1 PNP0c02: adding io range 0x38-0x39, size=0x2, align=0x1 PNP0c02: adding io range 0x3c-0x3d, size=0x2, align=0x1 PNP0c02: adding io range 0x50-0x52, size=0x3, align=0x1 PNP0c02: adding io range 0x72-0x77, size=0x6, align=0x1 PNP0c02: adding io range 0x90-0x9f, size=0x10, align=0x1 PNP0c02: adding io range 0xa4-0xa5, size=0x2, align=0x1 PNP0c02: adding io range 0xa8-0xa9, size=0x2, align=0x1 PNP0c02: adding io range 0xac-0xad, size=0x2, align=0x1 PNP0c02: adding io range 0xb0-0xbd, size=0xe, align=0x1 PNP0c02: end config pnpbios: handle 10 device ID PNP0c02 (020cd041) PNP0c02: skipping empty range PNP0c02: end config pnpbios: handle 12 device ID PNP0c02 (020cd041) PNP0c02: adding fixed memory32 range 0xcf000-0xcffff, size=0x1000 PNP0c02: end config pnpbios: handle 13 device ID PNP0c02 (020cd041) PNP0501: adding io range 0x3f8-0x3ff, size=0x8, align=0x1 PNP0501: adding irq mask 0x10 PNP0501: end config pnpbios: handle 15 device ID PNP0501 (0105d041) PNP0f13: end config pnpbios: handle 17 device ID PNP0f13 (130fd041) PNP0700: adding io range 0x3f0-0x3f5, size=0x6, align=0x1 PNP0700: adding io range 0x3f7-0x3f7, size=0x1, align=0x1 PNP0700: adding irq mask 0x40 PNP0700: adding dma mask 0x4 PNP0700: end config pnpbios: handle 20 device ID PNP0700 (0007d041) sc-: sc0 already exists, using sc1 instead vga-: vga0 already exists, using vga1 instead isa_probe_children: disabling PnP devices isa_probe_children: probing non-PnP devices orm0: