(This originally arose out of the thread: [ntdev] Re: Extreme ISR Priority)
I’ve looked closely at a couple systems we have that are exhibiting this problem with being in PIO mode not
DMA. The particulars:
Win2K w/ SP2 and various other patches.
Motherboard capable of UDMA 33/66 (it does so under Win98, systems are dual boot)
Maxtor Diamond Max Plus 45 46 Gb UDMA 100 (ATA)
SIS IDE 5513 (or 5531?, can’t remember right now, but it is in the HCL for Win2K)
AMI BIOS, upgraded to most recent version circa 2000
The BIOS announces that the drive is set up for UDMA type 4 (ATA 66).
I’ve tried using a utility from Maxtor to set the drive to UDMA 66, no change.
I’ve tried reinstalling the drivers for both the disk and the IDE controller, no change.
I’ve looked at the registry, but don’t see any obvious settings, etc. that would seem to indicate/affect this.
My questions are:
-
Any idea why this doesn’t work? (By the way Maxtor recognizes this problem in their Knowledgebase
and suggested/provided the utility that is supposed to fix this.) -
What registry or other settings affect this?
-
How can I correct it? or fool it into working?
-
Someone mentioned that this happens as a result of too many errors on the IDE channel, and this system
did at one time have a flaky drive connected to it, (we were recovering data from a crashed system).
Any ideas? Comments?
Thanks,
John Miramonti
CTO
Livingston & Co., Inc.
8 Commerce Avenue
West Lebanon, NH 03784
603 298 9600
603 298 7878 Fax
-----Original Message-----
From: Miramonti, John
Sent: Wednesday, November 13, 2002 2:13 PM
To: NT Developers Interest List
Subject: [ntdev] Re: Extreme ISR Priority
Importance: High
Is this (downgrading from DMA to PIO) a possibility in Win2K? WinNT 4? We have witnessed systems that have inexplicably “slowed down”. How can one tell this is happening? Look at a registry key? (Which?) How can it be reset? (Another Registry key?)
Thanks,
John Miramonti
CTO
Livingston & Co., Inc.
8 Commerce Avenue
West Lebanon, NH 03784
603 298 9600
603 298 7878 Fax
-----Original Message-----
From: Bi Chen [mailto:xxxxx@AppStream.com]
Sent: Wednesday, November 13, 2002 2:03 PM
To: NT Developers Interest List
Subject: [ntdev] Re: Extreme ISR Priority
You are right. I have seen this on my Pentium-III. However, I have not seen this ever happened to my Pentium-IV. So I assume he could choose to use latest PC and while his program is running, not leaving a CD in the PC CD/DVD drive. The latest PC all use 80pin IDE ribbon cable on the primary IDE controller with offer much cleaner signal.
I have not looked into this. Is XP SP1 supposed to use IDE minidriver instead of the brain-dead SCSI miniport, or Longhone would be the candidate?
Bi
-----Original Message-----
From: Phil Barila [mailto:xxxxx@Seagate.com]
Sent: Wednesday, November 13, 2002 10:48 AM
To: NT Developers Interest List
Subject: [ntdev] Re: Extreme ISR Priority
“Bi Chen” < xxxxx@AppStream.com> wrote in message news:xxxxx@ntdev…
The DOS does not work well because DOS is not multitasking OS, Network and Disk IO have to be done in interrupt handler, for example. NT/2k/XP are different, all most all interrupt handler (for recent hardware) does very little in interrupt handler. Most works are done in DPC. If you use latest PC, you are rest to be sure that IDE controller use DMA are used for CD/DVD.
Not disagreeing with most of your post, but CD/DVD defaults to PIO, even on Windows XP. You can tell the system to use DMA, but the installation default is PIO. Every XP system I’ve installed has been this way.
More importantly, the various flavors of storage port drivers are “special”, in that all of the important work happens in the miniport, and except for the Enable/DisableInterrupts pair, everything happens at DIRQL, so it’s effectively *all* ISR. And ATAPI is just a modified SCSIPORT, ATAPI, and a few other things thrown in, linked into one binary. It’s subject to the same perversities of all the other storage port drivers. This is easily seen by dumping the strings from atapi.pdb for the XP or W2K version of that driver. Or if you really want to dig, bp all the StartIo routines, there are several. look at IRQL then.
Prior to XP SP1, if there were enough errors on the ATA bus while using DMA, the system would regress to PIO, and the only way to fix it was to delete the channel from Device Manager and let it be redetected. Then you could set it to DMA again. I’ve had this happen to one of my systems with a flaky CDRW.
I don’t know if SP1 will allow you to re-enable DMA without the removal / redetect sequence. I’ve heard rumors that SP1 will actually re-enable DMA after some number of successful PIOs, in the same way that it supposedly manages SCSI speed by degrading on errors and then upgrading after some number of successful IOs. I’ve not tested either of these claimed behaviors.
Phil
Philip D. Barila
Seagate Technology, LLC
(720) 684-1842
E-mail address is pointed at a domain squatter. Use reply-to instead.
You are currently subscribed to ntdev as: xxxxx@appstream.com
To unsubscribe send a blank email to %%email.unsub%%
You are currently subscribed to ntdev as: xxxxx@livco.com
To unsubscribe send a blank email to %%email.unsub%%
You are currently subscribed to ntdev as: xxxxx@livco.com
To unsubscribe send a blank email to %%email.unsub%%