pcmcia/cardbus error "kernel_thread_helper"
todd nguyen
toddnguyen at yahoo.com
Tue Oct 5 20:32:06 EDT 2004
Hi,
I'm very new to pcmcia and cardbus technology. I'm
having a problem with loading yenta_socket.ko. The
Linux system just hang. Our cardbus controller is a
pci-to-pci brigde that can be attached one or more
devices after it. We are using this cardbus for pci
expansion. Currently we are using "Linux version
2.6.9-rc1". Can some one give me some pointer to why
it hang? It's possible to have more than one device
attached to the cardbus? How are the memories/IO's
are manage? Below are the output from dmesg and
lspci.
Thanks,
Todd
Step 1: (Boot up the Linux and load the pcmcia
manully)
==============================================
// dmesg output before loading pcmcia_core.o
ide-scsi is deprecated for cd burning! Use ide-cd and
give dev=/dev/hdX as device
scsi0 : SCSI host adapter emulation for IDE ATAPI
devices
Vendor: HL-DT-ST Model: DVD+RW GCA-4040N Rev: C108
Type: CD-ROM ANSI SCSI
revision: 02
IA-32 Microcode Update Driver: v1.14
<tigran at veritas.com>
microcode: error! Bad data in microcode data file
microcode: Error in the microcode data
tg3.c:v3.8 (July 14, 2004)
PCI: Found IRQ 11 for device 0000:02:00.0
PCI: Sharing IRQ 11 with 0000:00:1d.2
PCI: Sharing IRQ 11 with 0000:00:1f.1
eth0: Tigon3 [partno(BCM95705A50) rev 3001 PHY(5705)]
(PCI:33MHz:32-bit) 10/100/1000BaseT Ethernet
00:0d:56:e5:a3:ca
eth0: HostTXDS[1] RXcsums[1] LinkChgREG[1] MIirq[1]
ASF[0] Split[0] WireSpeed[1] TSOcap[1]
ip_tables: (C) 2000-2002 Netfilter core team
ip_tables: (C) 2000-2002 Netfilter core team
tg3: eth0: Link is up at 1000 Mbps, full duplex.
tg3: eth0: Flow control is on for TX and on for RX.
Linux agpgart interface v0.100 (c) Dave Jones
[drm] Initialized radeon 1.11.0 20020828 on minor 0:
ATI Technologies Inc Radeon R250 Lf [Radeon Mobility
9000 M9]
[drm:radeon_cp_init] *ERROR* radeon_cp_init called
without lock held
[drm:radeon_unlock] *ERROR* Process 3006 using kernel
context 0
atkbd.c: Spurious ACK on isa0060/serio0. Some program,
like XFree86, might be trying access hardware
directly.
atkbd.c: Spurious ACK on isa0060/serio0. Some program,
like XFree86, might be trying access hardware
directly.
nfs warning: mount version older than kernel
Step 2: load pcmcia_core.ko
===============================
// dmesg output after inserted pcmcia_core.ko module
Linux Kernel Card Services
options: [pci] [cardbus]
Step 3: load yenta_socket.ko
=============================
// dmesg output after inserted yenta_socket.o
Linux version 2.6.9-rc1 (root at winter-lnx) (gcc version
3.2.3 20030502 (Red Hat
Linux 3.2.3-20)) #1 Wed Sep 29 15:39:33 PDT 2004
BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 000000000009f000
(usable)
BIOS-e820: 000000000009f000 - 00000000000a0000
(reserved)
BIOS-e820: 0000000000100000 - 000000003ffae000
(usable)
BIOS-e820: 000000003ffae000 - 0000000040000000
(reserved)
BIOS-e820: 00000000feda0000 - 00000000fee00000
(reserved)
BIOS-e820: 00000000ffb00000 - 0000000100000000
(reserved)
127MB HIGHMEM available.
896MB LOWMEM available.
On node 0 totalpages: 262062
DMA zone: 4096 pages, LIFO batch:1
Normal zone: 225280 pages, LIFO batch:16
HighMem zone: 32686 pages, LIFO batch:7
DMI 2.3 present.
Built 1 zonelists
Kernel command line: ro root=LABEL=/ hdc=ide-scsi
ide_setup: hdc=ide-scsi
Initializing CPU#0
PID hash table entries: 4096 (order 12: 32768 bytes)
Detected 598.139 MHz processor.
Using tsc for high-res timesource
Console: colour VGA+ 80x25
Dentry cache hash table entries: 131072 (order: 7,
524288 bytes)
Inode-cache hash table entries: 65536 (order: 6,
262144 bytes)
Memory: 1035100k/1048248k available (1756k kernel
code, 12220k reserved, 716k d
ata, 204k init, 130744k highmem)
Checking if this processor honours the WP bit even in
supervisor mode... Ok.
Calibrating delay loop... 1179.64 BogoMIPS
Mount-cache hash table entries: 512 (order: 0, 4096
bytes)
CPU: After generic identify, caps: a7e9f9bf 00000000
00000000 00000000
CPU: After vendor identify, caps: a7e9f9bf 00000000
00000000 00000000
CPU: L1 I cache: 32K, L1 D cache: 32K
CPU: L2 cache: 1024K
CPU: After all inits, caps: a7e9f9bf 00000000
00000000 00000040
CPU: Intel(R) Pentium(R) M processor 1600MHz stepping
05
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Checking 'hlt' instruction... OK.
checking if image is initramfs...it isn't (no cpio
magic); looks like an initrd
Freeing initrd memory: 222k freed
NET: Registered protocol family 16
EISA bus registered
PCI: PCI BIOS revision 2.10 entry at 0xfc97e, last
bus=2
PCI: Using configuration type 1
Linux Plug and Play Support v0.97 (c) Adam Belay
i8k: unable to get SMM Dell signature
i8k: unable to get SMM BIOS version
SCSI subsystem initialized
PCI: Probing PCI hardware
PCI: Probing PCI hardware (bus 00)
PCI: Ignoring BAR0-3 of IDE controller 0000:00:1f.1
PCI: Transparent bridge - 0000:00:1e.0
PCI: Discovered primary peer bus 08 [IRQ]
PCI: Using IRQ router PIIX/ICH [8086/24cc] at
0000:00:1f.0
PCI: IRQ 0 for device 0000:00:1f.1 doesn't match PIRQ
mask - try pci=usepirqmas
k
PCI: Found IRQ 11 for device 0000:00:1f.1
PCI: Sharing IRQ 11 with 0000:00:1d.2
PCI: Sharing IRQ 11 with 0000:02:00.0
get_random_bytes called before random driver
initialization
vesafb: probe of vesafb0 failed with error -6
highmem bounce pool size: 64 pages
Total HugeTLB memory allocated, 0
VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 1024 (order 0, 4096
bytes)
Initializing Cryptographic API
Real Time Clock Driver v1.12
Using anticipatory io scheduler
floppy0: no floppy controllers found
RAMDISK driver initialized: 16 RAM disks of 8192K size
1024 blocksize
PPP generic driver version 2.4.2
Uniform Multi-Platform E-IDE driver Revision:
7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes;
override with idebus=xx
ICH4: IDE controller at PCI slot 0000:00:1f.1
PCI: Enabling device 0000:00:1f.1 (0005 -> 0007)
PCI: Found IRQ 11 for device 0000:00:1f.1
PCI: Sharing IRQ 11 with 0000:00:1d.2
PCI: Sharing IRQ 11 with 0000:02:00.0
ICH4: chipset revision 1
ICH4: not 100% native mode: will probe irqs later
ide0: BM-DMA at 0xbfa0-0xbfa7, BIOS settings:
hda:DMA, hdb:pio
ide1: BM-DMA at 0xbfa8-0xbfaf, BIOS settings:
hdc:DMA, hdd:pio
hda: HITACHI_DK23FB-40, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hdc: HL-DT-ST DVD+RW GCA-4040N, ATAPI CD/DVD-ROM drive
ide1 at 0x170-0x177,0x376 on irq 15
hda: max request size: 128KiB
hda: 78140160 sectors (40007 MB) w/8192KiB Cache,
CHS=65535/16/63
hda: cache flushes supported
hda: hda1 hda2 hda3 hda4 < hda5 hda6 hda7 >
ide-floppy driver 0.99.newide
mice: PS/2 mouse device common for all mice
serio: i8042 AUX port at 0x60,0x64 irq 12
input: PS/2 Generic Mouse on isa0060/serio1
serio: i8042 KBD port at 0x60,0x64 irq 1
input: AT Translated Set 2 keyboard on isa0060/serio0
EISA: Probing bus 0 at eisa0
NET: Registered protocol family 2
IP: routing cache hash table of 8192 buckets, 64Kbytes
[root at winter-lnx kdebug]# ./loop
PCI: Found IRQ 11 for device 0000:02:01.0
PCI: Sharing IRQ 11 with 0000:00:1d.1
PCI: Sharing IRQ 11 with 0000:02:01.1
Yenta: CardBus bridge found at 0000:02:01.0
[1028:011d]
Yenta: ISA IRQ mask 0x04b8, PCI irq 11
Socket status: 30000820
PCI: Found IRQ 11 for device 0000:02:01.1
PCI: Sharing IRQ 11 with 0000:00:1d.1
PCI: Sharing IRQ 11 with 0000:02:01.0
Yenta: CardBus bridge found at 0000:02:01.1
[1028:011d]
Yenta: ISA IRQ mask 0x06b8, PCI irq 11
Socket status: 30000410
Unable to handle kernel NULL pointer dereference at
virtual address 00000008
printing eip:
c017e5fb
*pde = 00000000
Oops: 0000 [#1]
Modules linked in: yenta_socket pcmcia_core nfs lockd
sunrpc radeon agpgart aut
ofs4 tg3 microcode ide_scsi ide_cd cdrom
CPU: 0
EIP: 0060:[<c017e5fb>] Not tainted VLI
EFLAGS: 00010282 (2.6.9-rc1)
EIP is at sysfs_add_file+0x1b/0xa0
eax: 00000000 ebx: f7f5b900 ecx: c0336fe8 edx:
f7f5b940
esi: f7f5b8c0 edi: c02ff3bc ebp: 00000000 esp:
f6ae5e10
ds: 007b es: 007b ss: 0068
Process pccardd (pid: 25070, threadinfo=f6ae4000
task=f6ac1150)
Stack: c02ff340 c01ee199 f7f5b940 f7f5b900 f7f5b8c0
f7f5bbc0 00000007 c01edd03
00000000 c02ff3bc c01ca003 f7f5b938 c02ff3bc
00000000 00000007 f6bb4800
00000001 00000007 00000000 c01ca17c f7f5bbc0
f6bb4800 00000007 0000ffff
Call Trace:
[<c01ee199>] class_device_add+0x129/0x140
[<c01edd03>] class_device_create_file+0x23/0x30
[<c01ca003>] pci_alloc_child_bus+0x93/0xe0
[<c01ca17c>] pci_scan_bridge+0xdc/0x240
[<c01ca959>] pci_scan_child_bus+0xa9/0xb0
[<c01ca263>] pci_scan_bridge+0x1c3/0x240
[<c01ca959>] pci_scan_child_bus+0xa9/0xb0
[<c01ca263>] pci_scan_bridge+0x1c3/0x240
[<f89df89e>] cb_alloc+0xde/0xf0 [pcmcia_core]
[<f89dc769>] socket_insert+0x99/0x110 [pcmcia_core]
[<f89dc9f8>] socket_detect_change+0x58/0x90
[pcmcia_core]
[<f89dcbad>] pccardd+0x17d/0x1f0 [pcmcia_core]
[<c0110a70>] default_wake_function+0x0/0x20
[<c0110a70>] default_wake_function+0x0/0x20
[<f89dca30>] pccardd+0x0/0x1f0 [pcmcia_core]
[<c0104065>] kernel_thread_helper+0x5/0x10
Code: dc 1b f9 ff eb c6 8d 76 00 8d bc 27 00 00 00 00
83 ec 1c 89 6c 24 18 8b 6
c 24 20 89 7c 24 14 8b 7c 24 24 89 5c 24 0c 89 74 24
10 <8b> 45 08 8d 48 68 ff
48 68 0f 88 90 01 00 00 8b 07 89 2c 24 89
Please notice that under 2.4.X it gave me resource
conflict errors and a people recommended that I should
use 2.6.9. I don't know why but this version gave me
a list of devices attached behind the cardbus at it
did not hang. Here is "lspci -v" from my system.
00:00.0 Host bridge: Intel Corp. 82855PM Processor to
I/O Controller (rev 03)
Flags: bus master, fast devsel, latency 0
Memory at e0000000 (32-bit, prefetchable) [size=128M]
Capabilities: <available only to root>
00:01.0 PCI bridge: Intel Corp. 82855PM Processor to
AGP Controller (rev 03) (prog-if 00 [Normal decode])
Flags: bus master, 66Mhz, fast devsel, latency 32
Bus: primary=00, secondary=01, subordinate=01,
sec-latency=32
I/O behind bridge: 0000c000-0000cfff
Memory behind bridge: fc000000-fdffffff
Prefetchable memory behind bridge: e8000000-efffffff
00:1d.0 USB Controller: Intel Corp. 82801DB USB (Hub
#1) (rev 01) (prog-if 00 [UHCI])
Subsystem: Intel Corp.: Unknown device 4541
Flags: bus master, medium devsel, latency 0, IRQ 11
I/O ports at bf80 [size=32]
00:1d.1 USB Controller: Intel Corp. 82801DB USB (Hub
#2) (rev 01) (prog-if 00 [UHCI])
Subsystem: Intel Corp.: Unknown device 4541
Flags: bus master, medium devsel, latency 0, IRQ 11
I/O ports at bf40 [size=32]
00:1d.2 USB Controller: Intel Corp. 82801DB USB (Hub
#3) (rev 01) (prog-if 00 [UHCI])
Subsystem: Intel Corp.: Unknown device 4541
Flags: bus master, medium devsel, latency 0, IRQ 11
I/O ports at bf20 [size=32]
00:1d.7 USB Controller: Intel Corp. 82801DB USB2 (rev
01) (prog-if 20 [EHCI])
Subsystem: Dell Computer Corporation: Unknown device
011d
Flags: bus master, medium devsel, latency 0, IRQ 11
Memory at f4fffc00 (32-bit, non-prefetchable)
[size=1K]
Capabilities: <available only to root>
00:1e.0 PCI bridge: Intel Corp. 82801BAM/CAM PCI
Bridge (rev 81) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=02, subordinate=02,
sec-latency=32
I/O behind bridge: 0000d000-0000efff
Memory behind bridge: f6000000-fbffffff
00:1f.0 ISA bridge: Intel Corp. 82801DBM LPC Interface
Controller (rev 01)
Flags: bus master, medium devsel, latency 0
00:1f.1 IDE interface: Intel Corp. 82801DBM Ultra ATA
Storage Controller (rev 01) (prog-if 8a [Master SecP
PriP])
Subsystem: Intel Corp.: Unknown device 4541
Flags: bus master, medium devsel, latency 0, IRQ 11
I/O ports at <ignored>
I/O ports at <ignored>
I/O ports at <ignored>
I/O ports at <ignored>
I/O ports at bfa0 [size=16]
Memory at 40000000 (32-bit, non-prefetchable)
[size=1K]
00:1f.5 Multimedia audio controller: Intel Corp.
82801DB AC'97 Audio Controller (rev 01)
Subsystem: Dell Computer Corporation: Unknown device
011d
Flags: bus master, medium devsel, latency 0, IRQ 11
I/O ports at b800 [size=256]
I/O ports at bc40 [size=64]
Memory at f4fff800 (32-bit, non-prefetchable)
[size=512]
Memory at f4fff400 (32-bit, non-prefetchable)
[size=256]
Capabilities: <available only to root>
01:00.0 VGA compatible controller: ATI Technologies
Inc Radeon R250 Lf [Radeon Mobility 9000 M9] (rev 02)
(prog-if 00 [VGA])
Subsystem: Dell Computer Corporation: Unknown device
011d
Flags: bus master, VGA palette snoop, stepping,
66Mhz, medium devsel, latency 32, IRQ 11
Memory at e8000000 (32-bit, prefetchable) [size=128M]
I/O ports at c000 [size=256]
Memory at fcff0000 (32-bit, non-prefetchable)
[size=64K]
Expansion ROM at <unassigned> [disabled] [size=128K]
Capabilities: <available only to root>
02:00.0 Ethernet controller: Broadcom Corporation
NetXtreme BCM5705M Gigabit Ethernet (rev 01)
Subsystem: Dell Computer Corporation: Unknown device
865d
Flags: bus master, 66Mhz, medium devsel, latency 32,
IRQ 11
Memory at faff0000 (64-bit, non-prefetchable)
[size=64K]
Capabilities: <available only to root>
02:01.0 CardBus bridge: O2 Micro, Inc.: Unknown device
7113 (rev 20)
Subsystem: Dell Computer Corporation: Unknown device
011d
Flags: bus master, stepping, slow devsel, latency
168, IRQ 11
Memory at 40001000 (32-bit, non-prefetchable)
[size=4K]
Bus: primary=02, secondary=03, subordinate=06,
sec-latency=176
Memory window 0: 40400000-407ff000 (prefetchable)
Memory window 1: 40800000-40bff000
I/O window 0: 00004000-000040ff
I/O window 1: 00004400-000044ff
16-bit legacy interface ports at 0001
02:01.1 CardBus bridge: O2 Micro, Inc.: Unknown device
7113 (rev 20)
Subsystem: Dell Computer Corporation: Unknown device
011d
Flags: bus master, stepping, slow devsel, latency
168, IRQ 11
Memory at 40002000 (32-bit, non-prefetchable)
[size=4K]
Bus: primary=02, secondary=07, subordinate=0a,
sec-latency=176
Memory window 0: 40c00000-40fff000 (prefetchable)
Memory window 1: 41000000-413ff000
I/O window 0: 00004800-000048ff
I/O window 1: 00004c00-00004cff
16-bit legacy interface ports at 0001
03:00.0 PCI bridge: Unknown device 9902:0001 (rev 02)
(prog-if 00 [Normal decode])
Flags: 66Mhz, medium devsel
Bus: primary=03, secondary=04, subordinate=07,
sec-latency=0
I/O behind bridge: 00000000-00000fff
Memory behind bridge: 40800000-40bfffff
Prefetchable memory behind bridge:
0000000040800000-0000000040b00000
Capabilities: <available only to root>
03:00.1 Bridge: Unknown device 9902:0002 (rev 02)
Flags: 66Mhz, medium devsel, IRQ 11
I/O ports at <unassigned> [disabled]
Capabilities: <available only to root>
04:00.0 PCI bridge: Unknown device 9902:0003 (rev 01)
(prog-if 00 [Normal decode])
Flags: 66Mhz, medium devsel
Bus: primary=04, secondary=05, subordinate=07,
sec-latency=0
I/O behind bridge: 00000000-00000fff
Memory behind bridge: 00000000-000fffff
Prefetchable memory behind bridge:
0000000000000000-0000000000000000
Capabilities: <available only to root>
04:00.0 PCI bridge: Unknown device 9902:0003 (rev 01)
(prog-if 00 [Normal decode])
Flags: 66Mhz, medium devsel
Bus: primary=04, secondary=05, subordinate=07,
sec-latency=0
I/O behind bridge: 00000000-00000fff
Memory behind bridge: 00000000-000fffff
Prefetchable memory behind bridge:
0000000000000000-0000000000000000
Capabilities: <available only to root>
05:01.0 PCI bridge: Unknown device 9902:0001 (rev 02)
(prog-if 00 [Normal decode])
Flags: 66Mhz, medium devsel
Bus: primary=05, secondary=06, subordinate=06,
sec-latency=0
I/O behind bridge: 00000000-00000fff
Memory behind bridge: 00000000-000fffff
Prefetchable memory behind bridge:
0000000000000000-0000000000000000
Capabilities: <available only to root>
05:01.0 PCI bridge: Unknown device 9902:0001 (rev 02)
(prog-if 00 [Normal decode])
Flags: 66Mhz, medium devsel
Bus: primary=05, secondary=06, subordinate=06,
sec-latency=0
I/O behind bridge: 00000000-00000fff
Memory behind bridge: 00000000-000fffff
Prefetchable memory behind bridge:
0000000000000000-0000000000000000
Capabilities: <available only to root>
05:02.0 PCI bridge: Unknown device 9902:0001 (rev 02)
(prog-if 00 [Normal decode])
Flags: 66Mhz, medium devsel
Bus: primary=05, secondary=07, subordinate=07,
sec-latency=0
I/O behind bridge: 00000000-00000fff
Memory behind bridge: 00000000-000fffff
Prefetchable memory behind bridge:
0000000000000000-0000000000000000
Capabilities: <available only to root>
05:02.0 PCI bridge: Unknown device 9902:0001 (rev 02)
(prog-if 00 [Normal decode])
Flags: 66Mhz, medium devsel
Bus: primary=05, secondary=07, subordinate=07,
sec-latency=0
I/O behind bridge: 00000000-00000fff
Memory behind bridge: 00000000-000fffff
Prefetchable memory behind bridge:
0000000000000000-0000000000000000
Capabilities: <available only to root>
06:0b.0 Signal processing controller: Catalyst
Enterprises Inc TA700 PCI Bus Analyzer/Exerciser (rev
01)
Flags: stepping, 66Mhz, slow devsel, IRQ 11
I/O ports at 1000 [disabled]
Memory at <unassigned> (64-bit, prefetchable)
[disabled] [size=1M]
Capabilities: <available only to root>
06:0b.0 Signal processing controller: Catalyst
Enterprises Inc TA700 PCI Bus Analyzer/Exerciser (rev
01)
Flags: stepping, 66Mhz, slow devsel, IRQ 11
I/O ports at 1000 [disabled]
Memory at <unassigned> (64-bit, prefetchable)
[disabled] [size=1M]
Capabilities: <available only to root>
06:0d.0 Class 1200: Unknown device 1830:7036 (rev ad)
Subsystem: Unknown device 1830:7036
Flags: 66Mhz, medium devsel, IRQ 11
Memory at <unassigned> (32-bit, non-prefetchable)
[disabled] [size=512]
I/O ports at 1000 [disabled]
Memory at <unassigned> (32-bit, non-prefetchable)
[disabled] [size=2M]
Capabilities: <available only to root>
06:0d.0 Class 1200: Unknown device 1830:7036 (rev ad)
Subsystem: Unknown device 1830:7036
Flags: 66Mhz, medium devsel, IRQ 11
Memory at <unassigned> (32-bit, non-prefetchable)
[disabled] [size=512]
I/O ports at 1000 [disabled]
Memory at <unassigned> (32-bit, non-prefetchable)
[disabled] [size=2M]
Capabilities: <available only to root>
06:1f.0 Bridge: Unknown device 9902:0002 (rev 02)
Flags: 66Mhz, medium devsel, IRQ 11
Memory at <unassigned> (32-bit, non-prefetchable)
[disabled] [size=32K]
I/O ports at 1000 [disabled]
Capabilities: <available only to root>
06:1f.0 Bridge: Unknown device 9902:0002 (rev 02)
Flags: 66Mhz, medium devsel, IRQ 11
Memory at <unassigned> (32-bit, non-prefetchable)
[disabled] [size=32K]
I/O ports at 1000 [disabled]
Capabilities: <available only to root>
More information about the linux-pcmcia
mailing list