From: Ivan Shapovalov <intelfx100@gmail.com>
To: reiserfs-devel@vger.kernel.org
Cc: edward.shishkin@gmail.com, Ivan Shapovalov <intelfx100@gmail.com>
Subject: [RFC] [PATCHv2 0/3] reiser4: block deallocation fixes.
Date: Mon, 8 Sep 2014 22:43:48 +0400 [thread overview]
Message-ID: <1410201831-11722-1-git-send-email-intelfx100@gmail.com> (raw)
Actually, the idea of converting immediate allocations into deferred when
discard is enabled was flawed. Deferred deallocations ignore block stage
and additional flags, while some immediate deallocations use non-standard
stage/flags which do not match what's done by reiser4_post_write_back_hook().
While at it, I've removed specifications of block stage in deferred deallocations.
It is not used anyway. This is first commit.
Next commit does the following. Actually, most of the immediate deallocations
do not need to be considered for discarding: these are deallocations done in
error paths, and respective blocks are never written between their allocation
and deallocation. Two exceptions are deallocations in wandering log code. In these
cases, blocks are allocated, then written, then deallocated without BA_DEFER.
I've just made these deallocations explicitly deferred, which is OK because they
have a suitable block stage.
Last commit actually removes wrong code, again making immediate deallocations
always immediate.
Ivan Shapovalov (3):
reiser4: deferred (BA_DEFER) deallocations do not make use of target stage.
reiser4: mark final deallocations in wandering log code as deferred.
reiser4: block_alloc: get rid of discard-related hack in reiser4_dealloc_blocks().
fs/reiser4/block_alloc.c | 9 +++++++--
fs/reiser4/plugin/txmod.c | 15 +++++----------
fs/reiser4/wander.c | 6 +++---
3 files changed, 15 insertions(+), 15 deletions(-)
--
2.1.0
next reply other threads:[~2014-09-08 18:43 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-08 18:43 Ivan Shapovalov [this message]
2014-09-08 18:43 ` [RFC] [PATCHv2 1/3] reiser4: deferred (BA_DEFER) deallocations do not make use of target stage Ivan Shapovalov
2014-09-08 18:43 ` [RFC] [PATCHv2 2/3] reiser4: mark final deallocations in wandering log code as deferred Ivan Shapovalov
2014-09-08 18:43 ` [RFC] [PATCHv2 3/3] reiser4: block_alloc: get rid of discard-related hack in reiser4_dealloc_blocks() Ivan Shapovalov
2014-09-08 19:03 ` [RFC] [PATCHv2 0/3] reiser4: block deallocation fixes Edward Shishkin
2014-09-08 19:52 ` Ivan Shapovalov
2014-09-08 20:19 ` Edward Shishkin
2014-09-08 21:13 ` Ivan Shapovalov
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=1410201831-11722-1-git-send-email-intelfx100@gmail.com \
--to=intelfx100@gmail.com \
--cc=edward.shishkin@gmail.com \
--cc=reiserfs-devel@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 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).