From: "Aneesh Kumar K. V" <aneesh.kumar@linux.vnet.ibm.com>
To: tytso@mit.edu
Cc: Eric Sandeen <sandeen@redhat.com>,
cmm@us.ibm.com, linux-ext4@vger.kernel.org
Subject: Re: [PATCH -V2] ext4: unmap the underlying metadata when allocating blocks via fallocate
Date: Mon, 25 Jan 2010 10:42:05 +0530 [thread overview]
Message-ID: <87k4v6py3e.fsf@linux.vnet.ibm.com> (raw)
In-Reply-To: <20100124182445.GA4372@thunk.org>
On Sun, 24 Jan 2010 13:24:46 -0500, tytso@mit.edu wrote:
> On Fri, Jan 15, 2010 at 12:00:58AM +0530, Aneesh Kumar K. V wrote:
> > From 947ca1e49381bd76b85b44a1d41336a105e421ad Mon Sep 17 00:00:00 2001
> > From: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
> > Date: Thu, 7 Jan 2010 00:48:12 +0530
> > Subject: [PATCH] ext4: unmap the underlying metadata when allocating blocks via fallocate
> >
> > This become important when we are running with nojournal mode. We
> > may end up allocating recently freed metablocks for fallocate. We
> > want to make sure we unmap the old mapping so that when we convert
> > the fallocated uninitialized extent to initialized extent we don't
> > have the old mapping around. Leaving the old mapping can cause
> > file system corruption
> >
> > Now that we unmap old metadata blocks we need not return blocks
> > allocated from fallocate area as new.
>
> Is this patch still strictly necessary given commit 515f41c? This
> clears the blocks when we convert the extent from uninitialized to
> initialized.
>
> Hmmm, or is the problem that this fixes the problem only for the
> zero'ed out blocks, but we can still get burned on the write path?
> No, we fix that up in mpage_da_map_blocks.
>
> So do we need this patch? It seems more efficient to clear it when we
> actually write or zero out the blocks; I thought that was the
> conclusion we came to when we were discussing curtw's patch (515f41c
> above).
>
> If we now decide that we need call unmap_underlying_blocks() at
> fallocate time, maybe we should revert 515f41c? No point doing the
> work twice; we probably have better uses for the CPU. :-)
My goal was to see if we can drop the BH_New flag when returning
preallocated blocks. But now i look at it again i guess you don't need
to take this patch. We cannot unmap underlying meta data during
fallocate because even if we remove the old mapping for the blocks,
we could reboot and later somebody(e2fsprogs) can directly read the blocks
and create a bh with old data. So i guess we should be doing
unmap_underlying_blocks when we are returning blocks to userspace or
when we actually zero out blocks.
-aneesh
next prev parent reply other threads:[~2010-01-25 5:12 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-01-06 19:22 [PATCH 1/3] ext4: Fix quota accounting error with fallocate Aneesh Kumar K.V
2010-01-06 19:22 ` [PATCH 2/3] ext4: Drop EXT4_GET_BLOCKS_UPDATE_RESERVE_SPACE flag Aneesh Kumar K.V
2010-01-06 19:50 ` Mingming
2010-01-06 19:22 ` [PATCH 3/3] ext4: unmap the underlying metadata when allocating blocks via fallocate Aneesh Kumar K.V
2010-01-06 20:20 ` Eric Sandeen
2010-01-14 17:00 ` Eric Sandeen
2010-01-14 18:30 ` [PATCH -V2] " Aneesh Kumar K. V
2010-01-14 19:31 ` Eric Sandeen
2010-01-24 18:24 ` tytso
2010-01-25 5:12 ` Aneesh Kumar K. V [this message]
2010-01-25 9:02 ` tytso
2010-01-25 15:43 ` Eric Sandeen
2010-01-25 17:55 ` tytso
2010-01-25 18:21 ` Aneesh Kumar K. V
2010-01-06 19:47 ` [PATCH 1/3] ext4: Fix quota accounting error with fallocate Mingming
2010-01-13 14:55 ` [PATCH -V2] " Aneesh Kumar K.V
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=87k4v6py3e.fsf@linux.vnet.ibm.com \
--to=aneesh.kumar@linux.vnet.ibm.com \
--cc=cmm@us.ibm.com \
--cc=linux-ext4@vger.kernel.org \
--cc=sandeen@redhat.com \
--cc=tytso@mit.edu \
/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).