lkml.org 
[lkml]   [2003]   [May]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: 2.5.69: VIA IDE still broken

Apply patch.

On Fri, 9 May 2003, Felix von Leitner wrote:

> I can't believe this still isn't fixed!
>
> hda: dma_timer_expiry: dma status == 0x24
> hda: lost interrupt
> hda: dma_intr: bad DMA status (dma_stat=30)
> hda: dma_intr: status=0x50 { DriveReady SeekComplete }
>
> hda: dma_timer_expiry: dma status == 0x24
> hda: lost interrupt
> hda: dma_intr: bad DMA status (dma_stat=30)
> hda: dma_intr: status=0x50 { DriveReady SeekComplete }
>
> My hda is in perfect health and this does not happen on the same
> hardware with 2.4.* or 2.5.63. I reported this before and got the
> answer that to fix this, recent changes in the IDE code would have to be
> reverted. Apparently I was unreasonably hasty in assuming that that
> would be done now that the need to do it has been established.
>
> I would appreciate it if the fix would be integrated into 2.5.70.
>
> Amazing: the only hardware components in my machine that actually work
> as expected with recent Linux 2.5 kernels are the network cards, the RAM
> and the keyboard, and I had to replace a tulip card with an eepro100 for
> that. Even the CPU appears to run too hot with Linux, causing the
> system to boot spontaneously under load, and because ACPI is terminally
> broken in Linux and has been every time I tried it, I can't do much
> about it. Firewire does not like me (modprobe eth1394 -> oops), IDE
> loses interrupts (see above), my USB mouse stops working as soon as I
> plug in my USB hard disk (which works fine on my notebook and under
> Windows), using my IDE CD-R causes the machine to freeze while cdrecord
> does OTP, finalizing or eject. The nvidia graphics card takes major
> patching to work at all with X, and all of these components are
> well-known brand components from tier 1 suppliers that were chosen for
> reliability and market penetration over price. I envy people who can
> still evangelize Linux under circumstances like this. I sure as hell
> can not.
>
> Felix

So what are you waiting for? Stop whining and start hacking now!
--
Bartlomiej

# Fix masked_irq arg handling for ide_do_request().
# Solves "hdx: lost interrupt" bug.
#
# Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>

drivers/ide/ide-io.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff -puN drivers/ide/ide-io.c~ide_masked_irq drivers/ide/ide-io.c
--- linux-2.5.69/drivers/ide/ide-io.c~ide_masked_irq Thu May 8 17:16:27 2003
+++ linux-2.5.69-root/drivers/ide/ide-io.c Thu May 8 17:16:27 2003
@@ -850,14 +850,14 @@ queue_next:
* happens anyway when any interrupt comes in, IDE or otherwise
* -- the kernel masks the IRQ while it is being handled.
*/
- if (hwif->irq != masked_irq)
+ if (masked_irq != IDE_NO_IRQ && hwif->irq != masked_irq)
disable_irq_nosync(hwif->irq);
spin_unlock(&ide_lock);
local_irq_enable();
/* allow other IRQs while we start this request */
startstop = start_request(drive, rq);
spin_lock_irq(&ide_lock);
- if (hwif->irq != masked_irq)
+ if (masked_irq != IDE_NO_IRQ && hwif->irq != masked_irq)
enable_irq(hwif->irq);
if (startstop == ide_released)
goto queue_next;
_
\
 
 \ /
  Last update: 2005-03-22 13:35    [W:0.097 / U:0.280 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site