[BUG/WARN] Error initialising drivers in PCI

From: Ian McDonald
Date: Sun Feb 18 2007 - 14:54:03 EST


I'm getting this in my logs when starting up after going from a
2.6.20rc5 kernel (which didn't do this) to Linus' latest tree as of 36
hours ago:

Feb 18 14:52:32 localhost kernel: [ 16.392136] Uniform
Multi-Platform E-IDE driver Revision: 7.00alpha2
Feb 18 14:52:32 localhost kernel: [ 16.392210] ide: Assuming 33MHz
system bus speed for PIO modes; override with idebus=xx
Feb 18 14:52:32 localhost kernel: [ 16.395039] Probing IDE interface ide0...
Feb 18 14:52:32 localhost kernel: [ 16.780057] hda: ST315310A, ATA DISK drive
Feb 18 14:52:32 localhost kernel: [ 17.391365] Probing IDE interface ide1...
Feb 18 14:52:32 localhost kernel: [ 18.184752] hdc: LTN485, ATAPI
CD/DVD-ROM drive
Feb 18 14:52:32 localhost kernel: [ 18.490570] ide0 at
0x1f0-0x1f7,0x3f6 on irq 14
Feb 18 14:52:32 localhost kernel: [ 18.490978] ide1 at
0x170-0x177,0x376 on irq 15
Feb 18 14:52:32 localhost kernel: [ 18.493214] hda: max request size: 128KiB
Feb 18 14:52:32 localhost kernel: [ 18.493735] hda: 29336832 sectors
(15020 MB) w/2048KiB Cache, CHS=29104/16/63
Feb 18 14:52:32 localhost kernel: [ 18.493899] hda: cache flushes
not supported
Feb 18 14:52:32 localhost kernel: [ 18.494530] hda: hda1 hda2 < hda5 >
Feb 18 14:52:32 localhost kernel: [ 18.536466] ata_piix
0000:00:1f.1: version 2.00ac7
Feb 18 14:52:32 localhost kernel: [ 18.536579] ata: 0x1F0 IDE port busy
Feb 18 14:52:32 localhost kernel: [ 18.536583] ata: conflict with ide0
Feb 18 14:52:32 localhost kernel: [ 18.536719] BUG: at
drivers/pci/pci.c:840 pcim_pin_device()
Feb 18 14:52:32 localhost kernel: [ 18.536786] [<c0104e91>]
show_trace_log_lvl+0x1a/0x2f
Feb 18 14:52:32 localhost kernel: [ 18.536897] [<c01054d1>]
show_trace+0x12/0x14
Feb 18 14:52:32 localhost kernel: [ 18.536991] [<c0105583>]
dump_stack+0x16/0x18
Feb 18 14:52:32 localhost kernel: [ 18.537085] [<c01d1c45>]
pcim_pin_device+0x40/0x4d
Feb 18 14:52:32 localhost kernel: [ 18.537201] [<c024822f>]
ata_pci_init_one+0x1ac/0x4bb
Feb 18 14:52:32 localhost kernel: [ 18.537330] [<c024ce7d>]
piix_init_one+0x418/0x435
Feb 18 14:52:32 localhost kernel: [ 18.537431] [<c01d424d>]
pci_device_probe+0x39/0x5b
Feb 18 14:52:32 localhost kernel: [ 18.537528] [<c021c82f>]
really_probe+0xbd/0x145
Feb 18 14:52:32 localhost kernel: [ 18.537638] [<c021c94c>]
driver_probe_device+0x95/0xa1
Feb 18 14:52:32 localhost kernel: [ 18.537734] [<c021ca61>]
__driver_attach+0x6a/0xa1
Feb 18 14:52:32 localhost kernel: [ 18.537829] [<c021be19>]
bus_for_each_dev+0x36/0x5b
Feb 18 14:52:32 localhost kernel: [ 18.537925] [<c021c6a3>]
driver_attach+0x19/0x1b
Feb 18 14:52:32 localhost kernel: [ 18.538019] [<c021c109>]
bus_add_driver+0x6a/0x170
Feb 18 14:52:32 localhost kernel: [ 18.538114] [<c021cc6c>]
driver_register+0x79/0x7e
Feb 18 14:52:32 localhost kernel: [ 18.538209] [<c01d43ca>]
__pci_register_driver+0x7b/0xa8
Feb 18 14:52:32 localhost kernel: [ 18.538381] [<c04280d6>]
piix_init+0x14/0x27
Feb 18 14:52:32 localhost kernel: [ 18.538496] [<c040f708>] init+0x95/0x17a
Feb 18 14:52:32 localhost kernel: [ 18.538597] [<c0104b13>]
kernel_thread_helper+0x7/0x10
Feb 18 14:52:32 localhost kernel: [ 18.538693] =======================
Feb 18 14:52:32 localhost kernel: [ 18.538752] ata: 0x170 IDE port busy
Feb 18 14:52:32 localhost kernel: [ 18.538756] ata: conflict with ide1
Feb 18 14:52:32 localhost kernel: [ 18.538905] ata_piix: probe of
0000:00:1f.1 failed with error -16

Kernel is standard tree with no modifications.

Relevant code which triggers this from devices/pci/pci.c is:
void pcim_pin_device(struct pci_dev *pdev)
{
struct pci_devres *dr;

dr = find_pci_dr(pdev);
WARN_ON(!dr || !dr->disable);
if (dr)
dr->disable = 0;
}

and it is the WARN_ON that is the line.

.config of kernel is attached.
output of lspci -vv is attached.

Can you please cc me on any discussions/requests as not subscribed to lkml.

NB Machine continues with boot and can run after this. Machine is a
little unstable though but could also be Broadcom 4306 issues as not
sure these drivers are yet stable on my machine...

Ian
--
Web: http://wand.net.nz/~iam4
Blog: http://iansblog.jandi.co.nz
WAND Network Research Group

Attachment: config.gz
Description: GNU Zip compressed data

00:00.0 Host bridge: Intel Corporation 82815 815 Chipset Host Bridge and Memory Controller Hub (rev 02)
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ >SERR- <PERR-
Latency: 0
Capabilities: <access denied>

00:02.0 VGA compatible controller: Intel Corporation 82815 CGC [Chipset Graphics Controller] (rev 02) (prog-if 00 [VGA])
Subsystem: Compaq Computer Corporation Unknown device 0019
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 0
Interrupt: pin A routed to IRQ 5
Region 0: Memory at 44000000 (32-bit, prefetchable) [size=64M]
Region 1: Memory at 40400000 (32-bit, non-prefetchable) [size=512K]
Capabilities: <access denied>

00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 01) (prog-if 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 0
Bus: primary=00, secondary=02, subordinate=02, sec-latency=64
I/O behind bridge: 00001000-00001fff
Memory behind bridge: 40000000-403fffff
Secondary status: 66MHz- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ <SERR- <PERR-
BridgeCtl: Parity- SERR+ NoISA+ VGA- MAbort- >Reset- FastB2B-

00:1f.0 ISA bridge: Intel Corporation 82801BA ISA Bridge (LPC) (rev 01)
Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 0

00:1f.1 IDE interface: Intel Corporation 82801BA IDE U100 (rev 01) (prog-if 80 [Master])
Subsystem: Intel Corporation Unknown device 2411
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 0
Region 0: [virtual] Memory at 000001f0 (32-bit, non-prefetchable) [disabled] [size=8]
Region 1: [virtual] Memory at 000003f0 (type 3, non-prefetchable) [disabled] [size=1]
Region 2: [virtual] Memory at 00000170 (32-bit, non-prefetchable) [disabled] [size=8]
Region 3: [virtual] Memory at 00000370 (type 3, non-prefetchable) [disabled] [size=1]
Region 4: I/O ports at 2460 [size=16]

00:1f.4 USB Controller: Intel Corporation 82801BA/BAM USB (Hub #2) (rev 01) (prog-if 00 [UHCI])
Subsystem: Intel Corporation Unknown device 2411
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 0
Interrupt: pin C routed to IRQ 16
Region 4: I/O ports at 2440 [size=32]

00:1f.5 Multimedia audio controller: Intel Corporation 82801BA/BAM AC'97 Audio (rev 01)
Subsystem: Compaq Computer Corporation Compaq Deskpro EN Audio
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 0
Interrupt: pin B routed to IRQ 19
Region 0: I/O ports at 2000 [size=256]
Region 1: I/O ports at 2400 [size=64]

02:04.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 03)
Subsystem: Linksys Unknown device 0013
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-
Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 66
Interrupt: pin A routed to IRQ 18
Region 0: Memory at 40000000 (32-bit, non-prefetchable) [size=8K]

02:08.0 Ethernet controller: Intel Corporation 82801BA/BAM/CA/CAM Ethernet Controller (rev 01)
Subsystem: Compaq Computer Corporation EtherExpress PRO/100 VM
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 66 (2000ns min, 14000ns max), Cache Line Size: 32 bytes
Interrupt: pin A routed to IRQ 17
Region 0: Memory at 40100000 (32-bit, non-prefetchable) [size=4K]
Region 1: I/O ports at 1000 [size=64]
Capabilities: <access denied>