linux/mm
Nikita Danilov bbfbb7cec9 [PATCH] find_lock_page(): call __lock_page() directly.
As find_lock_page() already checks with TestSetPageLocked() that page is
locked, there is no need to call lock_page() that will try-lock page again
(chances of page being unlocked in between are small).  Call __lock_page()
directly, this saves one atomic operation.

Also, mark truncate-while-slept path as unlikely while we are here.

(akpm: ug.  But this is actually a common path for normal old read()s against
a page which is under readahead I/O so ho-hum.)

Signed-off-by: Nikita Danilov <danilov@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-06 08:33:26 -08:00
..
bootmem.c [PATCH] FRV: Clean up bootmem allocator's page freeing algorithm 2006-01-06 08:33:26 -08:00
fadvise.c
filemap_xip.c
filemap.c [PATCH] find_lock_page(): call __lock_page() directly. 2006-01-06 08:33:26 -08:00
filemap.h
fremap.c VM: add common helper function to create the page tables 2005-11-29 14:03:14 -08:00
highmem.c
hugetlb.c [PATCH] hugepages: fold find_or_alloc_pages into huge_no_page() 2006-01-06 08:33:23 -08:00
internal.h [PATCH] FRV: Clean up bootmem allocator's page freeing algorithm 2006-01-06 08:33:26 -08:00
Kconfig [PATCH] mm: update split ptlock Kconfig 2005-11-23 16:08:38 -08:00
madvise.c [PATCH] madvise(MADV_REMOVE): remove pages from tmpfs shm backing store 2006-01-06 08:33:22 -08:00
Makefile
memory_hotplug.c [PATCH] memhotplug: __add_section remove unused pgdat definition 2006-01-06 08:33:21 -08:00
memory.c [PATCH] madvise(MADV_REMOVE): remove pages from tmpfs shm backing store 2006-01-06 08:33:22 -08:00
mempolicy.c [PATCH] Remove old node based policy interface from mempolicy.c 2006-01-06 08:33:23 -08:00
mempool.c
mincore.c
mlock.c
mmap.c Make sure we copy pages inserted with "vm_insert_page()" on fork 2005-12-16 10:21:23 -08:00
mprotect.c [PATCH] unpaged: private write VM_RESERVED 2005-11-22 09:13:42 -08:00
mremap.c Make sure we copy pages inserted with "vm_insert_page()" on fork 2005-12-16 10:21:23 -08:00
msync.c mm: re-architect the VM_UNPAGED logic 2005-11-28 14:34:23 -08:00
nommu.c mm: re-architect the VM_UNPAGED logic 2005-11-28 14:34:23 -08:00
oom_kill.c
page_alloc.c [PATCH] FRV: Clean up bootmem allocator's page freeing algorithm 2006-01-06 08:33:26 -08:00
page_io.c
page-writeback.c [PATCH] re-export clear_page_dirty_for_io() 2005-11-18 07:49:45 -08:00
pdflush.c
prio_tree.c
readahead.c [PATCH] add AOP_TRUNCATED_PAGE, prepend AOP_ to WRITEPAGE_ACTIVATE 2006-01-03 11:45:42 -08:00
rmap.c [PATCH] Fix missing pfn variables caused by vm changes 2005-11-29 12:57:17 -08:00
shmem.c [PATCH] madvise(MADV_REMOVE): remove pages from tmpfs shm backing store 2006-01-06 08:33:22 -08:00
slab.c [PATCH] slab: remove alloc_pages() calls 2005-11-13 18:14:12 -08:00
sparse.c
swap_state.c [PATCH] mm: free_pages_and_swap_cache opt 2006-01-06 08:33:24 -08:00
swap.c [PATCH] unpaged: unifdefed PageCompound 2005-11-22 09:13:42 -08:00
swapfile.c [PATCH] mm/swapfile.c: unexport total_swap_pages 2005-11-07 07:54:07 -08:00
thrash.c [PATCH] temporarily disable swap token on memory pressure 2005-11-28 14:42:25 -08:00
tiny-shmem.c
truncate.c [PATCH] reiser4: vfs: add truncate_inode_pages_range() 2006-01-06 08:33:22 -08:00
vmalloc.c
vmscan.c [PATCH] add AOP_TRUNCATED_PAGE, prepend AOP_ to WRITEPAGE_ACTIVATE 2006-01-03 11:45:42 -08:00