You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Linus Torvalds
d9d332e087
anon_vma_prepare: properly lock even newly allocated entries
...
The anon_vma code is very subtle, and we end up doing optimistic lookups
of anon_vmas under RCU in page_lock_anon_vma() with no locking. Other
CPU's can also see the newly allocated entry immediately after we've
exposed it by setting "vma->anon_vma" to the new value.
We protect against the anon_vma being destroyed by having the SLAB
marked as SLAB_DESTROY_BY_RCU, so the RCU lookup can depend on the
allocation not being destroyed - but it might still be free'd and
re-allocated here to a new vma.
As a result, we should not do the anon_vma list ops on a newly allocated
vma without proper locking.
Acked-by: Nick Piggin <npiggin@suse.de>
Acked-by: Hugh Dickins <hugh@veritas.com>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years ago
..
Kconfig
Merge branch 'core-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
16 years ago
Makefile
…
allocpercpu.c
…
backing-dev.c
…
bootmem.c
misc: replace __FUNCTION__ with __func__
16 years ago
bounce.c
highmem: use bio_has_data() in the bounce path
16 years ago
dmapool.c
…
fadvise.c
Remove Andrew Morton's old email accounts
16 years ago
filemap.c
Merge branch 'core-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
16 years ago
filemap_xip.c
…
fremap.c
…
highmem.c
…
hugetlb.c
hugetlb: handle updating of ACCESSED and DIRTY in hugetlb_fault()
16 years ago
internal.h
…
maccess.c
…
madvise.c
…
memcontrol.c
mm owner: fix race between swapoff and exit
17 years ago
memory.c
…
memory_hotplug.c
…
mempolicy.c
…
mempool.c
…
migrate.c
…
mincore.c
…
mlock.c
…
mm_init.c
…
mmap.c
mmap: fix petty bug in anonymous shared mmap offset handling
17 years ago
mmu_notifier.c
…
mmzone.c
mm: mark the correct zone as full when scanning zonelists
17 years ago
mprotect.c
…
mremap.c
…
msync.c
…
nommu.c
…
oom_kill.c
…
page-writeback.c
Remove Andrew Morton's old email accounts
16 years ago
page_alloc.c
mm/page_alloc.c:free_area_init_nodes() fix inappropriate use of enum
16 years ago
page_io.c
…
page_isolation.c
memory hotplug: missing zone->lock in test_pages_isolated()
16 years ago
pagewalk.c
…
pdflush.c
Remove Andrew Morton's old email accounts
16 years ago
prio_tree.c
…
quicklist.c
…
readahead.c
Remove Andrew Morton's old email accounts
16 years ago
rmap.c
anon_vma_prepare: properly lock even newly allocated entries
16 years ago
shmem.c
Export shmem_file_setup for DRM-GEM
16 years ago
shmem_acl.c
…
slab.c
…
slob.c
SLOB: fix bogus ksize calculation fix
16 years ago
slub.c
slub: fixed uninitialized counter in struct kmem_cache_node
17 years ago
sparse-vmemmap.c
…
sparse.c
…
swap.c
…
swap_state.c
…
swapfile.c
…
thrash.c
…
tiny-shmem.c
mm: tiny-shmem nommu fix
16 years ago
truncate.c
Remove Andrew Morton's old email accounts
16 years ago
util.c
…
vmalloc.c
Merge branches 'x86/xen', 'x86/build', 'x86/microcode', 'x86/mm-debug-v2', 'x86/memory-corruption-check', 'x86/early-printk', 'x86/xsave', 'x86/ptrace-v2', 'x86/quirks', 'x86/setup', 'x86/spinlocks' and 'x86/signal' into x86/core-v2
16 years ago
vmscan.c
…
vmstat.c
…