Re: 2.2.13 + IDE Patch + SMP -> lockup!

Andre Hedrick (andre@suse.com)
Wed, 17 Nov 1999 20:37:09 -0800 (PST)


Andre Hedrick
The Linux IDE guy

On Wed, 17 Nov 1999, Nimrod Mesika wrote:

> Had some random lockups with my new dual-celeron machine. This is a BP6
> board with a dual 400Mhz Celerons (NOT overclocked).
>
> I'm using kernel-2.2.13 with the latest ide patch
> (ide.2.2.13.19991111.patch.gz) so I can use my Maxtor 90871U2 UDMA66
> drive. Everything works fine most of the time (hdparm -t /dev/hde gives
> me 22MB/s - about twice as my Seagate UDMA33 drive). HOWEVER, I do have
> some random lockups occationaly (lockup = not even Sysreq can help you
> out.. and no Oops message).
>
> I have tried to pinpoint the problem and these are my findings:
>
> /dev/hda - a UDMA33 Seagate drive
> /dev/hde - UDMA66 Maxtor drive (HPT366 controller onboard).
>
> /dev/hda is normally using UDMA33. When I turn DMA <OFF> (i.e. hdparm
> -d0 /dev/hda) -> the machines locks up!

Nimrod,

Why would you turn the DMAing OFF in a harddrive?
Now if this happened with the kernel calling, I would be very concerned.
Since I just found that in an ERRATA series from Intel that points out
that some late PIIX4E versions crash on a DMA error and can not reset the
bus.............the reset button was the solution in the ERRATA.

> Turning DMA on/off on the UDMA66 controller has no such effect (i.e.
> works correctly).
>
> This problem *does not* happen if I don't patch the kernel. That is, a
> clean 2.2.13 compiled with SMP works OK.
> If the kernel *is* patched with the IDE patch but is *not* compiled with
> SMP support -> again, everything works OK.

Is your SEAGATE an Ultra 66 drive that has been disabled by an OEM tool?
If this is the case, use the tool again to un break the drive.
The kernel knows how to fix the drive/controller combination unless the
drive has been nuked/clobbered.

> My only conclusion is that there is some (bad) interaction of the new
> IDE driver with an SMP kernel.
>
>
>
> --Nimrod.
>
>
> p.s. My original FUJITSU MPD3084AT drive didn't work at all with UDMA
> support:
> ....
> kernel: hde: dma_intr: error=0x84 { DriveStatusError BadCRC }
> kernel: hde: lost interrupt
> kernel: hde: dma_intr: status=0x51 { DriveReady SeekComplete Error }
> kernel: hde: dma_intr: error=0x84 { DriveStatusError BadCRC }
> kernel: hde: lost interrupt
> kernel: hde: dma_intr: status=0x51 { DriveReady SeekComplete Error }
> kernel: hde: dma_intr: error=0x84 { DriveStatusError BadCRC }
> kernel: hde: DMA disabled
>
> So beware of this model.
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.rutgers.edu
> Please read the FAQ at http://www.tux.org/lkml/
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/