reiserfs-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Edward Shishkin <edward.shishkin@gmail.com>
To: Ivan Shapovalov <intelfx100@gmail.com>, reiserfs-devel@vger.kernel.org
Subject: Re: [RFC] [PATCHv2 0/7] reiser4: batch discard support (FITRIM ioctl): initial implementation.
Date: Sun, 17 Aug 2014 22:25:07 +0200	[thread overview]
Message-ID: <53F10FA3.7050507@gmail.com> (raw)
In-Reply-To: <1408292795-1841-1-git-send-email-intelfx100@gmail.com>

Great, thanks!
I'll take a look at leisure.
What is the status of this code? Did you test it?

Edward.


On 08/17/2014 06:26 PM, Ivan Shapovalov wrote:
> This patch series implements FITRIM ioctl support in reiser4.
>
> The FITRIM ioctl is supposed to be applied to any directory inside the target
> filesystem. At least, this can be deduced from `fstrim` utility behavior on
> mainstream filesystems (e. g. ext2/3/4).
>
> The idea of implementation is per Edward's advices: FITRIM handler iteratively
> grabs a portion of disk space, sequentially allocates extents within grabbed
> space and commits the resulting atom. This way we avoid starving concurrent
> processes of the disk space. This process is repeated until the partition has
> been fully scanned and processed.
>
> Points I'm really uncertain of:
> - grabbing fixed amount of space (new BA_SOME_SPACE flag, grabs 25% of disk space)
> - creation of empty atoms (reiser4_create_atom())
> - handling of empty atoms in commit_current_atom()
>
> v2: - fix PATCH 5/7 "reiser4: txnmgr: call reiser4_post_write_back_hook() for empty atoms."
>        * fix a typo
>        * release atom spinlock before calling reiser4_post_write_back_hook()
>
> Ivan Shapovalov (7):
>    reiser4: block_alloc: add BA_SOME_SPACE flag for grabbing a fixed amount of space.
>    reiser4: block_alloc: add a "forward" parameter to reiser4_blocknr_hint to allocate blocks only in forward direction.
>    reiser4: txnmgr: free allocated but unneeded atom in atom_begin_and_assign_to_txnh().
>    reiser4: txnmgr: add reiser4_create_atom() which creates an empty atom without capturing any nodes.
>    reiser4: txnmgr: call reiser4_post_write_back_hook() for empty atoms.
>    reiser4: batch discard support: add a dummy FITRIM ioctl handler for directories.
>    reiser4: batch discard support: actually implement the FITRIM ioctl handler.
>
>   fs/reiser4/block_alloc.c         |   6 ++
>   fs/reiser4/block_alloc.h         |  10 ++-
>   fs/reiser4/plugin/dir/dir.h      |   2 +
>   fs/reiser4/plugin/file_ops.c     |  62 ++++++++++++++++++
>   fs/reiser4/plugin/object.c       |   6 +-
>   fs/reiser4/plugin/space/bitmap.c |   3 +-
>   fs/reiser4/super_ops.c           | 131 +++++++++++++++++++++++++++++++++++++++
>   fs/reiser4/txnmgr.c              |  57 +++++++++++------
>   fs/reiser4/txnmgr.h              |   2 +
>   9 files changed, 255 insertions(+), 24 deletions(-)
>


  parent reply	other threads:[~2014-08-17 20:25 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-17 16:26 [RFC] [PATCHv2 0/7] reiser4: batch discard support (FITRIM ioctl): initial implementation Ivan Shapovalov
2014-08-17 16:26 ` [RFC] [PATCHv2 1/7] reiser4: block_alloc: add BA_SOME_SPACE flag for grabbing a fixed amount of space Ivan Shapovalov
2014-08-17 16:26 ` [RFC] [PATCHv2 2/7] reiser4: block_alloc: add a "forward" parameter to reiser4_blocknr_hint to allocate blocks only in forward direction Ivan Shapovalov
2014-08-17 16:26 ` [RFC] [PATCHv2 3/7] reiser4: txnmgr: free allocated but unneeded atom in atom_begin_and_assign_to_txnh() Ivan Shapovalov
2014-08-17 16:26 ` [RFC] [PATCHv2 4/7] reiser4: txnmgr: add reiser4_create_atom() which creates an empty atom without capturing any nodes Ivan Shapovalov
2014-08-17 16:26 ` [RFC] [PATCHv2 5/7] reiser4: txnmgr: call reiser4_post_write_back_hook() also for empty atoms Ivan Shapovalov
2014-08-17 16:26 ` [RFC] [PATCHv2 6/7] reiser4: batch discard support: add a dummy FITRIM ioctl handler for directories Ivan Shapovalov
2014-08-17 16:26 ` [RFC] [PATCHv2 7/7] reiser4: batch discard support: actually implement the FITRIM ioctl handler Ivan Shapovalov
2014-08-17 20:25 ` Edward Shishkin [this message]
2014-08-17 20:29   ` [RFC] [PATCHv2 0/7] reiser4: batch discard support (FITRIM ioctl): initial implementation 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=53F10FA3.7050507@gmail.com \
    --to=edward.shishkin@gmail.com \
    --cc=intelfx100@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).