linux-kernel-test/include
Denis V. Lunev 37c42524d6 shrink_dcache_sb speedup
This patch makes shrink_dcache_sb consistent with dentry pruning policy.

On the first pass we iterate over dentry unused list and prepare some
dentries for removal.

However, since the existing code moves evicted dentries to the beginning of
the LRU it can happen that fresh dentries from other superblocks will be
inserted *before* our dentries.

This can result in significant slowdown of shrink_dcache_sb().  Moreover,
for virtual filesystems like unionfs which can call dput() during dentries
kill existing code results in O(n^2) complexity.

We observed 2 minutes shrink_dcache_sb() with only 35000 dentries.

To avoid this effects we propose to isolate sb dentries at the end
of LRU list.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: Kirill Korotaev <dev@openvz.org>
Signed-off-by: Andrey Mirkin <amirkin@openvz.org>
Cc: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-17 08:42:57 -07:00
..
acpi
asm-alpha Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-arm remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
asm-arm26 softlockup: make asm/irq_regs.h available on every platform 2007-10-17 08:42:47 -07:00
asm-avr32 Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-blackfin Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-cris remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
asm-frv remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
asm-generic remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
asm-h8300 Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-ia64 Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-m32r remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
asm-m68k Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-m68knommu Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-mips Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-parisc Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-powerpc Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-ppc Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-s390 remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
asm-sh Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-sh64 Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-sparc Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-sparc64 Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-um remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
asm-v850 remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
asm-x86 Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
asm-xtensa remove strict ansi check from __u64 in asm/types.h 2007-10-17 08:42:53 -07:00
crypto
keys KEYS: Make request_key() and co fundamentally asynchronous 2007-10-17 08:42:57 -07:00
linux shrink_dcache_sb speedup 2007-10-17 08:42:57 -07:00
math-emu
media v4l: copy_to_user() is not a good method name 2007-10-13 09:58:59 -07:00
mtd
net [IPV6]: Replace sk_buff ** with sk_buff * in input handlers 2007-10-15 12:50:28 -07:00
pcmcia pcmcia: use DMA_MASK_NONE for the default for all pcmcia devices 2007-10-16 09:42:50 -07:00
rdma
rxrpc
scsi do not export /usr/include/scsi in make headers_install 2007-10-17 08:42:52 -07:00
sound [ALSA] version 1.0.15 2007-10-16 16:57:46 +02:00
video pm2fb: hardware cursor support for the Permedia2 2007-10-16 09:43:18 -07:00
xen
Kbuild do not export /usr/include/scsi in make headers_install 2007-10-17 08:42:52 -07:00