public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Tejun Heo <tj@kernel.org>
To: jaxboe@fusionio.com, linux-kernel@vger.kernel.org, hch@lst.de
Subject: [PATCHSET] backing-dev: replace private thread pool with workqueue
Date: Mon,  6 Sep 2010 14:46:17 +0200	[thread overview]
Message-ID: <1283777182-11426-1-git-send-email-tj@kernel.org> (raw)

Hello,

This patchset converts backing-dev to use workqueue instead of the
private thread pool.  The conversion is pretty straight forward.  The
only notable thing is that the writeback work skips usual
bdi->work_list processing if it's being executed from the rescuer
thread.  Being executed from the rescuer thread means that the system
is under memory pressure and it just starts writeouts by calling
bdi_flush_io() and reschedules itself if necessary.  This effectly is
the same to what bdi_forker_thread() did when it failed to create a
thread for a pending BDI.

This patch contains the following five patches.

 0001-workqueue-implement-workqueue_on_rescuer.patch
 0002-backing-dev-kill-unused-bdi_writeback-nr.patch
 0003-backing-dev-replace-private-thread-pool-with-workque.patch
 0004-backing-dev-update-trace-points.patch
 0005-backing-dev-replace-sync_supers_tsk-timer-with-a-del.patch

It's currently based on v2.6.36-rc3 + wq#for-linus.  Once Linus pulls
from wq#for-linus, I'll rebase these, but the patches apply on
v2.6.36-rc3 too.  These patches are also available in the following
git tree,

 git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git wq-wb

and contains the following changes.

 fs/fs-writeback.c                |   91 +----------
 include/linux/backing-dev.h      |   18 --
 include/linux/workqueue.h        |    1 
 include/trace/events/writeback.h |    9 -
 kernel/workqueue.c               |   15 +
 mm/backing-dev.c                 |  302 ++++++++++-----------------------------
 6 files changed, 111 insertions(+), 325 deletions(-)

Thanks.

--
tejun

             reply	other threads:[~2010-09-06 12:46 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-06 12:46 Tejun Heo [this message]
2010-09-06 12:46 ` [PATCH 1/5] workqueue: implement workqueue_on_rescuer() Tejun Heo
2010-09-06 12:46 ` [PATCH 2/5] backing-dev: kill unused bdi_writeback->nr Tejun Heo
2010-09-08  8:57   ` Artem Bityutskiy
2010-09-06 12:46 ` [PATCH 3/5] backing-dev: replace private thread pool with workqueue Tejun Heo
2010-09-06 12:46 ` [PATCH 4/5] backing-dev: update trace points Tejun Heo
2010-09-06 12:46 ` [PATCH 5/5] backing-dev: replace sync_supers_tsk/timer with a delayed_work Tejun Heo
2010-09-08  9:00   ` Artem Bityutskiy
2010-09-07 12:16 ` [PATCHSET] backing-dev: replace private thread pool with workqueue Christoph Hellwig
2010-09-07 12:19   ` Tejun Heo
2010-09-07 12:29     ` Jens Axboe
2010-09-07 12:36       ` Tejun Heo
2010-11-27 16:02         ` Tejun Heo
2010-11-27 18:50           ` Jens Axboe
2010-11-27 20:30             ` Tejun Heo

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=1283777182-11426-1-git-send-email-tj@kernel.org \
    --to=tj@kernel.org \
    --cc=hch@lst.de \
    --cc=jaxboe@fusionio.com \
    --cc=linux-kernel@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