linux-stable/include
Christoph Lameter c878538598 [PATCH] Use ZVC for inactive and active counts
The determination of the dirty ratio to determine writeback behavior is
currently based on the number of total pages on the system.

However, not all pages in the system may be dirtied.  Thus the ratio is always
too low and can never reach 100%.  The ratio may be particularly skewed if
large hugepage allocations, slab allocations or device driver buffers make
large sections of memory not available anymore.  In that case we may get into
a situation in which f.e.  the background writeback ratio of 40% cannot be
reached anymore which leads to undesired writeback behavior.

This patchset fixes that issue by determining the ratio based on the actual
pages that may potentially be dirty.  These are the pages on the active and
the inactive list plus free pages.

The problem with those counts has so far been that it is expensive to
calculate these because counts from multiple nodes and multiple zones will
have to be summed up.  This patchset makes these counters ZVC counters.  This
means that a current sum per zone, per node and for the whole system is always
available via global variables and not expensive anymore to calculate.

The patchset results in some other good side effects:

- Removal of the various functions that sum up free, active and inactive
  page counts

- Cleanup of the functions that display information via the proc filesystem.

This patch:

The use of a ZVC for nr_inactive and nr_active allows a simplification of some
counter operations.  More ZVC functionality is used for sums etc in the
following patches.

[akpm@osdl.org: UP build fix]
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-02-11 10:51:17 -08:00
..
acpi Pull sysfs into test branch 2007-02-03 01:14:35 -05:00
asm-alpha [PATCH] Remove final references to deprecated "MAP_ANON" page protection flag 2007-02-11 10:51:17 -08:00
asm-arm Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-apm 2007-02-09 09:44:28 -08:00
asm-arm26
asm-avr32 [AVR32] ssize_t should be long, not int 2007-02-09 15:01:59 +01:00
asm-cris [PATCH] kill eth_io_copy_and_sum() 2007-02-09 09:14:07 -08:00
asm-frv [PATCH] fix frv headers_check 2007-02-01 16:17:05 -08:00
asm-generic [PATCH] typeof __page_to_pfn with SPARSEMEM=y 2007-02-11 10:51:17 -08:00
asm-h8300
asm-i386 [PATCH] kill eth_io_copy_and_sum() 2007-02-09 09:14:07 -08:00
asm-ia64 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6 2007-02-07 19:23:44 -08:00
asm-m32r
asm-m68k [PATCH] m68k: uaccess.h needs sched.h 2007-01-30 08:26:45 -08:00
asm-m68knommu [PATCH] m68knommu: removed include of system.h from bitops 2007-02-09 10:45:33 -08:00
asm-mips [PATCH] Remove final references to deprecated "MAP_ANON" page protection flag 2007-02-11 10:51:17 -08:00
asm-parisc [PATCH] Remove final references to deprecated "MAP_ANON" page protection flag 2007-02-11 10:51:17 -08:00
asm-powerpc [POWERPC] Add mpc52xx/lite5200 PCI support 2007-02-08 15:29:22 +11:00
asm-ppc [PATCH] kill eth_io_copy_and_sum() 2007-02-09 09:14:07 -08:00
asm-s390 [S390] Mark kernel text section read-only. 2007-02-05 21:18:41 +01:00
asm-sh [APM] SH: Convert to use shared APM emulation. 2007-02-09 17:08:58 +00:00
asm-sh64
asm-sparc [SPARC32]: Fix over-optimization by GCC near ip_fast_csum. 2007-02-01 20:24:35 -08:00
asm-sparc64
asm-um [PATCH] uml-i386: fix build breakage with CONFIG_HIGHMEM 2007-02-01 16:17:06 -08:00
asm-v850
asm-x86_64 [PATCH] x86_64 ia32 vDSO: use install_special_mapping 2007-02-09 09:25:47 -08:00
asm-xtensa [PATCH] Remove final references to deprecated "MAP_ANON" page protection flag 2007-02-11 10:51:17 -08:00
crypto [CRYPTO] api: Allow multiple frontends per backend 2007-02-07 09:21:01 +11:00
keys
linux [PATCH] Use ZVC for inactive and active counts 2007-02-11 10:51:17 -08:00
math-emu
media
mtd
net [NET]: change layout of ehash table 2007-02-08 14:16:46 -08:00
pcmcia Driver core: convert pcmcia code to use struct device 2007-02-07 10:37:11 -08:00
rdma IB: Make sure struct ib_user_mad.data is aligned 2007-02-04 14:11:56 -08:00
rxrpc
scsi [PATCH] iscsi endianness annotations 2007-02-09 09:14:07 -08:00
sound [PATCH] Fix breakage with CONFIG_SYSFS_DEPRECATED 2007-02-09 16:25:48 +01:00
video
Kbuild