reiserfs-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC] [PATCHv2 0/3] reiser4: block deallocation fixes.
@ 2014-09-08 18:43 Ivan Shapovalov
  2014-09-08 18:43 ` [RFC] [PATCHv2 1/3] reiser4: deferred (BA_DEFER) deallocations do not make use of target stage Ivan Shapovalov
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Ivan Shapovalov @ 2014-09-08 18:43 UTC (permalink / raw)
  To: reiserfs-devel; +Cc: edward.shishkin, Ivan Shapovalov

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


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2014-09-08 21:13 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-08 18:43 [RFC] [PATCHv2 0/3] reiser4: block deallocation fixes Ivan Shapovalov
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

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).