diff options
author | Nick Piggin <npiggin@suse.de> | 2008-02-01 21:08:53 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-02-04 10:55:38 -0500 |
commit | 2f98735c9c24ea1f0d40a364d4e63611b689b795 (patch) | |
tree | a42b3802449af474d36cda3b6f9fb190a717defb /mm | |
parent | fe2528b96b02173395f5a75e37714c07f3e25e73 (diff) |
vm audit: add VM_DONTEXPAND to mmap for drivers that need it
Drivers that register a ->fault handler, but do not range-check the
offset argument, must set VM_DONTEXPAND in the vm_flags in order to
prevent an expanding mremap from overflowing the resource.
I've audited the tree and attempted to fix these problems (usually by
adding VM_DONTEXPAND where it is not obvious).
Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/mmap.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -2216,7 +2216,7 @@ int install_special_mapping(struct mm_struct *mm, | |||
2216 | vma->vm_start = addr; | 2216 | vma->vm_start = addr; |
2217 | vma->vm_end = addr + len; | 2217 | vma->vm_end = addr + len; |
2218 | 2218 | ||
2219 | vma->vm_flags = vm_flags | mm->def_flags; | 2219 | vma->vm_flags = vm_flags | mm->def_flags | VM_DONTEXPAND; |
2220 | vma->vm_page_prot = vm_get_page_prot(vma->vm_flags); | 2220 | vma->vm_page_prot = vm_get_page_prot(vma->vm_flags); |
2221 | 2221 | ||
2222 | vma->vm_ops = &special_mapping_vmops; | 2222 | vma->vm_ops = &special_mapping_vmops; |