kernel_optimize_test/mm
Michel Lespinasse 53a7706d5e mlock: do not hold mmap_sem for extended periods of time
__get_user_pages gets a new 'nonblocking' parameter to signal that the
caller is prepared to re-acquire mmap_sem and retry the operation if
needed.  This is used to split off long operations if they are going to
block on a disk transfer, or when we detect contention on the mmap_sem.

[akpm@linux-foundation.org: remove ref to rwsem_is_contended()]
Signed-off-by: Michel Lespinasse <walken@google.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Nick Piggin <npiggin@kernel.dk>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-01-13 17:32:36 -08:00
..
backing-dev.c
bootmem.c
bounce.c
compaction.c mm: compaction: perform a faster migration scan when migrating asynchronously 2011-01-13 17:32:34 -08:00
debug-pagealloc.c
dmapool.c
fadvise.c
failslab.c
filemap_xip.c
filemap.c mm: clear PageError bit in msync & fsync 2011-01-13 17:32:35 -08:00
fremap.c
highmem.c
hugetlb.c mm/hugetlb.c: avoid double unlock_page() in hugetlb_fault() 2010-12-02 14:51:14 -08:00
hwpoison-inject.c
init-mm.c
internal.h mlock: do not hold mmap_sem for extended periods of time 2011-01-13 17:32:36 -08:00
Kconfig
Kconfig.debug
kmemcheck.c
kmemleak-test.c
kmemleak.c
ksm.c ksm: annotate ksm_thread_mutex is no deadlock source 2010-12-02 14:51:15 -08:00
maccess.c
madvise.c
Makefile
memblock.c
memcontrol.c memcg: fix wrong VM_BUG_ON() in try_charge()'s mm->owner check 2010-12-30 10:07:06 -08:00
memory_hotplug.c mm: migration: cleanup migrate_pages API by matching types for offlining and sync 2011-01-13 17:32:34 -08:00
memory-failure.c mm: migration: allow migration to operate asynchronously and avoid synchronous compaction in the faster path 2011-01-13 17:32:34 -08:00
memory.c mlock: do not hold mmap_sem for extended periods of time 2011-01-13 17:32:36 -08:00
mempolicy.c mm: migration: cleanup migrate_pages API by matching types for offlining and sync 2011-01-13 17:32:34 -08:00
mempool.c
migrate.c mm: migration: cleanup migrate_pages API by matching types for offlining and sync 2011-01-13 17:32:34 -08:00
mincore.c
mlock.c mlock: do not hold mmap_sem for extended periods of time 2011-01-13 17:32:36 -08:00
mm_init.c
mmap.c install_special_mapping skips security_file_mmap check. 2010-12-15 12:30:36 -08:00
mmu_context.c
mmu_notifier.c
mmzone.c mm: page allocator: adjust the per-cpu counter threshold when memory is low 2011-01-13 17:32:31 -08:00
mprotect.c perf_events: Fix perf_counter_mmap() hook in mprotect() 2010-11-09 10:19:38 -08:00
mremap.c
msync.c
nommu.c mlock: do not hold mmap_sem for extended periods of time 2011-01-13 17:32:36 -08:00
oom_kill.c
page_alloc.c mm: migration: allow migration to operate asynchronously and avoid synchronous compaction in the faster path 2011-01-13 17:32:34 -08:00
page_cgroup.c
page_io.c
page_isolation.c
page-writeback.c mm/page-writeback.c: fix __set_page_dirty_no_writeback() return value 2011-01-13 17:32:32 -08:00
pagewalk.c mm: remove call to find_vma in pagewalk for non-hugetlbfs 2010-11-25 06:50:46 +09:00
percpu-km.c
percpu-vm.c mm: remove gfp mask from pcpu_get_vm_areas 2011-01-13 17:32:34 -08:00
percpu.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-01-13 10:05:56 -08:00
prio_tree.c
quicklist.c
readahead.c
rmap.c mm/rmap.c: fix comment 2010-12-27 15:14:06 +01:00
shmem.c fs: icache RCU free inodes 2011-01-07 17:50:26 +11:00
slab.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6 2011-01-10 08:38:01 -08:00
slob.c kernel: kmem_ptr_validate considered harmful 2011-01-07 17:50:16 +11:00
slub.c mm: convert sprintf_symbol to %pS 2011-01-13 17:32:33 -08:00
sparse-vmemmap.c tree-wide: fix comment/printk typos 2010-11-01 15:38:34 -04:00
sparse.c
swap_state.c
swap.c
swapfile.c block: make blkdev_get/put() handle exclusive access 2010-11-13 11:55:17 +01:00
thrash.c
truncate.c Call the filesystem back whenever a page is removed from the page cache 2010-12-02 09:55:21 -05:00
util.c kernel: kmem_ptr_validate considered harmful 2011-01-07 17:50:16 +11:00
vmalloc.c mm: unify module_alloc code for vmalloc 2011-01-13 17:32:34 -08:00
vmscan.c mm: vmscan: rename lumpy_mode to reclaim_mode 2011-01-13 17:32:34 -08:00
vmstat.c mm: vmstat: use a single setter function and callback for adjusting percpu thresholds 2011-01-13 17:32:31 -08:00