* [PATCH, IDE] Blacklist CD-912E/ATK [not found] <E1EeJoy-0001LS-DG__45201.7337469899$1132611644$gmane$org@iglo.domek.prywatny> @ 2005-11-22 2:44 ` Horms 2005-11-22 20:26 ` Alan Cox 0 siblings, 1 reply; 3+ messages in thread From: Horms @ 2005-11-22 2:44 UTC (permalink / raw) To: Karol Lewandowski, 340228 Cc: Bartlomiej Zolnierkiewicz, linux-kernel, linux-ide URL: http://bugs.debian.org/340228 From: Karol Lewandowski <klz@o2.pl> Package: kernel-image-2.6.8-2-k7 Version: 2.6.8-16 Severity: important Linux kernel 2.6.(everything) panics when mounting cdrom when DMA transfers are enabled (default). It works fine if DMA is disabled. The drive is clearly broken. Adding blacklist to drivers/ide/ide-dma.c for this model ("CD-912E/ATK") fixes this problem. Messages gathered on panic condition: --- Begin kernel messages --- ide-cd: cmd 0x28 timed out hdc: DMA interrupt recovery hdc: lost interrupt hdc: cdrom_decode_status: status=0xd0 { Busy } ide: failed opcode was: unknown hdc: DMA disabled ------------[ cut here ]------------ kernel BUG at drivers/ide/ide-iops.c:949! invalid operand: 0000 [#1] Modules linked in: CPU: 0 EIP: 0060:[<c01ece82>] Not tainted VLI EFLAGS: 00010086 (2.6.14-eve1) EIP is at ide_execute_command+0x22/0x90 eax: c01ecef0 ebx: c02fed38 ecx: 00008000 edx: c3f81580 esi: c02feca8 edi: 00000286 ebp: c01f9000 esp: c02c7e50 ds: 007b es: 007b ss: 0068 Process swapper (pid: 0, threadinfo=c02c6000 task=c028eba0) Stack: 00000082 00808000 c01179e5 a00ce600 c10ce600 c02fed38 c02feca8 c01f8869 c02fed38 000000a0 c01f9000 00001770 c01f86e0 c10d8ec4 c02fed38 c10d8ec4 c10ce600 00000004 c01f938a c02fed38 00008000 c01f9000 c02fed38 c10d8ec4 Call Trace: [<c01179e5>] update_process_times+0x85/0x130 [<c01f8869>] cdrom_start_packet_command+0x119/0x1a0 [<c01f9000>] cdrom_start_read_continuation+0x0/0xb0 [<c01f86e0>] cdrom_timer_expiry+0x0/0x70 [<c01f938a>] cdrom_start_read+0xca/0xd0 [<c01f9000>] cdrom_start_read_continuation+0x0/0xb0 [<c01fa075>] ide_do_rw_cdrom+0x95/0x1b0 [<c01eb1b6>] start_request+0x156/0x240 [<c01eb4fa>] ide_do_request+0x22a/0x380 [<c01eb867>] ide_timer_expiry+0xd7/0x1c0 [<c01eb790>] ide_timer_expiry+0x0/0x1c0 [<c0117b66>] run_timer_softirq+0xb6/0x1b0 [<c0113deb>] __do_softirq+0x7b/0x90 [<c0113e26>] do_softirq+0x26/0x30 [<c010415e>] do_IRQ+0x1e/0x30 [<c0102a46>] common_interrupt+0x1a/0x20 [<c0100920>] default_idle+0x0/0x30 [<c0100943>] default_idle+0x23/0x30 [<c01009e0>] cpu_idle+0x50/0x60 [<c02c87f6>] start_kernel+0x146/0x170 [<c02c8380>] unknown_bootoption+0x0/0x1e0 Code: c3 90 8d b4 26 00 00 00 00 57 56 53 83 ec 10 8b 5c 24 20 0f b6 44 24 24 88 44 24 0f 8b 73 6c 8b 56 08 9c 5f fa 8b 02 85 c0 74 08 <0f> 0b b5 03 9c 08 27 c0 8b 44 24 28 89 02 8b 44 24 30 89 82 dc <0>Kernel panic - not syncing: Fatal exception in interrupt --- End --- Thanks, I'm forwarding the patch you suggest to the IDE maintainers for consideration. It seems to apply to current 2.6 head as well as the somewhat ancient 2.6.8. Signed-off-by: Horms <horms@verge.net.au> diff --git a/drivers/ide/ide-dma.c b/drivers/ide/ide-dma.c index 1e15313..e430717 100644 --- a/drivers/ide/ide-dma.c +++ b/drivers/ide/ide-dma.c @@ -126,6 +126,7 @@ static const struct drive_list_entry dri { "HITACHI CDR-8435" , "ALL" }, { "Toshiba CD-ROM XM-6202B" , "ALL" }, { "CD-532E-A" , "ALL" }, + { "CD-912E/ATK" , "ALL" }, { "E-IDE CD-ROM CR-840", "ALL" }, { "CD-ROM Drive/F5A", "ALL" }, { "WPI CDD-820", "ALL" }, ^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH, IDE] Blacklist CD-912E/ATK 2005-11-22 2:44 ` [PATCH, IDE] Blacklist CD-912E/ATK Horms @ 2005-11-22 20:26 ` Alan Cox 2005-11-23 11:11 ` kl 0 siblings, 1 reply; 3+ messages in thread From: Alan Cox @ 2005-11-22 20:26 UTC (permalink / raw) To: Horms Cc: Karol Lewandowski, 340228, Bartlomiej Zolnierkiewicz, linux-kernel, linux-ide > The drive is clearly broken. Adding blacklist to drivers/ide/ide-dma.c > for this model ("CD-912E/ATK") fixes this problem. That may be the case but knowing if th drive is the problem is more tricky. Firstly try it on a different controller Secondly check for other firmware revisions Thirdly blacklist only your firmware rev if there are others > hdc: DMA disabled > ------------[ cut here ]------------ > kernel BUG at drivers/ide/ide-iops.c:949! > invalid operand: 0000 [#1] That is an IDE layer bug not a drive incompatibility. It may be one triggered the other but until the BUG the kernel was correctly behaving and had just turned off DMA anyway. ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH, IDE] Blacklist CD-912E/ATK 2005-11-22 20:26 ` Alan Cox @ 2005-11-23 11:11 ` kl 0 siblings, 0 replies; 3+ messages in thread From: kl @ 2005-11-23 11:11 UTC (permalink / raw) To: Alan Cox Cc: Horms, Karol Lewandowski, 340228, Bartlomiej Zolnierkiewicz, linux-kernel, linux-ide On Tue, Nov 22, 2005 at 08:26:19 +0000, Alan Cox wrote: > > The drive is clearly broken. Adding blacklist to drivers/ide/ide-dma.c > > for this model ("CD-912E/ATK") fixes this problem. > That may be the case but knowing if th drive is the problem is more > tricky. By saying that drive is broken I meant "it never worked with DMA", at least for me. Sorry for not being clear. I have more to add -- IMHO blacklisting the drive doesn't fix the problem, but just works around it. As I written in my original bug report[1] I thought panic shouldn't happen anyway. I also noted that kernels 2.4.* handle this situation gracefully, and pointed out that the time between panic (in 2.6), and graceful recovery (in 2.4) differs between kernels. [1] http://bugs.debian.org/340228 > Firstly try it on a different controller I tested it on two controllers: 0000:00:07.1 IDE interface: Intel Corp. 82371SB PIIX3 IDE [Natoma/Triton II] 0000:00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01) Kernel panics as before on both of them. > Secondly check for other firmware revisions > Thirdly blacklist only your firmware rev if there are others Here goes output of "hdparm -i" for said drive. Model=CD-912E/ATK, FwRev=17A, SerialNo= Config={ SpinMotCtl Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic } RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0 BuffType=DualPortCache, BuffSize=128kB, MaxMultSect=0 (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0 IORDY=yes, tPIO={min:209,w/IORDY:180}, tDMA={min:150,rec:150} PIO modes: pio0 pio1 pio2 pio3 DMA modes: sdma0 sdma1 sdma2 mdma0 *mdma1 AdvancedPM=no As things are more clear now, I think there is no reason to search for newer firmware for this drive? (This is Generic-IDE bug, right?) > > hdc: DMA disabled > > ------------[ cut here ]------------ > > kernel BUG at drivers/ide/ide-iops.c:949! > > invalid operand: 0000 [#1] > That is an IDE layer bug not a drive incompatibility. It may be one > triggered the other but until the BUG the kernel was correctly behaving > and had just turned off DMA anyway. This is what I thought in the first place, and this is what I suggested in my original bug report. Debian kernel mainainer shortened the report somewhat, probably because it was too long and too boring. Additionaly I incorrectly stated that blacklisting _fixes_ the problem, which was even not what I personally thought. ;) Sorry for that. -- This signature intentionally says nothing. ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2005-11-23 11:16 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <E1EeJoy-0001LS-DG__45201.7337469899$1132611644$gmane$org@iglo.domek.prywatny>
2005-11-22 2:44 ` [PATCH, IDE] Blacklist CD-912E/ATK Horms
2005-11-22 20:26 ` Alan Cox
2005-11-23 11:11 ` kl
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.