Message ID | 20240817-mseal-depessimize-v3-6-d8d2e037df30@gmail.com |
---|---|
State | Accepted |
Commit | 5b3db2b812a1f86dfab587324d198a5d10c7a5cf |
Headers | show |
Series | mm: Optimize mseal checks | expand |
* Pedro Falcato <pedro.falcato@gmail.com> [240816 20:18]: > With no more users in the tree, we can finally remove can_modify_mm(). > > Signed-off-by: Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by: Liam R. Howlett <Liam.Howlett@Oracle.com> > --- > mm/internal.h | 14 -------------- > mm/mseal.c | 21 --------------------- > 2 files changed, 35 deletions(-) > > diff --git a/mm/internal.h b/mm/internal.h > index 1db320650539..3b738b0ad893 100644 > --- a/mm/internal.h > +++ b/mm/internal.h > @@ -1361,25 +1361,11 @@ static inline int can_do_mseal(unsigned long flags) > return 0; > } > > -bool can_modify_mm(struct mm_struct *mm, unsigned long start, > - unsigned long end); > #else > static inline int can_do_mseal(unsigned long flags) > { > return -EPERM; > } > - > -static inline bool can_modify_mm(struct mm_struct *mm, unsigned long start, > - unsigned long end) > -{ > - return true; > -} > - > -static inline bool can_modify_mm_madv(struct mm_struct *mm, unsigned long start, > - unsigned long end, int behavior) > -{ > - return true; > -} > #endif > > #ifdef CONFIG_SHRINKER_DEBUG > diff --git a/mm/mseal.c b/mm/mseal.c > index fdd1666344fa..28cd17d7aaf2 100644 > --- a/mm/mseal.c > +++ b/mm/mseal.c > @@ -53,27 +53,6 @@ static bool is_ro_anon(struct vm_area_struct *vma) > return false; > } > > -/* > - * Check if the vmas of a memory range are allowed to be modified. > - * the memory ranger can have a gap (unallocated memory). > - * return true, if it is allowed. > - */ > -bool can_modify_mm(struct mm_struct *mm, unsigned long start, unsigned long end) > -{ > - struct vm_area_struct *vma; > - > - VMA_ITERATOR(vmi, mm, start); > - > - /* going through each vma to check. */ > - for_each_vma_range(vmi, vma, end) { > - if (unlikely(!can_modify_vma(vma))) > - return false; > - } > - > - /* Allow by default. */ > - return true; > -} > - > /* > * Check if a vma is allowed to be modified by madvise. > */ > > -- > 2.46.0 >
On Sat, Aug 17, 2024 at 01:18:33AM GMT, Pedro Falcato wrote: > With no more users in the tree, we can finally remove can_modify_mm(). > > Signed-off-by: Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by: Lorenzo Stoakes <lorenzo.stoakes@oracle.com> > --- > mm/internal.h | 14 -------------- > mm/mseal.c | 21 --------------------- > 2 files changed, 35 deletions(-) > > diff --git a/mm/internal.h b/mm/internal.h > index 1db320650539..3b738b0ad893 100644 > --- a/mm/internal.h > +++ b/mm/internal.h > @@ -1361,25 +1361,11 @@ static inline int can_do_mseal(unsigned long flags) > return 0; > } > > -bool can_modify_mm(struct mm_struct *mm, unsigned long start, > - unsigned long end); > #else > static inline int can_do_mseal(unsigned long flags) > { > return -EPERM; > } > - > -static inline bool can_modify_mm(struct mm_struct *mm, unsigned long start, > - unsigned long end) > -{ > - return true; > -} > - > -static inline bool can_modify_mm_madv(struct mm_struct *mm, unsigned long start, > - unsigned long end, int behavior) > -{ > - return true; > -} > #endif > > #ifdef CONFIG_SHRINKER_DEBUG > diff --git a/mm/mseal.c b/mm/mseal.c > index fdd1666344fa..28cd17d7aaf2 100644 > --- a/mm/mseal.c > +++ b/mm/mseal.c > @@ -53,27 +53,6 @@ static bool is_ro_anon(struct vm_area_struct *vma) > return false; > } > > -/* > - * Check if the vmas of a memory range are allowed to be modified. > - * the memory ranger can have a gap (unallocated memory). > - * return true, if it is allowed. > - */ > -bool can_modify_mm(struct mm_struct *mm, unsigned long start, unsigned long end) > -{ > - struct vm_area_struct *vma; > - > - VMA_ITERATOR(vmi, mm, start); > - > - /* going through each vma to check. */ > - for_each_vma_range(vmi, vma, end) { > - if (unlikely(!can_modify_vma(vma))) > - return false; > - } > - > - /* Allow by default. */ > - return true; > -} > - > /* > * Check if a vma is allowed to be modified by madvise. > */ > > -- > 2.46.0 >
diff --git a/mm/internal.h b/mm/internal.h index 1db320650539..3b738b0ad893 100644 --- a/mm/internal.h +++ b/mm/internal.h @@ -1361,25 +1361,11 @@ static inline int can_do_mseal(unsigned long flags) return 0; } -bool can_modify_mm(struct mm_struct *mm, unsigned long start, - unsigned long end); #else static inline int can_do_mseal(unsigned long flags) { return -EPERM; } - -static inline bool can_modify_mm(struct mm_struct *mm, unsigned long start, - unsigned long end) -{ - return true; -} - -static inline bool can_modify_mm_madv(struct mm_struct *mm, unsigned long start, - unsigned long end, int behavior) -{ - return true; -} #endif #ifdef CONFIG_SHRINKER_DEBUG diff --git a/mm/mseal.c b/mm/mseal.c index fdd1666344fa..28cd17d7aaf2 100644 --- a/mm/mseal.c +++ b/mm/mseal.c @@ -53,27 +53,6 @@ static bool is_ro_anon(struct vm_area_struct *vma) return false; } -/* - * Check if the vmas of a memory range are allowed to be modified. - * the memory ranger can have a gap (unallocated memory). - * return true, if it is allowed. - */ -bool can_modify_mm(struct mm_struct *mm, unsigned long start, unsigned long end) -{ - struct vm_area_struct *vma; - - VMA_ITERATOR(vmi, mm, start); - - /* going through each vma to check. */ - for_each_vma_range(vmi, vma, end) { - if (unlikely(!can_modify_vma(vma))) - return false; - } - - /* Allow by default. */ - return true; -} - /* * Check if a vma is allowed to be modified by madvise. */
With no more users in the tree, we can finally remove can_modify_mm(). Signed-off-by: Pedro Falcato <pedro.falcato@gmail.com> --- mm/internal.h | 14 -------------- mm/mseal.c | 21 --------------------- 2 files changed, 35 deletions(-)