diff options
author | Bron Gondwana <brong@fastmail.fm> | 2008-02-05 01:29:20 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-02-05 12:44:18 -0500 |
commit | 195cf453d2c3d789cbe80e3735755f860c2fb222 (patch) | |
tree | fad48a8167744b6c091c8ca499bc78b859af8957 /include/linux/writeback.h | |
parent | 3dfa5721f12c3d5a441448086bee156887daa961 (diff) |
mm/page-writeback: highmem_is_dirtyable option
Add vm.highmem_is_dirtyable toggle
A 32 bit machine with HIGHMEM64 enabled running DCC has an MMAPed file of
approximately 2Gb size which contains a hash format that is written
randomly by the dbclean process. On 2.6.16 this process took a few
minutes. With lowmem only accounting of dirty ratios, this takes about 12
hours of 100% disk IO, all random writes.
Include a toggle in /proc/sys/vm/highmem_is_dirtyable which can be set to 1 to
add the highmem back to the total available memory count.
[akpm@linux-foundation.org: Fix the CONFIG_DETECT_SOFTLOCKUP=y build]
Signed-off-by: Bron Gondwana <brong@fastmail.fm>
Cc: Ethan Solomita <solo@google.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: WU Fengguang <wfg@mail.ustc.edu.cn>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/writeback.h')
-rw-r--r-- | include/linux/writeback.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/writeback.h b/include/linux/writeback.h index c6148bbf1250..b2cd826a8c90 100644 --- a/include/linux/writeback.h +++ b/include/linux/writeback.h | |||
@@ -100,6 +100,7 @@ extern int dirty_background_ratio; | |||
100 | extern int vm_dirty_ratio; | 100 | extern int vm_dirty_ratio; |
101 | extern int dirty_writeback_interval; | 101 | extern int dirty_writeback_interval; |
102 | extern int dirty_expire_interval; | 102 | extern int dirty_expire_interval; |
103 | extern int vm_highmem_is_dirtyable; | ||
103 | extern int block_dump; | 104 | extern int block_dump; |
104 | extern int laptop_mode; | 105 | extern int laptop_mode; |
105 | 106 | ||