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
next 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