linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/19] periodic write-back timer optimization
@ 2009-05-27 13:05 Artem Bityutskiy
  2009-05-27 12:23 ` Arnd Bergmann
                   ` (19 more replies)
  0 siblings, 20 replies; 28+ messages in thread
From: Artem Bityutskiy @ 2009-05-27 13:05 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-fsdevel, Christoph Hellwig, Artem Bityutskiy

Hi,

This is the second attempt. The first one was here:
http://marc.info/?l=linux-fsdevel&m=124301072305588&w=2
It was very hacky and got no comments.

Here is a cleaner set of patches. They attempt to optimize
the periodic write-back and stop it when there are no
dirty data. At the moment "pdflush" thread wakes up every
5 seconds (by default). Even if there are no dirty data,
it still wakes up. In the embedded world this means that
power consumption is higher, because the pdflush makes
the CPU to leave low power consumption/retention mode
every 5 seconds.

The patch set consists of 2 parts. Patches 01-17 are rather
mechanical. They simply introduce 3 VFS helpers which
encapsulate the 'sb->s_dirt' handling, so file-systems do
not manipulate it directly, but rather use VFS helpers
for this.

Patch 18 is just a simple preparation for patch 19.

Patch 19 introduces a global 'periodic_wb_enabled' flag.
Then it adds few code to the 'mark_sb_dirty()' and the
'__mark_inode_dirty(); function. This code enables the
periodic write-back if it is disabled. I tried to make
this additional code light-weight.

The periodic WB function, in turn, checks whether there
is dirt. If there is, it sets the 'wb_timer' for itself.
Otherwise, it just deletes the timer. Should something
become dirty, it will be woken up again.

This is still RFC.

-- 
Best Regards,
Artem Bityutskiy (Артём Битюцкий)
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

end of thread, other threads:[~2009-06-03 11:14 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-05-27 13:05 [PATCH 00/19] periodic write-back timer optimization Artem Bityutskiy
2009-05-27 12:23 ` Arnd Bergmann
2009-05-27 12:27   ` Artem Bityutskiy
2009-05-27 12:33     ` Jens Axboe
2009-05-27 12:37       ` Artem Bityutskiy
2009-05-27 12:47         ` Jens Axboe
2009-05-28  6:34           ` Artem Bityutskiy
2009-05-28  8:18             ` Jens Axboe
2009-06-03 11:13               ` Artem Bityutskiy
2009-05-27 13:05 ` [PATCH 01/19] VFS: introduce helpers for manipulation s_dirty flag Artem Bityutskiy
2009-05-27 13:05 ` [PATCH 02/19] AFFS: do not manipulate s_dirt directly Artem Bityutskiy
2009-05-27 13:05 ` [PATCH 03/19] BFS: " Artem Bityutskiy
2009-05-27 13:05 ` [PATCH 04/19] EXOFS: " Artem Bityutskiy
2009-05-27 13:05 ` [PATCH 05/19] EXT2: " Artem Bityutskiy
2009-05-27 13:05 ` [PATCH 06/19] EXT4: " Artem Bityutskiy
2009-05-27 13:05 ` [PATCH 07/19] FAT: " Artem Bityutskiy
2009-05-27 13:05 ` [PATCH 08/19] HFS: " Artem Bityutskiy
2009-05-27 13:06 ` [PATCH 09/19] HFSPLUS: " Artem Bityutskiy
2009-05-27 13:06 ` [PATCH 10/19] JFFS2: " Artem Bityutskiy
2009-05-27 13:06 ` [PATCH 11/19] NILFS: " Artem Bityutskiy
2009-05-27 13:06 ` [PATCH 12/19] reiserfs: " Artem Bityutskiy
2009-05-27 13:06 ` [PATCH 13/19] SYSV: " Artem Bityutskiy
2009-05-27 13:06 ` [PATCH 14/19] UDF: " Artem Bityutskiy
2009-05-27 13:06 ` [PATCH 15/19] UFS: " Artem Bityutskiy
2009-05-27 13:06 ` [PATCH 16/19] XFS: " Artem Bityutskiy
2009-05-27 13:06 ` [PATCH 17/19] VFS: use sb_is_dirty helper Artem Bityutskiy
2009-05-27 13:06 ` [PATCH 18/19] write-back: introduce a helper function Artem Bityutskiy
2009-05-27 13:07 ` [PATCH 19/19] periodic write-back: do not wake up unnecessarily Artem Bityutskiy

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