mirror of
https://gitee.com/openharmony/kernel_linux
synced 2024-12-15 19:01:26 +00:00
[PATCH] remove VM_DONTCOPY bogosities
Now that it's madvisable, remove two pieces of VM_DONTCOPY bogosity: 1. There was and is no logical reason why VM_DONTCOPY should be in the list of flags which forbid vma merging (and those drivers which set it are also setting VM_IO, which itself forbids the merge). 2. It's hard to understand the purpose of the VM_HUGETLB, VM_DONTCOPY block in vm_stat_account: but never mind, it's under CONFIG_HUGETLB, which (unlike CONFIG_HUGETLB_PAGE or CONFIG_HUGETLBFS) has never been defined. Signed-off-by: Hugh Dickins <hugh@veritas.com> Cc: William Lee Irwin III <wli@holomorphy.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
fb8d14e172
commit
a6f563db09
10
mm/mmap.c
10
mm/mmap.c
@ -612,7 +612,7 @@ again: remove_next = 1 + (end > next->vm_end);
|
||||
* If the vma has a ->close operation then the driver probably needs to release
|
||||
* per-vma resources, so we don't attempt to merge those.
|
||||
*/
|
||||
#define VM_SPECIAL (VM_IO | VM_DONTCOPY | VM_DONTEXPAND | VM_RESERVED | VM_PFNMAP)
|
||||
#define VM_SPECIAL (VM_IO | VM_DONTEXPAND | VM_RESERVED | VM_PFNMAP)
|
||||
|
||||
static inline int is_mergeable_vma(struct vm_area_struct *vma,
|
||||
struct file *file, unsigned long vm_flags)
|
||||
@ -845,14 +845,6 @@ void vm_stat_account(struct mm_struct *mm, unsigned long flags,
|
||||
const unsigned long stack_flags
|
||||
= VM_STACK_FLAGS & (VM_GROWSUP|VM_GROWSDOWN);
|
||||
|
||||
#ifdef CONFIG_HUGETLB
|
||||
if (flags & VM_HUGETLB) {
|
||||
if (!(flags & VM_DONTCOPY))
|
||||
mm->shared_vm += pages;
|
||||
return;
|
||||
}
|
||||
#endif /* CONFIG_HUGETLB */
|
||||
|
||||
if (file) {
|
||||
mm->shared_vm += pages;
|
||||
if ((flags & (VM_EXEC|VM_WRITE)) == VM_EXEC)
|
||||
|
Loading…
Reference in New Issue
Block a user