linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Miao Xie <miaox@cn.fujitsu.com>
To: Linux Btrfs <linux-btrfs@vger.kernel.org>
Subject: [PATCH 0/3] flush delalloc by multi-task
Date: Thu, 25 Oct 2012 17:20:29 +0800	[thread overview]
Message-ID: <5089045D.8050801@cn.fujitsu.com> (raw)

This patchset introduce multi-task delalloc flush, it can make the delalloc
flush more faster. And besides that, it also can fix the problem that we join
the same transaction handler more than 2 times.

Implementation:
- Create a new worker pool.
- Queue the inode with pending delalloc into the work queue of the worker pool
  when we want to force them into the disk, and then we will wait till all the
  works we submit are done. 
- The ordered extents also can be queued into this work queue. The process is
  similar to the second one.

Miao Xie (3):
      Btrfs: make delalloc inodes be flushed by multi-task
      Btrfs: make ordered operations be handled by multi-task
      Btrfs: make ordered extent be flushed by multi-task

 fs/btrfs/ctree.h        |   14 +++++++
 fs/btrfs/disk-io.c      |    7 ++++
 fs/btrfs/inode.c        |   78 ++++++++++++++++++++++++++++++++++++++---
 fs/btrfs/ordered-data.c |   87 ++++++++++++++++++++++++++++++++++-------------
 fs/btrfs/ordered-data.h |    7 +++-
 fs/btrfs/relocation.c   |    6 +++-
 fs/btrfs/transaction.c  |   24 ++++++++++---
 7 files changed, 185 insertions(+), 38 deletions(-)

             reply	other threads:[~2012-10-25  9:20 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-25  9:20 Miao Xie [this message]
2012-10-25  9:28 ` [PATCH 1/3] Btrfs: make delalloc inodes be flushed by multi-task Miao Xie
2012-10-25  9:31 ` [PATCH 2/3] Btrfs: make ordered operations be handled " Miao Xie
2012-10-25  9:41 ` [PATCH 3/3] Btrfs: make ordered extent be flushed " Miao Xie
2012-10-25 11:53 ` [PATCH 0/3] flush delalloc " Liu Bo
2012-10-26  1:56   ` Miao Xie
2012-10-26  2:05     ` Liu Bo
2012-10-26  3:25       ` Miao Xie
2012-10-26  7:01         ` Liu Bo
2012-11-01  7:43 ` Miao Xie

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=5089045D.8050801@cn.fujitsu.com \
    --to=miaox@cn.fujitsu.com \
    --cc=linux-btrfs@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).