public inbox for linux-ext4@vger.kernel.org
 help / color / mirror / Atom feed
From: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>
To: Jan Kara <jack@suse.cz>
Cc: Chris Mason <chris.mason@oracle.com>,
	Nick Piggin <nickpiggin@yahoo.com.au>,
	"Martin J. Bligh" <mbligh@mbligh.org>,
	linux-ext4@vger.kernel.org, Ying Han <yinghan@google.com>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-kernel <linux-kernel@vger.kernel.org>,
	linux-mm <linux-mm@kvack.org>,
	guichaz@gmail.com, Alex Khesin <alexk@google.com>,
	Mike Waychison <mikew@google.com>,
	Rohit Seth <rohitseth@google.com>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>
Subject: Re: ftruncate-mmap: pages are lost after writing to mmaped file.
Date: Thu, 26 Mar 2009 13:48:43 +0530	[thread overview]
Message-ID: <20090326081843.GA8207@skywalker> (raw)
In-Reply-To: <20090324140720.GE23439@duck.suse.cz>

On Tue, Mar 24, 2009 at 03:07:21PM +0100, Jan Kara wrote:
> On Tue 24-03-09 10:01:45, Chris Mason wrote:
> > On Tue, 2009-03-24 at 14:26 +0100, Jan Kara wrote:
> > > On Tue 24-03-09 13:55:10, Jan Kara wrote:
> > 
> > > >   And one more interesting thing I don't yet fully understand - I see pages
> > > > having PageError() set when they are removed from page cache (and they have
> > > > been faulted in before). It's probably some interaction with pagecache
> > > > readahead...
> > >   Argh... So the problem seems to be that get_block() occasionally returns
> > > ENOSPC and we then discard the dirty data (hmm, we could give at least a
> > > warning for that). I'm not yet sure why getblock behaves like this because
> > > the filesystem seems to have enough space but anyway this seems to be some
> > > strange fs trouble as well.
> > > 
> > 
> > Ouch.  Perhaps the free space is waiting on a journal commit?
>   Yes, exactly. I've already found there's lot of space hold by the
> committing transaction (it can easily hold a few hundred megs or a few gigs
> with larger journal and my UML images aren't that big...). And writepage()
> implementation in ext3 does not have a logic to retry. Also
> block_write_full_page() clears buffers dirty bits so it's not easy to retry
> even if we did it. I'm now looking into how to fix this...

We retry block allocation in ext3_write_begin. And for mmap we should be
doing something similar to ext4_page_mkwrite so that we can be sure
that during writepage we don't need to do block allocation.

-aneesh

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2009-03-26  8:18 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <604427e00903181244w360c5519k9179d5c3e5cd6ab3@mail.gmail.com>
     [not found] ` <200903200248.22623.nickpiggin@yahoo.com.au>
     [not found]   ` <20090319164638.GB3899@duck.suse.cz>
2009-03-24  7:44     ` ftruncate-mmap: pages are lost after writing to mmaped file Nick Piggin
2009-03-24 10:27       ` Nick Piggin
2009-03-24 10:32       ` Andrew Morton
2009-03-24 15:35         ` Nick Piggin
2009-03-26 18:29           ` Jan Kara
2009-03-26  0:03         ` Ying Han
2009-03-24 12:39       ` Jan Kara
2009-03-24 12:55         ` Jan Kara
2009-03-24 13:26           ` Jan Kara
2009-03-24 14:01             ` Chris Mason
2009-03-24 14:07               ` Jan Kara
2009-03-26  8:18                 ` Aneesh Kumar K.V [this message]
2009-03-24 14:30             ` Nick Piggin
2009-03-24 14:47               ` Jan Kara
2009-03-24 14:56                 ` Peter Zijlstra
2009-03-24 15:29                   ` Jan Kara
2009-03-24 20:14                     ` OGAWA Hirofumi
2009-03-26  8:47                     ` Aneesh Kumar K.V
2009-03-26 11:37                       ` Jan Kara
2009-03-26 23:02                       ` Linus Torvalds
2009-03-24 15:03                 ` Nick Piggin
2009-03-24 15:48                   ` Jan Kara
2009-03-24 17:35                     ` Jan Kara
2009-04-01 22:36                       ` Ying Han
2009-04-02 10:11                         ` Jan Kara
2009-04-02 11:24                         ` Nick Piggin
2009-04-02 11:34                           ` Jan Kara
2009-04-02 15:51                             ` Nick Piggin
2009-04-02 17:44                               ` Ying Han
2009-04-02 22:52                                 ` Ying Han
2009-04-02 23:39                                   ` Jan Kara
2009-04-03  0:25                                     ` Ying Han
2009-04-03  1:29                                     ` Ying Han
2009-04-03  9:41                                       ` Jan Kara
2009-04-03 21:34                                         ` Ying Han
2009-04-03  0:13                           ` Ying Han
2009-03-27 20:35       ` Ying Han

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=20090326081843.GA8207@skywalker \
    --to=aneesh.kumar@linux.vnet.ibm.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=alexk@google.com \
    --cc=chris.mason@oracle.com \
    --cc=guichaz@gmail.com \
    --cc=jack@suse.cz \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mbligh@mbligh.org \
    --cc=mikew@google.com \
    --cc=nickpiggin@yahoo.com.au \
    --cc=rohitseth@google.com \
    --cc=torvalds@linux-foundation.org \
    --cc=yinghan@google.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