Basically write-caching becomes irrelevant when you have tags, because
the host does not have to wait for a write to complete before starting
the next one. When IDE tags work, write caching no longer matters.
Without IDE tags you have to turn write caching on in order to get
similar write performance. Without write caching or tags for IDE,
the driver must wait for a write to get completely on the disk and
return an acknowledgement before it can begin queueing the next write.
Unfortunately IDE drives are driven by the consumer market. They just
don't work all that well if write caching is turned off (and tags are
a relatively new feature for IDE), which is why we turned write-caching
back on by default for IDE. While this theoretically introduces the
possibility of out-of-order writes, and while out of order writes have
been shown to occur under certain heavy load situations, we do not know
of a single case where the IDE write caching feature has actually resulted
in any corrupt data.
Now with that all said it may seem that IDE + tags is the perfect
solution for IDE. Unfortunately IDE is a moving target.. the chances
of getting a highly reliable IDE solution are fairly low. Just look
at all the problems we have with something as simple as IDE+DMA.
SCSI hard drives almost universally have tags so this isn't an issue
with SCSI.
The simple answer is that if you care at all about reliability, pay the
premium for SCSI.
-Matt
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-stable" in the body of the message