linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Greg Stark <gsstark@mit.edu>
To: Jeff Garzik <jgarzik@pobox.com>
Cc: Greg Stark <gsstark@mit.edu>, Mike Fedyk <mfedyk@matchmail.com>,
	Erik Steffl <steffl@bigfoot.com>,
	linux-kernel@vger.kernel.org
Subject: Re: libata in 2.4.24?
Date: 02 Dec 2003 13:51:17 -0500	[thread overview]
Message-ID: <87iskz9hp6.fsf@stark.dyndns.tv> (raw)
In-Reply-To: <20031202180241.GB1990@gtf.org>


Jeff Garzik <jgarzik@pobox.com> writes:

> If true, this is an IDE driver bug...  assuming the drive itself
> doesn't lie about FLUSH CACHE results (a few do).

I don't think the IDE drivers issue FLUSH CACHE after every write on O_SYNC,
or after fsync calls. The "lying" discussed on the database lists is when a
normal write is issued, IDE disks report immediate success even before the
write hits disk. As far as I know from the lists it seems *all* IDE disks
behave this way unless write caching is disabled.

This doesn't happen with SCSI disks where multiple requests can be pending so
there's no urgency to reporting a false success. The request doesn't complete
until the write hits disk. As a result SCSI disks are reliable for database
operation and IDE disks aren't unless write caching is disabled.

> If the drive lies, there isn't a darned thing we can do about it...
>
> If the drive lies, there isn't a darned thing the controller can do
> about it, either ;-)

Of course not, but the assumption is that they're only lying because of the
lack of a TCQ interface. If they could have multiple requests pending there
would be no need to lie any more at all.

I'm unclear on which of your #2 or #3 will be the solution though. Do either
or both of them require that writes actually hit disk before the drive reports
success? Do either of them allow that semantic without destroying concurrent
performance?

-- 
greg


  reply	other threads:[~2003-12-02 18:51 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-11-28 18:27 linux-2.4.23 released Marcelo Tosatti
2003-11-28 19:06 ` Willy Tarreau
2003-11-28 22:55 ` J.A. Magallon
2003-11-29 22:26 ` libata in 2.4.24? Samuel Flory
2003-11-29 23:10   ` Marcelo Tosatti
2003-12-01 10:43     ` Marcelo Tosatti
2003-12-01 18:06       ` Samuel Flory
2003-12-01 21:12         ` Greg Stark
2003-12-01 21:23           ` Samuel Flory
2003-12-01 21:44             ` Greg Stark
2003-12-01 22:00               ` Jeff Garzik
2003-12-01 22:06               ` Samuel Flory
2003-12-01 22:00             ` Erik Steffl
2003-12-02  5:36               ` Greg Stark
     [not found]                 ` <20031202055336.GO1566@mis-mike-wstn.matchmail.com>
2003-12-02  5:58                   ` Mike Fedyk
2003-12-02 16:31                     ` Greg Stark
2003-12-02 17:40                       ` Mike Fedyk
2003-12-02 18:04                         ` Jeff Garzik
2003-12-02 18:46                           ` Mike Fedyk
2003-12-02 18:49                             ` Jeff Garzik
2003-12-04  8:18                         ` Jens Axboe
2003-12-02 18:02                       ` Jeff Garzik
2003-12-02 18:51                         ` Greg Stark [this message]
2003-12-02 19:06                           ` Jeff Garzik
2003-12-02 20:10                             ` Greg Stark
2003-12-02 20:16                               ` Jeff Garzik
2003-12-02 20:34                                 ` Greg Stark
2003-12-02 22:34                               ` bill davidsen
2003-12-02 23:02                                 ` Mike Fedyk
2003-12-02 23:18                                   ` bill davidsen
2003-12-02 23:40                                     ` Mike Fedyk
2003-12-03  0:01                                     ` Jeff Garzik
2003-12-03  0:47                                 ` Jamie Lokier
2003-12-07  5:33                                   ` Bill Davidsen
2003-12-01 21:36           ` Justin Cormack
2003-12-01 13:41 Xose Vazquez Perez
2003-12-01 14:11 ` Marcelo Tosatti
2003-12-02 19:59   ` Stephan von Krawczynski
2003-12-02 22:05   ` bill davidsen
2003-12-02 22:34     ` Jeff Garzik
2003-12-03  0:34 Xose Vazquez Perez

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87iskz9hp6.fsf@stark.dyndns.tv \
    --to=gsstark@mit.edu \
    --cc=jgarzik@pobox.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mfedyk@matchmail.com \
    --cc=steffl@bigfoot.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).