mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-06 03:45:24 -04:00
mm: introduce INIT_VMA()
Some VMA struct fields need to be initialized once the VMA structure is allocated. Currently this only concerns anon_vma_chain field but some other will be added to support the speculative page fault. Instead of spreading the initialization calls all over the code, let's introduce a dedicated inline function. Change-Id: I9f6b29dc74055354318b548e2b6b22c37d4c61bb Signed-off-by: Laurent Dufour <ldufour@linux.vnet.ibm.com> Patch-mainline: linux-mm @ Tue, 17 Apr 2018 16:33:13 [vinmenon@codeaurora.org: trivial merge conflict fixes] Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org> [charante@codeaurora.org: merge conflict fixes] Signed-off-by: Charan Teja Reddy <charante@codeaurora.org>
This commit is contained in:
parent
7224f45453
commit
f9eb248e24
2 changed files with 7 additions and 2 deletions
|
|
@ -529,6 +529,11 @@ struct vm_operations_struct {
|
|||
unsigned long addr);
|
||||
};
|
||||
|
||||
static inline void INIT_VMA(struct vm_area_struct *vma)
|
||||
{
|
||||
INIT_LIST_HEAD(&vma->anon_vma_chain);
|
||||
}
|
||||
|
||||
static inline void vma_init(struct vm_area_struct *vma, struct mm_struct *mm)
|
||||
{
|
||||
static const struct vm_operations_struct dummy_vm_ops = {};
|
||||
|
|
@ -536,7 +541,7 @@ static inline void vma_init(struct vm_area_struct *vma, struct mm_struct *mm)
|
|||
memset(vma, 0, sizeof(*vma));
|
||||
vma->vm_mm = mm;
|
||||
vma->vm_ops = &dummy_vm_ops;
|
||||
INIT_LIST_HEAD(&vma->anon_vma_chain);
|
||||
INIT_VMA(vma);
|
||||
}
|
||||
|
||||
static inline void vma_set_anonymous(struct vm_area_struct *vma)
|
||||
|
|
|
|||
|
|
@ -359,7 +359,7 @@ struct vm_area_struct *vm_area_dup(struct vm_area_struct *orig)
|
|||
|
||||
if (new) {
|
||||
*new = *orig;
|
||||
INIT_LIST_HEAD(&new->anon_vma_chain);
|
||||
INIT_VMA(new);
|
||||
}
|
||||
return new;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue