From: Steven Schlansker <stevenschlansker@gmail.com>
To: linux-ide@vger.kernel.org
Subject: siimage card causes repeated oopses and panics on a PowerMac G4 running 2.6.12.1
Date: Mon, 27 Jun 2005 02:20:25 -0700 [thread overview]
Message-ID: <9c1484f205062702203936d7ca@mail.gmail.com> (raw)
I have a SIIG Ultra-ATA 133/100 Pro for Mac card in my Sawtooth G4
that, upon being touched in any way (loading the siimage module,
trying to access the corresponding /dev/hd? entries, and just about
anything else) causes either an oops, a flood of oopses, or a panic.
I have probably isolated it to this driver (siimage.ko), as when built
as a module and not loaded the kernel has no issues at all.
I am running:
Linux 42 2.6.12.1-steven-2 #3 Sat Jun 25 11:23:45 PDT 2005 ppc GNU/Linux
ver_linux reports:
Gnu C 3.3.5
Gnu make 3.80
binutils 2.15
util-linux 2.12p
mount 2.12p
module-init-tools 3.1
e2fsprogs 1.35
jfsutils 1.1.6
reiserfsprogs 3.6.19
reiser4progs 1.0.3
xfsprogs 2.6.20
PPP 2.4.2
Linux C Library 2.3.2
Dynamic linker (ldd) 2.3.2
Procps 3.2.4
Net-tools 1.60
Console-tools 0.2.3
Sh-utils 5.2.1
udev 050
Modules Loaded ipv6
CPU:
cpu : 7455, altivec supported
clock : 900MHz
revision : 0.1 (pvr 8001 0201)
bogomips : 894.97
machine : PowerMac3,1
motherboard : PowerMac3,1 MacRISC2 MacRISC Power Macintosh
detected as : 65 (PowerMac G4 AGP Graphics)
pmac flags : 00000004
L2 cache : 256K unified
memory : 768MB
pmac-generation : NewWorld
The offending card is reported as:
0001:11:03.0 IDE interface: Silicon Image, Inc. (formerly CMD Technology Inc) PC
I0680 Ultra ATA-133 Host Controller (rev 02) (prog-if 85 [Master SecO PriO])
Subsystem: Silicon Image, Inc. (formerly CMD Technology Inc) PCI0680 Ult
ra ATA-133 Host Controller
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step
ping- SERR- FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort
- <MAbort- >SERR- <PERR-
Latency: 16, Cache Line Size: 0x01 (4 bytes)
Interrupt: pin A routed to IRQ 53
Region 0: I/O ports at 1040 [size=8]
Region 1: I/O ports at 1030 [size=4]
Region 2: I/O ports at 1020 [size=8]
Region 3: I/O ports at 1010 [size=4]
Region 4: I/O ports at 1000 [size=16]
Region 5: Memory at 80080000 (32-bit, non-prefetchable) [size=256]
Expansion ROM at 80100000 [disabled] [size=512K]
Capabilities: [60] Power Management version 2
Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot
-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=2 PME-
When I try to insmod/modprobe the siimage driver, it causes an
immediate segmentation fault. The following appears in dmesg:
SiI680: IDE controller at PCI slot 0001:11:03.0
SiI680: chipset revision 2
SiI680: BASE CLOCK == 133
SiI680: 100% native mode on irq 53
ide2: MMIO-DMA , BIOS settings: hde:pio, hdf:pio
ide3: MMIO-DMA , BIOS settings: hdg:pio, hdh:pio
Probing IDE interface ide2...
hde: WDC WD2000BB-22DAA0, ATA DISK drive
ide2 at 0xf1052080-0xf1052087,0xf105208a on irq 53
hde: max request size: 64KiB
hde: 390721968 sectors (200049 MB) w/2048KiB Cache, CHS=24321/255/63, UDMA(100)
hde: cache flushes supported
hde:Oops: kernel access of bad area, sig: 11 [#1]
PREEMPT
NIP: C05C94B8 LR: C05C9A58 SP: E3D73890 REGS: e3d737e0 TRAP: 0300 Not tainted
MSR: 00009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11
DAR: 00000000, DSISR: 42000000
TASK = e438ae50[5644] 'insmod' THREAD: e3d72000
Last syscall: 128
GPR00: 00000050 E3D73890 E438AE50 C0615648 C112DAE8 00000000 C06155B8 00000000
GPR08: 00000000 F8000000 00000001 E01622C0 24002282 10019600 100C0000 100A0000
GPR16: 00000000 100F1648 10030000 10030000 10030000 00000000 C06155B8 C0615648
GPR24: F1052000 C112DAE8 00000000 00000000 00000000 00000000 00000000 F1052000
NIP [c05c94b8] pmac_ide_build_dmatable+0x38/0x20c
LR [c05c9a58] pmac_ide_dma_setup+0x44/0xe8
Call trace:
[c05c9a58] pmac_ide_dma_setup+0x44/0xe8
[c02be54c] __ide_do_rw_disk+0x300/0x524
[c02b1794] start_request+0x170/0x244
[c02b1af4] ide_do_request+0x260/0x40c
[c0294214] __generic_unplug_device+0x68/0x6c
[c0294248] generic_unplug_device+0x30/0x70
[c02942c0] blk_backing_dev_unplug+0x38/0x3c
[c006e51c] block_sync_page+0x74/0x84
[c003f8c4] sync_page+0x74/0x84
[c03f2a60] __wait_on_bit_lock+0xbc/0xd4
[c00401e8] __lock_page+0x50/0x60
[c004225c] read_cache_page+0x1ec/0x310
[c00a8738] read_dev_sector+0x34/0x100
[c00a910c] msdos_partition+0x54/0x400
[c00a812c] check_partition+0xd4/0x160
Oops: kernel access of bad area, sig: 11 [#2]
PREEMPT
NIP: 0FF60DAC LR: C0016180 SP: D1E91D90 REGS: d1e91ce0 TRAP: 0400 Not tainted
MSR: 40001032 EE: 0 PR: 0 FP: 0 ME: 1 IR/DR: 11
TASK = e438a2f0[5697] 'udev' THREAD: d1e90000
Last syscall: 6
GPR00: 0FF60DAC D1E91D90 E438A2F0 E3D73A48 00000003 00000000 D1E91DF8 D1E91DF8
GPR08: 00000475 E3D73A54 00000000 D1E90000 2438A4B0 10027344 100C0000 7FE12E14
GPR16: 00000002 7FE12F2E 10011311 10000000 300269E8 E3B07100 E60A6540 289DA387
GPR24: C05D0000 00000003 00000000 D1E91DF8 00000001 0FF57DF4 C0687F70 0FF636B4
NIP [0ff60dac] 0xff60dac
LR [c0016180] __wake_up_common+0x54/0x9c
Call trace:
[c0016214] __wake_up+0x4c/0x84
[c0034390] __wake_up_bit+0x38/0x48
[c004010c] unlock_page+0x44/0x58
[c0052f9c] do_wp_page+0x854/0x9d0
[c0054f04] handle_mm_fault+0x204/0x230
[c000fec8] do_page_fault+0x150/0x3a8
[c0004b58] handle_page_fault+0xc/0x80
note: udev[5697] exited with preempt_count 3
If I do so much as touch the new /dev/hde entry or such, many more
oopses and occassionally a panic will happen. I can provide more
samples if necessary, I figured two would be enough to get started.
The process is always different, and sometimes it even seems to be
unrelated to the card entirely. Usually it's modprobe and udev. I
have not successfully captured one of the panics with netconsole yet,
but I remember the line "Aieeee, killing interrupt handler" from them.
I do not believe that the hardware is defective, as the exact same
card works very well under Mac OS X (which even boots from a drive
connected to it, so OpenFirmware does not seem to have issues with it
either)
I am really quite desperate, because the internal IDE interfaces do
not work well with my drives > 137GB and this was quite an expensive
card. I would appreciate any help with debugging this, and am quite
willing to do any necessary testing/digging to get it working.
Hopefully this is a quick fix, but my instinct tells me that it is
not...
I have not subscribed to this linux-ide list, as I do not want to
receive possibly hundreds of emails unrelated to this and have very
little chance of being able to help out with other people's issues.
I'm not a veteran kernel hacker (yet!) Therefore, if you could please
CC me in any replies I would greatly appreciate it. If my Reply-To
headers somehow get mangled by the list, my email address is
stevenschlansker _atsign_ gmail.com. Thank you for any possible
fixes!
next reply other threads:[~2005-06-27 9:20 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-06-27 9:20 Steven Schlansker [this message]
2005-06-27 11:22 ` siimage card causes repeated oopses and panics on a PowerMac G4 running 2.6.12.1 Jeff Garzik
2005-06-28 5:30 ` Steven Schlansker
2005-06-29 10:12 ` Bartlomiej Zolnierkiewicz
2005-06-29 23:21 ` Benjamin Herrenschmidt
[not found] ` <58cb370e05062923518ba365b@mail.gmail.com>
[not found] ` <1120114579.31924.46.camel@gaston>
2005-06-30 7:58 ` Steven Schlansker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9c1484f205062702203936d7ca@mail.gmail.com \
--to=stevenschlansker@gmail.com \
--cc=linux-ide@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.