DragonFly BSD
DragonFly kernel List (threaded) for 2004-11
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: ATA Patch #6


From: YONETANI Tomokazu <qhwt+dfly@xxxxxxxxxx>
Date: Fri, 26 Nov 2004 00:49:35 +0900

On Thu, Nov 25, 2004 at 12:57:00PM +0900, YONETANI Tomokazu wrote:
> I've only tested ATA Patch #6, so I'll try older patches from you later to
> determine which version worked and which version didn't.

Ok, I tried the rest of ATA Patches #1, #2, #5, #6 on my DynaBook SS3500
(laptop) and on P4S8X(an SiS-based mainboard). The former is equipped with
an ATA66 controller and an ATA100 IDE harddrive. The latter with some
on-board IDE controller(the manual says it's SiS 648) and two ATA100 IDE
drives, one on each channel. I used `dd if=/dev/disk of=/null' to reproduce
the lock-up. Unpatched kernel achieves read rate of around 6Mbytes/sec
(according to the report from dd command) on both machines, even though
SS3500 is operating at UDMA66 mode while P4S8X at ATA100.

ATA Patch #1, #2:
  I didn't notice a difference between these two patches on both machine.
  a slight performance penalty on SS3500, the read rate dropped to around
  5.3Mbytes/sec.

ATA Patch #5:
  no lock-ups on both machines. read rate on SS3500 dropped to something
  like 3.6Mbytes/sec. read rate on P4S8X dropped to 5.4Mbytes/sec on the
  first channel, but the read rate from the second channel didn't seem
  to be affected. irq's are 14 for the first channel and 15 for the second
  channel.

ATA Patch #6:
  timeout at every read access on SS3500 when the controller is operating
  at UDMA66 mode. if I downgraded it to UDMA33 or PIO[0-3] and has no problem.

  on P4S8X, dd from the second drive never reported the progress when
  I pressed ctrl+T, and eventually locked up in a several seconds.

So changes between #5 and #6 are fatal on two of my DragonFly machines,
but #5 has some impact on read performance(I didn't do a write test
because it was meant to find which change is responsible for the lock-ups).



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]