Re: [PATCH v2 1/1] mseal: remove can_do_mseal()
From: Lorenzo Stoakes
Date: Fri Dec 06 2024 - 14:57:21 EST
On Fri, Dec 06, 2024 at 07:48:39PM +0000, jeffxu@xxxxxxxxxxxx wrote:
> From: Jeff Xu <jeffxu@xxxxxxxxxxxx>
>
> No code logic change.
>
> can_do_mseal() is called exclusively by mseal.c, and mseal.c is compiled
> only when CONFIG_64BIT flag is set in makefile. Therefore, it is
> unnecessary to have 32 bit stub function in the header file, remove
> this function and merge the logic into do_mseal().
>
> Link: https://lkml.kernel.org/r/20241206013934.2782793-1-jeffxu@xxxxxxxxxx
> Signed-off-by: Jeff Xu <jeffxu@xxxxxxxxxxxx>
LGTM,
Reviewed-by: Lorenzo Stoakes <lorenzo.stoakes@xxxxxxxxxx>
> Cc: Jorge Lucangeli Obes <jorgelo@xxxxxxxxxxxx>
> Cc: Kees Cook <keescook@xxxxxxxxxxxx>
> Cc: Liam R. Howlett <Liam.Howlett@xxxxxxxxxx>
> Cc: Lorenzo Stoakes <lorenzo.stoakes@xxxxxxxxxx>
> Cc: Pedro Falcato <pedro.falcato@xxxxxxxxx>
> Cc: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
> Cc: Vlastimil Babka <vbabka@xxxxxxx>
> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Not sure you should be submitting a S-o-b for Andrew :P I'm thinking this
is a copy/paste mistake.
> ---
> mm/internal.h | 16 ----------------
> mm/mseal.c | 6 +++---
> 2 files changed, 3 insertions(+), 19 deletions(-)
>
> diff --git a/mm/internal.h b/mm/internal.h
> index 74dc1c48fa31..5e4ef5ce9c0a 100644
> --- a/mm/internal.h
> +++ b/mm/internal.h
> @@ -1457,22 +1457,6 @@ void __meminit __init_single_page(struct page *page, unsigned long pfn,
> unsigned long shrink_slab(gfp_t gfp_mask, int nid, struct mem_cgroup *memcg,
> int priority);
>
> -#ifdef CONFIG_64BIT
> -static inline int can_do_mseal(unsigned long flags)
> -{
> - if (flags)
> - return -EINVAL;
> -
> - return 0;
> -}
> -
> -#else
> -static inline int can_do_mseal(unsigned long flags)
> -{
> - return -EPERM;
> -}
> -#endif
> -
> #ifdef CONFIG_SHRINKER_DEBUG
> static inline __printf(2, 0) int shrinker_debugfs_name_alloc(
> struct shrinker *shrinker, const char *fmt, va_list ap)
> diff --git a/mm/mseal.c b/mm/mseal.c
> index 81d6e980e8a9..c27197ac04e8 100644
> --- a/mm/mseal.c
> +++ b/mm/mseal.c
> @@ -217,9 +217,9 @@ int do_mseal(unsigned long start, size_t len_in, unsigned long flags)
> unsigned long end;
> struct mm_struct *mm = current->mm;
>
> - ret = can_do_mseal(flags);
> - if (ret)
> - return ret;
> + /* Verify flags not set. */
> + if (flags)
> + return -EINVAL;
>
> start = untagged_addr(start);
> if (!PAGE_ALIGNED(start))
> --
> 2.47.0.338.g60cca15819-goog
>