From: Chris Mason <chris.mason@oracle.com>
To: James Bottomley <James.Bottomley@suse.de>
Cc: Christof Schmitt <christof.schmitt@de.ibm.com>,
Boaz Harrosh <bharrosh@panasas.com>,
"Martin K. Petersen" <martin.petersen@oracle.com>,
linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-fsdevel@vger.kernel.org
Subject: Re: Wrong DIF guard tag on ext2 write
Date: Tue, 1 Jun 2010 09:49:51 -0400 [thread overview]
Message-ID: <20100601134951.GM8980@think> (raw)
In-Reply-To: <1275399637.21962.11.camel@mulgrave.site>
On Tue, Jun 01, 2010 at 08:40:37AM -0500, James Bottomley wrote:
> On Tue, 2010-06-01 at 09:33 -0400, Chris Mason wrote:
> > On Tue, Jun 01, 2010 at 01:27:56PM +0000, James Bottomley wrote:
> > > On Tue, 2010-06-01 at 12:30 +0200, Christof Schmitt wrote:
> > > > What is the best strategy to continue with the invalid guard tags on
> > > > write requests? Should this be fixed in the filesystems?
> > >
> > > For write requests, as long as the page dirty bit is still set, it's
> > > safe to drop the request, since it's already going to be repeated. What
> > > we probably want is an error code we can return that the layer that sees
> > > both the request and the page flags can make the call.
> >
> > I'm afraid this isn't entirely true. The FS tends to do this:
> >
> > change the page
> > <---------> truck sized race right here where the page is clean
> > mark the page dirty
>
> Would it be too much work in the fs to mark the page dirty before you
> begin altering it (and again after you finish, just in case some cleaner
> noticed and initiated a write)? Or some other flag that indicates page
> under modification? All the process controlling the writeout (which is
> pretty high up in the stack) needs to know is if we triggered the check
> error by altering the page while it was in flight.
I expect that once we went down that path we would end up waiting for
the IO to finish before changing the page. Maybe there is a less
complex way, but I sure didn't see it.
>
> I agree that a block based retry would close all the holes ... it just
> doesn't look elegant to me that the fs will already be repeating the I/O
> if it changed the page and so will block.
We might not ever repeat the IO. We might change the page, write it,
change it again, truncate the file and toss the page completely.
-chris
next prev parent reply other threads:[~2010-06-01 13:50 UTC|newest]
Thread overview: 79+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-31 11:28 Wrong DIF guard tag on ext2 write Christof Schmitt
2010-05-31 11:34 ` Christof Schmitt
2010-05-31 14:20 ` Martin K. Petersen
2010-05-31 14:46 ` Christof Schmitt
2010-06-01 13:16 ` Martin K. Petersen
2010-06-02 13:37 ` Christof Schmitt
2010-06-02 23:20 ` Dave Chinner
2010-06-04 1:34 ` Martin K. Petersen
2010-06-04 2:32 ` Dave Chinner
2010-06-07 16:20 ` Martin K. Petersen
2010-06-07 17:22 ` Boaz Harrosh
2010-06-07 17:40 ` Martin K. Petersen
2010-06-08 7:15 ` Christof Schmitt
2010-06-08 8:47 ` Dave Chinner
2010-06-08 8:52 ` Nick Piggin
2010-05-31 14:49 ` Nick Piggin
2010-06-01 13:17 ` Martin K. Petersen
2010-05-31 15:01 ` James Bottomley
2010-05-31 15:30 ` Boaz Harrosh
2010-05-31 15:49 ` Nick Piggin
2010-05-31 16:25 ` Boaz Harrosh
2010-06-01 13:22 ` Martin K. Petersen
2010-06-01 10:30 ` Christof Schmitt
2010-06-01 10:49 ` Boaz Harrosh
2010-06-01 13:03 ` Chris Mason
2010-06-01 13:50 ` Christof Schmitt
[not found] ` <20100601135059.GA21008@schmichrtp.mainz.de.ibm.com>
2010-06-01 13:58 ` Chris Mason
2010-06-08 7:18 ` Christof Schmitt
2010-06-01 14:26 ` Nick Piggin
2010-06-01 13:27 ` James Bottomley
2010-06-01 13:33 ` Chris Mason
2010-06-01 13:40 ` James Bottomley
2010-06-01 13:49 ` Chris Mason [this message]
2010-06-01 16:29 ` Matthew Wilcox
2010-06-01 16:47 ` Chris Mason
2010-06-01 16:54 ` James Bottomley
2010-06-01 18:09 ` Chris Mason
2010-06-01 18:46 ` Nick Piggin
[not found] ` <20100601184649.GE9453@laptop>
2010-06-01 19:35 ` Chris Mason
2010-06-02 3:20 ` Nick Piggin
2010-06-02 13:17 ` Martin K. Petersen
2010-06-02 13:41 ` Nick Piggin
2010-06-03 15:46 ` Chris Mason
2010-06-03 16:27 ` Nick Piggin
[not found] ` <20100603162718.GR6822@laptop>
2010-06-04 1:46 ` Martin K. Petersen
2010-06-04 3:09 ` Nick Piggin
2010-06-04 2:02 ` Dave Chinner
[not found] ` <20100604020243.GE19651@dastard>
2010-06-04 15:32 ` Jan Kara
2010-06-04 1:30 ` Martin K. Petersen
2010-06-01 21:07 ` James Bottomley
2010-06-01 22:49 ` Chris Mason
2010-06-01 13:50 ` Martin K. Petersen
2010-06-01 14:28 ` Nick Piggin
2010-06-01 14:32 ` James Bottomley
2010-06-01 14:54 ` Martin K. Petersen
2010-06-03 11:20 ` Vladislav Bolkhovitin
2010-06-03 12:07 ` Boaz Harrosh
2010-06-03 12:41 ` Vladislav Bolkhovitin
2010-06-03 12:46 ` Vladislav Bolkhovitin
2010-06-09 15:58 ` Vladislav Bolkhovitin
2010-06-03 13:06 ` Boaz Harrosh
2010-06-03 13:23 ` Vladislav Bolkhovitin
2010-07-23 17:59 ` Gennadiy Nerubayev
2010-07-23 19:16 ` Vladislav Bolkhovitin
2010-07-23 20:51 ` Gennadiy Nerubayev
2010-07-26 12:22 ` Vladislav Bolkhovitin
2010-07-26 17:00 ` Gennadiy Nerubayev
2010-07-26 19:26 ` Vladislav Bolkhovitin
2010-07-24 1:03 ` Dave Chinner
2010-06-01 2:40 ` FUJITA Tomonori
2010-06-03 16:09 ` [LFS/VM TOPIC] Stable pages while IO (was Wrong DIF guard tag on ext2 write) Boaz Harrosh
2010-06-03 16:30 ` [Lsf10-pc] " J. Bruce Fields
2010-06-03 17:41 ` Vladislav Bolkhovitin
2010-06-04 16:23 ` Jan Kara
2010-06-04 16:30 ` [Lsf10-pc] " J. Bruce Fields
2010-06-04 17:11 ` Jan Kara
2010-06-06 9:35 ` Boaz Harrosh
2010-06-06 23:37 ` Jan Kara
2010-06-07 8:30 ` Boaz Harrosh
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=20100601134951.GM8980@think \
--to=chris.mason@oracle.com \
--cc=James.Bottomley@suse.de \
--cc=bharrosh@panasas.com \
--cc=christof.schmitt@de.ibm.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.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).