2.6.3 oops at kobject_unregister, alsa & aic7xxx
This happens at shutdown when alsa is to close down. I'm running debian sid. NOTE: I recently removed my aic7xxx out of the motherboard, so the driver obviously can't find it. But if I remove aic7xxx from the modules list, this oops does _not_ happen.
I only had 2.6.3-rc1 available, and it behaved the same way.
alex@testme:~$ cat /etc/modules 3c59x snd-emu10k1 aha152x io=0x340 irq=9 reconnect=1 sd_mod aic7xxx st
testme:~# Unable to handle kernel paging request at virtual address
e09e16dc
printing eip:
c01c0c43
*pde = 1fe87067
*pte = 00000000
Oops: 0002 [#1]
CPU: 0
EIP: 0060:[<c01c0c43>] Not tainted
EFLAGS: 00010246
EIP is at unlink+0x33/0x70
eax: e089c4f8 ebx: e089c4dc ecx: c02bfed8 edx: e09e16d8
esi: c02b7e20 edi: c02b2238 ebp: 00000000 esp: df7b7f1c
ds: 007b es: 007b ss: 0068
Process modprobe (pid: 445, threadinfo=df7b6000 task=de5c8720)
Stack: e089c4dc c02b7e20 c01c0f43 e089c4dc e089c4c4 c01eacce e089c4dc
e089c4c4
00000080 c01eb0c3 e089c4c4 e089d040 c01c62e2 e089c4c4 e0895baf
e089c4a0
c012d609 e089d040 0804e320 0000003b 00000000 5f646e73 31756d65
00316b30
Call Trace:
[<c01c0f43>] kobject_unregister+0x13/0x30
[<c01eacce>] bus_remove_driver+0x5e/0x80
[<c01eb0c3>] driver_unregister+0x13/0x28
[<c01c62e2>] pci_unregister_driver+0x12/0x20
[<e0895baf>] alsa_card_emu10k1_exit+0xf/0x35 [snd_emu10k1]
[<c012d609>] sys_delete_module+0x139/0x1b0
[<c013f1eb>] do_munmap+0x11b/0x150
[<c0108c9f>] syscall_call+0x7/0xbCode: 89 4a 04 89 11 89 40 04 89 43 1c 8b 43 28 8b 30 8d 4e 48 89
alex@boxen:/home/devel/fixme$ dec.pl 89 4a 04 89 11 89 40 04 89 43 1c 8b 43 28 8b 30 8d 4e 48 89 (gdb) disass dme Dump of assembler code for function dme: 0x08049470 <dme+0>: mov %ecx,0x4(%edx) 0x08049473 <dme+3>: mov %edx,(%ecx) 0x08049475 <dme+5>: mov %eax,0x4(%eax) 0x08049478 <dme+8>: mov %eax,0x1c(%ebx) 0x0804947b <dme+11>: mov 0x28(%ebx),%eax 0x0804947e <dme+14>: mov (%eax),%esi 0x08049480 <dme+16>: lea 0x48(%esi),%ecx 0x08049483 <dme+19>: mov %eax,(%eax) 0x08049485 <dme+21>: add %al,(%eax) 0x08049487 <dme+23>: add %al,(%eax) End of assembler dump. (gdb) q
alex@testme:~$ dmesg
Linux version 2.6.3 (alex@testme) (gcc version 3.3.3 20040125
(prerelease) (Debian)) #2 Thu Feb 19 23:37:37 CET 2004
BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 000000001fff0000 (usable)
BIOS-e820: 000000001fff0000 - 000000001fff3000 (ACPI NVS)
BIOS-e820: 000000001fff3000 - 0000000020000000 (ACPI data)
BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
511MB LOWMEM available.
On node 0 totalpages: 131056
DMA zone: 4096 pages, LIFO batch:1
Normal zone: 126960 pages, LIFO batch:16
HighMem zone: 0 pages, LIFO batch:1
DMI 2.3 present.
Built 1 zonelists
Kernel command line: root=/dev/hda2 console=tty0 console=ttyS0,19200
console=ttyS1,9600
Local APIC disabled by BIOS -- reenabling.
Found and enabled local APIC!
Initializing CPU#0
PID hash table entries: 2048 (order 11: 16384 bytes)
Detected 1400.299 MHz processor.
Using tsc for high-res timesource
Console: colour VGA+ 80x25
Memory: 515768k/524224k available (1494k kernel code, 7692k reserved,
463k data, 388k init, 0k highmem)
Checking if this processor honours the WP bit even in supervisor mode...
Ok.
Calibrating delay loop... 2752.51 BogoMIPS
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
CPU: After generic identify, caps: 0183fbff c1c7fbff 00000000
00000000
CPU: After vendor identify, caps: 0183fbff c1c7fbff 00000000
00000000
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 256K (64 bytes/line)
CPU: After all inits, caps: 0183fbff c1c7fbff 00000000 00000020
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
CPU: AMD Athlon(tm) processor stepping 04
Enabling fast FPU save and restore... done.
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
enabled ExtINT on CPU#0
ESR value before enabling vector: 00000000
ESR value after enabling vector: 00000000
Using local APIC timer interrupts.
calibrating APIC timer ...
..... CPU clock speed is 1399.0810 MHz.
..... host bus clock speed is 266.0630 MHz.
NET: Registered protocol family 16
EISA bus registered
PCI: PCI BIOS revision 2.10 entry at 0xfb4e0, last bus=1
PCI: Using configuration type 1
mtrr: v2.0 (20020519)
Linux Plug and Play Support v0.97 (c) Adam Belay
pnp: the driver 'system' has been registered
PCI: Probing PCI hardware
PCI: Probing PCI hardware (bus 00)
Disabling VIA memory write queue (PCI ID 0305, rev 03): [55] 89 & 1f ->
09
PCI: Using IRQ router VIA [1106/0686] at 0000:00:07.0
spurious 8259A interrupt: IRQ7.
Machine check exception polling timer started.
Initializing Cryptographic API
Applying VIA southbridge workaround.
PCI: Disabling Via external APIC routing
Real Time Clock Driver v1.12
Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing
disabled
ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
pnp: the driver 'serial' has been registered
PCI: Found IRQ 11 for device 0000:00:0d.0
PCI: Sharing IRQ 11 with 0000:00:0f.0
3c59x: Donald Becker and others. www.scyld.com/network/vortex.html
0000:00:0d.0: 3Com PCI 3c905C Tornado at 0xdc00. Vers LK1.1.19
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with
idebus=xx
VP_IDE: IDE controller at PCI slot 0000:00:07.1
VP_IDE: chipset revision 6
VP_IDE: not 100% native mode: will probe irqs later
ide: Assuming 33MHz system bus speed for PIO modes; override with
idebus=xx
VP_IDE: VIA vt82c686b (rev 40) IDE UDMA100 controller on pci0000:00:07.1
ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA, hdb:DMA
ide1: BM-DMA at 0xd008-0xd00f, BIOS settings: hdc:pio, hdd:pio
hda: SAMSUNG SV2001H, ATA DISK drive
hdb: CD-ROM 52X/AKH, ATAPI CD/DVD-ROM drive
Using anticipatory io scheduler
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: max request size: 128KiB
hda: 39179952 sectors (20060 MB) w/2048KiB Cache, CHS=38869/16/63,
UDMA(100)
hda: hda1 hda2 hda3 hda4
mice: PS/2 mouse device common for all mice
serio: i8042 AUX port at 0x60,0x64 irq 12
input: ImPS/2 Logitech Wheel Mouse on isa0060/serio1
serio: i8042 KBD port at 0x60,0x64 irq 1
input: AT Translated Set 2 keyboard on isa0060/serio0
NET: Registered protocol family 2
IP: routing cache hash table of 4096 buckets, 32Kbytes
TCP: Hash tables configured (established 32768 bind 65536)
NET: Registered protocol family 1
NET: Registered protocol family 17
EXT3-fs: INFO: recovery required on readonly filesystem.
EXT3-fs: write access will be enabled during recovery.
kjournald starting. Commit interval 5 seconds
EXT3-fs: recovery complete.
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.
Freeing unused kernel memory: 388k freed
Adding 488368k swap on /dev/hda3. Priority:-1 extents:1
EXT3 FS on hda2, internal journal
PCI: Found IRQ 11 for device 0000:00:0f.0
PCI: Sharing IRQ 11 with 0000:00:0d.0
SCSI subsystem initialized
aha152x: BIOS test: passed, 1 controller(s) configured
aha152x: resetting bus...
aha152x0: vital data: rev=1, io=0x340 (0x340/0x340), irq=9, scsiid=7,
reconnect=enabled, parity=enabled, synchronous=enabled, delay=1000,
extended translation=disabled
aha152x0: trying software interrupt, ok.
scsi0 : Adaptec 152x SCSI driver; $Revision: 2.7 $
st: Version 20040122, fixed bufsize 32768, s/g segs 256
nfs warning: mount version older than kernelalex@testme:~$ lspci -v
00:00.0 Host bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133]
(rev 03)
Subsystem: ABIT Computer Corp. KT7/KT7-RAID/KT7A/KT7A-RAID
Mainboard
Flags: bus master, medium devsel, latency 8
Memory at d8000000 (32-bit, prefetchable) [size=64M]
Capabilities: <available only to root>00:01.0 PCI bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133 AGP] (prog-if 00 [Normal decode])
Flags: bus master, 66Mhz, medium devsel, latency 0
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0 Memory behind bridge: dc000000-ddffffff
Prefetchable memory behind bridge: d0000000-d7ffffff
Capabilities: <available only to root>
00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 40)
Subsystem: ABIT Computer Corp.: Unknown device 0000
Flags: bus master, stepping, medium devsel, latency 0
Capabilities: <available only to root>
00:07.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE (rev 06) (prog-if 8a [Master SecP PriP])
Subsystem: VIA Technologies, Inc.
VT82C586/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE
Flags: bus master, medium devsel, latency 32
I/O ports at d000 [size=16]
Capabilities: <available only to root>
00:07.2 USB Controller: VIA Technologies, Inc. USB (rev 16) (prog-if 00 [UHCI])
Subsystem: VIA Technologies, Inc. (Wrong ID) USB Controller
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at d400 [size=32]
Capabilities: <available only to root>
00:07.3 USB Controller: VIA Technologies, Inc. USB (rev 16) (prog-if 00 [UHCI])
Subsystem: VIA Technologies, Inc. (Wrong ID) USB Controller
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at d800 [size=32]
Capabilities: <available only to root>
00:07.4 Bridge: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI] (rev
40)
Subsystem: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI]
Flags: medium devsel, IRQ 11
Capabilities: <available only to root>
00:09.0 VGA compatible controller: Matrox Graphics, Inc. MGA 2064W [Millennium] (rev 01) (prog-if 00 [VGA])
Flags: stepping, medium devsel, IRQ 5
Memory at de000000 (32-bit, non-prefetchable) [disabled]
[size=16K]
Memory at df000000 (32-bit, prefetchable) [disabled] [size=8M] Expansion ROM at <unassigned> [disabled] [size=64K]
00:0d.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 74)
Subsystem: 3Com Corporation 3C905C-TX Fast Etherlink for PC
Management NIC
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at dc00 [size=128]
Memory at e1000000 (32-bit, non-prefetchable) [size=128] Expansion ROM at <unassigned> [disabled] [size=128K]
Capabilities: <available only to root>
00:0f.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 0a)
Subsystem: Creative Labs: Unknown device 8066
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at e000 [size=32]
Capabilities: <available only to root>
00:0f.1 Input device controller: Creative Labs SB Live! MIDI/Game Port (rev 0a)
Subsystem: Creative Labs Gameport Joystick
Flags: bus master, medium devsel, latency 32
I/O ports at e400 [size=8]
Capabilities: <available only to root>
01:00.0 VGA compatible controller: nVidia Corporation NV15 [GeForce2 GTS/Pro] (rev a3) (prog-if 00 [VGA])
Subsystem: LeadTek Research Inc. WinFast GeForce2 GTS with TV
output
Flags: bus master, VGA palette snoop, 66Mhz, medium devsel,
latency 32, IRQ 10
Memory at dc000000 (32-bit, non-prefetchable) [size=16M] Memory at d0000000 (32-bit, prefetchable) [size=128M] Expansion ROM at <unassigned> [disabled] [size=64K]
Capabilities: <available only to root>
Quoted 5 lines · Alexander Nyberg
This happens at shutdown when alsa is to close down. I'm running debian sid. NOTE: I recently removed my aic7xxx out of the motherboard, so the driver obviously can't find it. But if I remove aic7xxx from the modules list, this oops does _not_ happen.
That's useful infomation. It indicates that the aic7xxx driver is screwing up the kobject lists.
Just to confirm: are you saying that the aic7xxx driver is loaded at the tie of the oops, but there is no aic7xxx hardware present in the machine?
Quoted 304 lines
I only had 2.6.3-rc1 available, and it behaved the same way.
alex@testme:~$ cat /etc/modules 3c59x snd-emu10k1 aha152x io=0x340 irq=9 reconnect=1 sd_mod aic7xxx sttestme:~# Unable to handle kernel paging request at virtual address e09e16dc printing eip: c01c0c43 *pde = 1fe87067 *pte = 00000000 Oops: 0002 [#1] CPU: 0 EIP: 0060:[<c01c0c43>] Not tainted EFLAGS: 00010246 EIP is at unlink+0x33/0x70 eax: e089c4f8 ebx: e089c4dc ecx: c02bfed8 edx: e09e16d8 esi: c02b7e20 edi: c02b2238 ebp: 00000000 esp: df7b7f1c ds: 007b es: 007b ss: 0068 Process modprobe (pid: 445, threadinfo=df7b6000 task=de5c8720) Stack: e089c4dc c02b7e20 c01c0f43 e089c4dc e089c4c4 c01eacce e089c4dc e089c4c4 00000080 c01eb0c3 e089c4c4 e089d040 c01c62e2 e089c4c4 e0895baf e089c4a0 c012d609 e089d040 0804e320 0000003b 00000000 5f646e73 31756d65 00316b30 Call Trace: [<c01c0f43>] kobject_unregister+0x13/0x30 [<c01eacce>] bus_remove_driver+0x5e/0x80 [<c01eb0c3>] driver_unregister+0x13/0x28 [<c01c62e2>] pci_unregister_driver+0x12/0x20 [<e0895baf>] alsa_card_emu10k1_exit+0xf/0x35 [snd_emu10k1] [<c012d609>] sys_delete_module+0x139/0x1b0 [<c013f1eb>] do_munmap+0x11b/0x150 [<c0108c9f>] syscall_call+0x7/0xbCode: 89 4a 04 89 11 89 40 04 89 43 1c 8b 43 28 8b 30 8d 4e 48 89alex@boxen:/home/devel/fixme$ dec.pl 89 4a 04 89 11 89 40 04 89 43 1c 8b 43 28 8b 30 8d 4e 48 89 (gdb) disass dme Dump of assembler code for function dme: 0x08049470 <dme+0>: mov %ecx,0x4(%edx) 0x08049473 <dme+3>: mov %edx,(%ecx) 0x08049475 <dme+5>: mov %eax,0x4(%eax) 0x08049478 <dme+8>: mov %eax,0x1c(%ebx) 0x0804947b <dme+11>: mov 0x28(%ebx),%eax 0x0804947e <dme+14>: mov (%eax),%esi 0x08049480 <dme+16>: lea 0x48(%esi),%ecx 0x08049483 <dme+19>: mov %eax,(%eax) 0x08049485 <dme+21>: add %al,(%eax) 0x08049487 <dme+23>: add %al,(%eax) End of assembler dump. (gdb) qalex@testme:~$ dmesg Linux version 2.6.3 (alex@testme) (gcc version 3.3.3 20040125 (prerelease) (Debian)) #2 Thu Feb 19 23:37:37 CET 2004 BIOS-provided physical RAM map: BIOS-e820: 0000000000000000 - 000000000009fc00 (usable) BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved) BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved) BIOS-e820: 0000000000100000 - 000000001fff0000 (usable) BIOS-e820: 000000001fff0000 - 000000001fff3000 (ACPI NVS) BIOS-e820: 000000001fff3000 - 0000000020000000 (ACPI data) BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved) 511MB LOWMEM available. On node 0 totalpages: 131056 DMA zone: 4096 pages, LIFO batch:1 Normal zone: 126960 pages, LIFO batch:16 HighMem zone: 0 pages, LIFO batch:1 DMI 2.3 present. Built 1 zonelists Kernel command line: root=/dev/hda2 console=tty0 console=ttyS0,19200 console=ttyS1,9600 Local APIC disabled by BIOS -- reenabling. Found and enabled local APIC! Initializing CPU#0 PID hash table entries: 2048 (order 11: 16384 bytes) Detected 1400.299 MHz processor. Using tsc for high-res timesource Console: colour VGA+ 80x25 Memory: 515768k/524224k available (1494k kernel code, 7692k reserved, 463k data, 388k init, 0k highmem) Checking if this processor honours the WP bit even in supervisor mode... Ok. Calibrating delay loop... 2752.51 BogoMIPS Dentry cache hash table entries: 65536 (order: 6, 262144 bytes) Inode-cache hash table entries: 32768 (order: 5, 131072 bytes) Mount-cache hash table entries: 512 (order: 0, 4096 bytes) CPU: After generic identify, caps: 0183fbff c1c7fbff 00000000 00000000 CPU: After vendor identify, caps: 0183fbff c1c7fbff 00000000 00000000 CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line) CPU: L2 Cache: 256K (64 bytes/line) CPU: After all inits, caps: 0183fbff c1c7fbff 00000000 00000020 Intel machine check architecture supported. Intel machine check reporting enabled on CPU#0. CPU: AMD Athlon(tm) processor stepping 04 Enabling fast FPU save and restore... done. Checking 'hlt' instruction... OK. POSIX conformance testing by UNIFIX enabled ExtINT on CPU#0 ESR value before enabling vector: 00000000 ESR value after enabling vector: 00000000 Using local APIC timer interrupts. calibrating APIC timer ... ..... CPU clock speed is 1399.0810 MHz. ..... host bus clock speed is 266.0630 MHz. NET: Registered protocol family 16 EISA bus registered PCI: PCI BIOS revision 2.10 entry at 0xfb4e0, last bus=1 PCI: Using configuration type 1 mtrr: v2.0 (20020519) Linux Plug and Play Support v0.97 (c) Adam Belay pnp: the driver 'system' has been registered PCI: Probing PCI hardware PCI: Probing PCI hardware (bus 00) Disabling VIA memory write queue (PCI ID 0305, rev 03): [55] 89 & 1f -> 09 PCI: Using IRQ router VIA [1106/0686] at 0000:00:07.0 spurious 8259A interrupt: IRQ7. Machine check exception polling timer started. Initializing Cryptographic API Applying VIA southbridge workaround. PCI: Disabling Via external APIC routing Real Time Clock Driver v1.12 Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing disabled ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A pnp: the driver 'serial' has been registered PCI: Found IRQ 11 for device 0000:00:0d.0 PCI: Sharing IRQ 11 with 0000:00:0f.0 3c59x: Donald Becker and others. www.scyld.com/network/vortex.html 0000:00:0d.0: 3Com PCI 3c905C Tornado at 0xdc00. Vers LK1.1.19 Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx VP_IDE: IDE controller at PCI slot 0000:00:07.1 VP_IDE: chipset revision 6 VP_IDE: not 100% native mode: will probe irqs later ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx VP_IDE: VIA vt82c686b (rev 40) IDE UDMA100 controller on pci0000:00:07.1 ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA, hdb:DMA ide1: BM-DMA at 0xd008-0xd00f, BIOS settings: hdc:pio, hdd:pio hda: SAMSUNG SV2001H, ATA DISK drive hdb: CD-ROM 52X/AKH, ATAPI CD/DVD-ROM drive Using anticipatory io scheduler ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 hda: max request size: 128KiB hda: 39179952 sectors (20060 MB) w/2048KiB Cache, CHS=38869/16/63, UDMA(100) hda: hda1 hda2 hda3 hda4 mice: PS/2 mouse device common for all mice serio: i8042 AUX port at 0x60,0x64 irq 12 input: ImPS/2 Logitech Wheel Mouse on isa0060/serio1 serio: i8042 KBD port at 0x60,0x64 irq 1 input: AT Translated Set 2 keyboard on isa0060/serio0 NET: Registered protocol family 2 IP: routing cache hash table of 4096 buckets, 32Kbytes TCP: Hash tables configured (established 32768 bind 65536) NET: Registered protocol family 1 NET: Registered protocol family 17 EXT3-fs: INFO: recovery required on readonly filesystem. EXT3-fs: write access will be enabled during recovery. kjournald starting. Commit interval 5 seconds EXT3-fs: recovery complete. EXT3-fs: mounted filesystem with ordered data mode. VFS: Mounted root (ext3 filesystem) readonly. Freeing unused kernel memory: 388k freed Adding 488368k swap on /dev/hda3. Priority:-1 extents:1 EXT3 FS on hda2, internal journal PCI: Found IRQ 11 for device 0000:00:0f.0 PCI: Sharing IRQ 11 with 0000:00:0d.0 SCSI subsystem initialized aha152x: BIOS test: passed, 1 controller(s) configured aha152x: resetting bus... aha152x0: vital data: rev=1, io=0x340 (0x340/0x340), irq=9, scsiid=7, reconnect=enabled, parity=enabled, synchronous=enabled, delay=1000, extended translation=disabled aha152x0: trying software interrupt, ok. scsi0 : Adaptec 152x SCSI driver; $Revision: 2.7 $ st: Version 20040122, fixed bufsize 32768, s/g segs 256 nfs warning: mount version older than kernelalex@testme:~$ lspci -v 00:00.0 Host bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133] (rev 03) Subsystem: ABIT Computer Corp. KT7/KT7-RAID/KT7A/KT7A-RAID Mainboard Flags: bus master, medium devsel, latency 8 Memory at d8000000 (32-bit, prefetchable) [size=64M] Capabilities: <available only to root>00:01.0 PCI bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133 AGP] (prog-if 00 [Normal decode])
Flags: bus master, 66Mhz, medium devsel, latency 0
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0 Memory behind bridge: dc000000-ddffffff
Prefetchable memory behind bridge: d0000000-d7ffffff
Capabilities: <available only to root>00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 40)
Subsystem: ABIT Computer Corp.: Unknown device 0000
Flags: bus master, stepping, medium devsel, latency 0
Capabilities: <available only to root>00:07.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE (rev 06) (prog-if 8a [Master SecP PriP])
Subsystem: VIA Technologies, Inc.
VT82C586/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE
Flags: bus master, medium devsel, latency 32
I/O ports at d000 [size=16]
Capabilities: <available only to root>00:07.2 USB Controller: VIA Technologies, Inc. USB (rev 16) (prog-if 00 [UHCI])
Subsystem: VIA Technologies, Inc. (Wrong ID) USB Controller
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at d400 [size=32]
Capabilities: <available only to root>00:07.3 USB Controller: VIA Technologies, Inc. USB (rev 16) (prog-if 00 [UHCI])
Subsystem: VIA Technologies, Inc. (Wrong ID) USB Controller
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at d800 [size=32]
Capabilities: <available only to root>00:07.4 Bridge: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI] (rev
40)
Subsystem: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI]
Flags: medium devsel, IRQ 11
Capabilities: <available only to root>00:09.0 VGA compatible controller: Matrox Graphics, Inc. MGA 2064W [Millennium] (rev 01) (prog-if 00 [VGA])
Flags: stepping, medium devsel, IRQ 5
Memory atde000000(32-bit, non-prefetchable) [disabled]
[size=16K]
Memory atdf000000(32-bit, prefetchable) [disabled] [size=8M] Expansion ROM at <unassigned> [disabled] [size=64K]00:0d.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 74)
Subsystem: 3Com Corporation 3C905C-TX Fast Etherlink for PC
Management NIC
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at dc00 [size=128]
Memory ate1000000(32-bit, non-prefetchable) [size=128] Expansion ROM at <unassigned> [disabled] [size=128K]
Capabilities: <available only to root>00:0f.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 0a)
Subsystem: Creative Labs: Unknown device 8066
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at e000 [size=32]
Capabilities: <available only to root>00:0f.1 Input device controller: Creative Labs SB Live! MIDI/Game Port (rev 0a)
Subsystem: Creative Labs Gameport Joystick
Flags: bus master, medium devsel, latency 32
I/O ports at e400 [size=8]
Capabilities: <available only to root>01:00.0 VGA compatible controller: nVidia Corporation NV15 [GeForce2 GTS/Pro] (rev a3) (prog-if 00 [VGA])
Subsystem: LeadTek Research Inc. WinFast GeForce2 GTS with TV
output
Flags: bus master, VGA palette snoop, 66Mhz, medium devsel,
latency 32, IRQ 10
Memory atdc000000(32-bit, non-prefetchable) [size=16M] Memory atd0000000(32-bit, prefetchable) [size=128M] Expansion ROM at <unassigned> [disabled] [size=64K]
Capabilities: <available only to root>-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Quoted 7 lines
Quoted 5 lines · Alexander Nyberg
This happens at shutdown when alsa is to close down. I'm running debian sid. NOTE: I recently removed my aic7xxx out of the motherboard, so the driver obviously can't find it. But if I remove aic7xxx from the modules list, this oops does _not_ happen.
Quoted 5 lines
That's useful infomation. It indicates that the aic7xxx driver is screwing up the kobject lists.
Just to confirm: are you saying that the aic7xxx driver is loaded at the tie of the oops, but there is no aic7xxx hardware present in the machine?
I have no aic7xxx card in this machine anymore, yet aic7xxx is still loaded at bootup from /etc/modules, which fails. Yes.
The oops itself happens when "alsa is shutting down..." before reboot, and it freezes the machine (forgot to mention that).
This error is fully reproducible, anyone who wants to send me patches just send a message and i'll test them if you wish.
Alex
Quoted 304 lines
Quoted 304 lines
I only had 2.6.3-rc1 available, and it behaved the same way.
alex@testme:~$ cat /etc/modules 3c59x snd-emu10k1 aha152x io=0x340 irq=9 reconnect=1 sd_mod aic7xxx sttestme:~# Unable to handle kernel paging request at virtual address e09e16dc printing eip: c01c0c43 *pde = 1fe87067 *pte = 00000000 Oops: 0002 [#1] CPU: 0 EIP: 0060:[<c01c0c43>] Not tainted EFLAGS: 00010246 EIP is at unlink+0x33/0x70 eax: e089c4f8 ebx: e089c4dc ecx: c02bfed8 edx: e09e16d8 esi: c02b7e20 edi: c02b2238 ebp: 00000000 esp: df7b7f1c ds: 007b es: 007b ss: 0068 Process modprobe (pid: 445, threadinfo=df7b6000 task=de5c8720) Stack: e089c4dc c02b7e20 c01c0f43 e089c4dc e089c4c4 c01eacce e089c4dc e089c4c4 00000080 c01eb0c3 e089c4c4 e089d040 c01c62e2 e089c4c4 e0895baf e089c4a0 c012d609 e089d040 0804e320 0000003b 00000000 5f646e73 31756d65 00316b30 Call Trace: [<c01c0f43>] kobject_unregister+0x13/0x30 [<c01eacce>] bus_remove_driver+0x5e/0x80 [<c01eb0c3>] driver_unregister+0x13/0x28 [<c01c62e2>] pci_unregister_driver+0x12/0x20 [<e0895baf>] alsa_card_emu10k1_exit+0xf/0x35 [snd_emu10k1] [<c012d609>] sys_delete_module+0x139/0x1b0 [<c013f1eb>] do_munmap+0x11b/0x150 [<c0108c9f>] syscall_call+0x7/0xbCode: 89 4a 04 89 11 89 40 04 89 43 1c 8b 43 28 8b 30 8d 4e 48 89alex@boxen:/home/devel/fixme$ dec.pl 89 4a 04 89 11 89 40 04 89 43 1c 8b 43 28 8b 30 8d 4e 48 89 (gdb) disass dme Dump of assembler code for function dme: 0x08049470 <dme+0>: mov %ecx,0x4(%edx) 0x08049473 <dme+3>: mov %edx,(%ecx) 0x08049475 <dme+5>: mov %eax,0x4(%eax) 0x08049478 <dme+8>: mov %eax,0x1c(%ebx) 0x0804947b <dme+11>: mov 0x28(%ebx),%eax 0x0804947e <dme+14>: mov (%eax),%esi 0x08049480 <dme+16>: lea 0x48(%esi),%ecx 0x08049483 <dme+19>: mov %eax,(%eax) 0x08049485 <dme+21>: add %al,(%eax) 0x08049487 <dme+23>: add %al,(%eax) End of assembler dump. (gdb) qalex@testme:~$ dmesg Linux version 2.6.3 (alex@testme) (gcc version 3.3.3 20040125 (prerelease) (Debian)) #2 Thu Feb 19 23:37:37 CET 2004 BIOS-provided physical RAM map: BIOS-e820: 0000000000000000 - 000000000009fc00 (usable) BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved) BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved) BIOS-e820: 0000000000100000 - 000000001fff0000 (usable) BIOS-e820: 000000001fff0000 - 000000001fff3000 (ACPI NVS) BIOS-e820: 000000001fff3000 - 0000000020000000 (ACPI data) BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved) 511MB LOWMEM available. On node 0 totalpages: 131056 DMA zone: 4096 pages, LIFO batch:1 Normal zone: 126960 pages, LIFO batch:16 HighMem zone: 0 pages, LIFO batch:1 DMI 2.3 present. Built 1 zonelists Kernel command line: root=/dev/hda2 console=tty0 console=ttyS0,19200 console=ttyS1,9600 Local APIC disabled by BIOS -- reenabling. Found and enabled local APIC! Initializing CPU#0 PID hash table entries: 2048 (order 11: 16384 bytes) Detected 1400.299 MHz processor. Using tsc for high-res timesource Console: colour VGA+ 80x25 Memory: 515768k/524224k available (1494k kernel code, 7692k reserved, 463k data, 388k init, 0k highmem) Checking if this processor honours the WP bit even in supervisor mode... Ok. Calibrating delay loop... 2752.51 BogoMIPS Dentry cache hash table entries: 65536 (order: 6, 262144 bytes) Inode-cache hash table entries: 32768 (order: 5, 131072 bytes) Mount-cache hash table entries: 512 (order: 0, 4096 bytes) CPU: After generic identify, caps: 0183fbff c1c7fbff 00000000 00000000 CPU: After vendor identify, caps: 0183fbff c1c7fbff 00000000 00000000 CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line) CPU: L2 Cache: 256K (64 bytes/line) CPU: After all inits, caps: 0183fbff c1c7fbff 00000000 00000020 Intel machine check architecture supported. Intel machine check reporting enabled on CPU#0. CPU: AMD Athlon(tm) processor stepping 04 Enabling fast FPU save and restore... done. Checking 'hlt' instruction... OK. POSIX conformance testing by UNIFIX enabled ExtINT on CPU#0 ESR value before enabling vector: 00000000 ESR value after enabling vector: 00000000 Using local APIC timer interrupts. calibrating APIC timer ... ..... CPU clock speed is 1399.0810 MHz. ..... host bus clock speed is 266.0630 MHz. NET: Registered protocol family 16 EISA bus registered PCI: PCI BIOS revision 2.10 entry at 0xfb4e0, last bus=1 PCI: Using configuration type 1 mtrr: v2.0 (20020519) Linux Plug and Play Support v0.97 (c) Adam Belay pnp: the driver 'system' has been registered PCI: Probing PCI hardware PCI: Probing PCI hardware (bus 00) Disabling VIA memory write queue (PCI ID 0305, rev 03): [55] 89 & 1f -> 09 PCI: Using IRQ router VIA [1106/0686] at 0000:00:07.0 spurious 8259A interrupt: IRQ7. Machine check exception polling timer started. Initializing Cryptographic API Applying VIA southbridge workaround. PCI: Disabling Via external APIC routing Real Time Clock Driver v1.12 Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing disabled ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A pnp: the driver 'serial' has been registered PCI: Found IRQ 11 for device 0000:00:0d.0 PCI: Sharing IRQ 11 with 0000:00:0f.0 3c59x: Donald Becker and others. www.scyld.com/network/vortex.html 0000:00:0d.0: 3Com PCI 3c905C Tornado at 0xdc00. Vers LK1.1.19 Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx VP_IDE: IDE controller at PCI slot 0000:00:07.1 VP_IDE: chipset revision 6 VP_IDE: not 100% native mode: will probe irqs later ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx VP_IDE: VIA vt82c686b (rev 40) IDE UDMA100 controller on pci0000:00:07.1 ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA, hdb:DMA ide1: BM-DMA at 0xd008-0xd00f, BIOS settings: hdc:pio, hdd:pio hda: SAMSUNG SV2001H, ATA DISK drive hdb: CD-ROM 52X/AKH, ATAPI CD/DVD-ROM drive Using anticipatory io scheduler ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 hda: max request size: 128KiB hda: 39179952 sectors (20060 MB) w/2048KiB Cache, CHS=38869/16/63, UDMA(100) hda: hda1 hda2 hda3 hda4 mice: PS/2 mouse device common for all mice serio: i8042 AUX port at 0x60,0x64 irq 12 input: ImPS/2 Logitech Wheel Mouse on isa0060/serio1 serio: i8042 KBD port at 0x60,0x64 irq 1 input: AT Translated Set 2 keyboard on isa0060/serio0 NET: Registered protocol family 2 IP: routing cache hash table of 4096 buckets, 32Kbytes TCP: Hash tables configured (established 32768 bind 65536) NET: Registered protocol family 1 NET: Registered protocol family 17 EXT3-fs: INFO: recovery required on readonly filesystem. EXT3-fs: write access will be enabled during recovery. kjournald starting. Commit interval 5 seconds EXT3-fs: recovery complete. EXT3-fs: mounted filesystem with ordered data mode. VFS: Mounted root (ext3 filesystem) readonly. Freeing unused kernel memory: 388k freed Adding 488368k swap on /dev/hda3. Priority:-1 extents:1 EXT3 FS on hda2, internal journal PCI: Found IRQ 11 for device 0000:00:0f.0 PCI: Sharing IRQ 11 with 0000:00:0d.0 SCSI subsystem initialized aha152x: BIOS test: passed, 1 controller(s) configured aha152x: resetting bus... aha152x0: vital data: rev=1, io=0x340 (0x340/0x340), irq=9, scsiid=7, reconnect=enabled, parity=enabled, synchronous=enabled, delay=1000, extended translation=disabled aha152x0: trying software interrupt, ok. scsi0 : Adaptec 152x SCSI driver; $Revision: 2.7 $ st: Version 20040122, fixed bufsize 32768, s/g segs 256 nfs warning: mount version older than kernelalex@testme:~$ lspci -v 00:00.0 Host bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133] (rev 03) Subsystem: ABIT Computer Corp. KT7/KT7-RAID/KT7A/KT7A-RAID Mainboard Flags: bus master, medium devsel, latency 8 Memory at d8000000 (32-bit, prefetchable) [size=64M] Capabilities: <available only to root>00:01.0 PCI bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133 AGP] (prog-if 00 [Normal decode])
Flags: bus master, 66Mhz, medium devsel, latency 0
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0 Memory behind bridge: dc000000-ddffffff
Prefetchable memory behind bridge: d0000000-d7ffffff
Capabilities: <available only to root>00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 40)
Subsystem: ABIT Computer Corp.: Unknown device 0000
Flags: bus master, stepping, medium devsel, latency 0
Capabilities: <available only to root>00:07.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE (rev 06) (prog-if 8a [Master SecP PriP])
Subsystem: VIA Technologies, Inc.
VT82C586/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE
Flags: bus master, medium devsel, latency 32
I/O ports at d000 [size=16]
Capabilities: <available only to root>00:07.2 USB Controller: VIA Technologies, Inc. USB (rev 16) (prog-if 00 [UHCI])
Subsystem: VIA Technologies, Inc. (Wrong ID) USB Controller
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at d400 [size=32]
Capabilities: <available only to root>00:07.3 USB Controller: VIA Technologies, Inc. USB (rev 16) (prog-if 00 [UHCI])
Subsystem: VIA Technologies, Inc. (Wrong ID) USB Controller
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at d800 [size=32]
Capabilities: <available only to root>00:07.4 Bridge: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI] (rev
40)
Subsystem: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI]
Flags: medium devsel, IRQ 11
Capabilities: <available only to root>00:09.0 VGA compatible controller: Matrox Graphics, Inc. MGA 2064W [Millennium] (rev 01) (prog-if 00 [VGA])
Flags: stepping, medium devsel, IRQ 5
Memory atde000000(32-bit, non-prefetchable) [disabled]
[size=16K]
Memory atdf000000(32-bit, prefetchable) [disabled] [size=8M] Expansion ROM at <unassigned> [disabled] [size=64K]00:0d.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 74)
Subsystem: 3Com Corporation 3C905C-TX Fast Etherlink for PC
Management NIC
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at dc00 [size=128]
Memory ate1000000(32-bit, non-prefetchable) [size=128] Expansion ROM at <unassigned> [disabled] [size=128K]
Capabilities: <available only to root>00:0f.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 0a)
Subsystem: Creative Labs: Unknown device 8066
Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at e000 [size=32]
Capabilities: <available only to root>00:0f.1 Input device controller: Creative Labs SB Live! MIDI/Game Port (rev 0a)
Subsystem: Creative Labs Gameport Joystick
Flags: bus master, medium devsel, latency 32
I/O ports at e400 [size=8]
Capabilities: <available only to root>01:00.0 VGA compatible controller: nVidia Corporation NV15 [GeForce2 GTS/Pro] (rev a3) (prog-if 00 [VGA])
Subsystem: LeadTek Research Inc. WinFast GeForce2 GTS with TV
output
Flags: bus master, VGA palette snoop, 66Mhz, medium devsel,
latency 32, IRQ 10
Memory atdc000000(32-bit, non-prefetchable) [size=16M] Memory atd0000000(32-bit, prefetchable) [size=128M] Expansion ROM at <unassigned> [disabled] [size=64K]
Capabilities: <available only to root>-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Quoted 7 lines · Andrew Morton
Quoted 5 lines · Alexander Nyberg
This happens at shutdown when alsa is to close down. I'm running debian sid. NOTE: I recently removed my aic7xxx out of the motherboard, so the driver obviously can't find it. But if I remove aic7xxx from the modules list, this oops does _not_ happen.
Quoted 5 lines
That's useful infomation. It indicates that the aic7xxx driver is screwing up the kobject lists.
Just to confirm: are you saying that the aic7xxx driver is loaded at the tie of the oops, but there is no aic7xxx hardware present in the machine?
I stumbled up this in early January. I posted a patch to linux-scsi, but it dosn't seem to be merged at this point. This problem will also occur with the aic79xx driver.
Here's the location of the original thread:
http://marc.theaimsgroup.com/?l=linux-scsi&m=107307695430108&w=2
I just tried the patch on 2.6.3, and it still applies cleanly.
Eric Kerin
Quoted 16 lines · Eric Kerin
Quoted 7 lines · Andrew Morton
Quoted 5 lines · Alexander Nyberg
This happens at shutdown when alsa is to close down. I'm running debian sid. NOTE: I recently removed my aic7xxx out of the motherboard, so the driver obviously can't find it. But if I remove aic7xxx from the modules list, this oops does _not_ happen.
Quoted 5 lines
That's useful infomation. It indicates that the aic7xxx driver is screwing up the kobject lists.
Just to confirm: are you saying that the aic7xxx driver is loaded at the tie of the oops, but there is no aic7xxx hardware present in the machine?
Quoted 8 lines
I stumbled up this in early January. I posted a patch to linux-scsi, but it dosn't seem to be merged at this point. This problem will also occur with the aic79xx driver.
Here's the location of the original thread:
http://marc.theaimsgroup.com/?l=linux-scsi&m=107307695430108&w=2I just tried the patch on 2.6.3, and it still applies cleanly.
hm, I was looking at that code but it seemed OK. You said "left a stale entry in the pci_device list". Is that correct, or was the entry in the PCI driver list? The latter, surely?
If so, why is that a problem? ahc_linux_pci_exit() takes it out again?
Quoted 24 lines · Andrew Morton
Quoted 23 lines · Eric Kerin
Quoted 7 lines · Andrew Morton
Quoted 5 lines · Alexander Nyberg
This happens at shutdown when alsa is to close down. I'm running debian sid. NOTE: I recently removed my aic7xxx out of the motherboard, so the driver obviously can't find it. But if I remove aic7xxx from the modules list, this oops does _not_ happen.
Quoted 5 lines
That's useful infomation. It indicates that the aic7xxx driver is screwing up the kobject lists.
Just to confirm: are you saying that the aic7xxx driver is loaded at the tie of the oops, but there is no aic7xxx hardware present in the machine?
I stumbled up this in early January. I posted a patch to linux-scsi, but it dosn't seem to be merged at this point. This problem will also occur with the aic79xx driver.
Here's the location of the original thread:
http://marc.theaimsgroup.com/?l=linux-scsi&m=107307695430108&w=2
Quoted 7 lines
Quoted 1 line
I just tried the patch on 2.6.3, and it still applies cleanly.
hm, I was looking at that code but it seemed OK. You said "left a stale entry in the
pci_devicelist". Is that correct, or was the entry in the PCI driver list? The latter, surely?If so, why is that a problem?
ahc_linux_pci_exit()takes it out again?
You are correct it's the PCI driver list, I misspoke in my original mail.
The AIC drivers are currently coded to unload (by returning -ENODEV from the init function) if no devices are found, so the exit function never gets called, leaving the stale entries.
There's a 2nd patch in the above thread that changes those modules to stay loaded even if no devices are found, which Arjan V pointed out was the preferred way for drivers to work.
Eric Kerin
Quoted 4 lines · Eric Kerin
The AIC drivers are currently coded to unload (by returning
-ENODEVfrom
the init function) if no devices are found, so the exit function never gets called, leaving the stale entries.
Oh, OK, leaving the PCI driver registered.
Quoted 3 lines
There's a 2nd patch in the above thread that changes those modules to stay loaded even if no devices are found, which Arjan V pointed out was the preferred way for drivers to work.
Sounds good. Do you have that patch handy?
Quoted 7 lines · Andrew Morton
Quoted 3 lines · Eric Kerin
There's a 2nd patch in the above thread that changes those modules to stay loaded even if no devices are found, which Arjan V pointed out was the preferred way for drivers to work.
Sounds good. Do you have that patch handy?
-
Sure do,
Below are the patches I coded up for the aic7xxx and aic79xx drivers that leave the module loaded.
Eric Kerin
aic7xxx_osm.c 2004-01-03 05:03:41.000000000 -0500 renamed from aic7xxx_osm.c.original 2004-01-02 03:56:32.000000000 -0500 +7 -1
@@ -844,6 +844,7 @@ ahc_linux_detect(Scsi_Host_Template *tem { struct ahc_softc *ahc; int found; + int pci_reg_state; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) /*
@@ -891,8 +892,9 @@ ahc_linux_detect(Scsi_Host_Template *tem */ ahc_list_lockinit(); + pci_reg_state = -1; #ifdef CONFIG_PCI - ahc_linux_pci_init(); + pci_reg_state = ahc_linux_pci_init(); #endif #ifdef CONFIG_EISA
@@ -913,6 +915,10 @@ ahc_linux_detect(Scsi_Host_Template *tem spin_lock_irq(&io_request_lock); #endif aic7xxx_detect_complete++; + if(pci_reg_state == 0 && found == 0){ + return(1); + } + return (found); }
aic79xx_osm.c 2004-01-03 05:05:52.000000000 -0500 renamed from aic79xx_osm.c.original 2004-01-02 02:46:43.000000000 -0500 +7 -1
@@ -856,6 +856,7 @@ ahd_linux_detect(Scsi_Host_Template *tem { struct ahd_softc *ahd; int found; + int pci_reg_state; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) /*
@@ -906,8 +907,9 @@ ahd_linux_detect(Scsi_Host_Template *tem */ ahd_list_lockinit(); + pci_reg_state = -1; #ifdef CONFIG_PCI - ahd_linux_pci_init(); + pci_reg_state = ahd_linux_pci_init(); #endif /*
@@ -924,6 +926,10 @@ ahd_linux_detect(Scsi_Host_Template *tem spin_lock_irq(&io_request_lock); #endif aic79xx_detect_complete++; + if(pci_reg_state == 0 && found == 0){ + return(1); + } + return (found); }
Quoted 3 lines
I stumbled up this in early January. I posted a patch to linux-scsi, but it dosn't seem to be merged at this point. This problem will also occur with the aic79xx driver.
After your report, I integrated a similar fix into the drivers posted from my site back in January.
--
Justin
Quoted 6 lines · [email protected] said:
Quoted 3 lines
I stumbled up this in early January. I posted a patch to linux-scsi, but it dosn't seem to be merged at this point. This problem will also occur with the aic79xx driver.
After your report, I integrated a similar fix into the drivers posted from my site back in January.
great. Are you the new donald becker?
Jason