From: Theodore Ts'o <tytso@mit.edu>
To: Lukas Czerner <lczerner@redhat.com>
Cc: linux-ext4@vger.kernel.org, darrick.wong@oracle.com
Subject: Re: [PATCH v2] ext4: Transfer initialized block to right neighbor if possible
Date: Mon, 1 Apr 2013 11:12:16 -0400 [thread overview]
Message-ID: <20130401151216.GC4731@thunk.org> (raw)
In-Reply-To: <1363791235-18707-1-git-send-email-lczerner@redhat.com>
On Wed, Mar 20, 2013 at 03:53:55PM +0100, Lukas Czerner wrote:
> Currently when converting extent to initialized we attempt to transfer
> initialized block to the left neighbour if possible when certain criteria
> are met. However we do not attempt to do the same for the right
> neighbor.
>
> This commit adds the possibility to transfer initialized block to the
> right neighbour if:
>
> 1. We're not converting the whole extent
> 2. Both extents are stored in the same extent tree node
> 3. Right neighbor is initialized
> 4. Right neighbor is logically abutting the current one
> 5. Right neighbor is physically abutting the current one
> 6. Right neighbor would not overflow the length limit
>
> This is basically the same logic as with transferring to the left. This
> will gain us some performance benefits since it is faster than inserting
> extent and then merging it.
>
> It would also prevent some situation in delalloc patch when we might run
> out of metadata reservation. This is due to the fact that we would
> attempt to split the extent first (possibly allocating new metadata
> block) even though we did not counted for that because it can (and will)
> be merged again. This commit fix that scenario, because we no longer
> need to split the extent in such case.
>
> Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Thanks, applied to the dev branch for testing
- Ted
prev parent reply other threads:[~2013-04-01 15:12 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-19 13:13 [PATCH] ext4: Transfer initialized block to right neighbor if possible Lukas Czerner
2013-03-19 18:48 ` Darrick J. Wong
2013-03-20 14:53 ` [PATCH v2] " Lukas Czerner
2013-04-01 15:12 ` Theodore Ts'o [this message]
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=20130401151216.GC4731@thunk.org \
--to=tytso@mit.edu \
--cc=darrick.wong@oracle.com \
--cc=lczerner@redhat.com \
--cc=linux-ext4@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.