Re: [PATCH v2 11/19] mm/mmap: Make vm_special_mapping::mremap return void

Christophe Leroy
2020-11-24T06:25:48Z

Le 24/11/2020 à 01:29, Dmitry Safonov a écrit :
> Previously .mremap() callback needed (int) return to provide way to
> restrict resizing of a special mapping. Now it's restricted by
> providing .may_split = special_mapping_split.
>
> Removing (int) return simplifies further changes to
> special_mapping_mremap() as it won't need save ret code from the
> callback. Also, it removes needless `return 0` from callbacks.
>
> Signed-off-by: Dmitry Safonov <dima@arista.com>
> ---
> arch/arm/kernel/process.c | 3 +--
> arch/arm64/kernel/vdso.c | 4 +---
> arch/mips/vdso/genvdso.c | 3 +--
> arch/x86/entry/vdso/vma.c | 4 +---
> include/linux/mm_types.h | 2 +-
> mm/mmap.c | 2 +-
> 6 files changed, 6 insertions(+), 12 deletions(-)
>
> diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
> index 65df8abd90bd..95a257927dae 100644
> --- a/include/linux/mm_types.h
> +++ b/include/linux/mm_types.h
> @@ -780,7 +780,7 @@ struct vm_special_mapping {
> struct vm_area_struct *vma,
> struct vm_fault *vmf);
>
> - int (*mremap)(const struct vm_special_mapping *sm,
> + void (*mremap)(const struct vm_special_mapping *sm,
> struct vm_area_struct *new_vma);

Second line should be aligned to first line's parenthesis I think.

> };
>
> diff --git a/mm/mmap.c b/mm/mmap.c
> index d0d458632c1b..17fe59a9780b 100644
> --- a/mm/mmap.c
> +++ b/mm/mmap.c
> @@ -3433,7 +3433,7 @@ static int special_mapping_mremap(struct vm_area_struct *new_vma,
> return -EFAULT;
>
> if (sm->mremap)
> - return sm->mremap(sm, new_vma);
> + sm->mremap(sm, new_vma);
>
> return 0;
> }
>