Re: [PATCH v14 2/3] mm: memory-failure: move return value documentation to function declaration
From: Jonathan Cameron
Date: Thu Oct 17 2024 - 05:42:32 EST
On Mon, 14 Oct 2024 16:42:39 +0800
Shuai Xue <xueshuai@xxxxxxxxxxxxxxxxx> wrote:
> Part of return value comments for memory_failure() were originally
> documented at the call site. Move those comments to the function
> declaration to improve code readability and to provide developers with
> immediate access to function usage and return information.
>
> Signed-off-by: Shuai Xue <xueshuai@xxxxxxxxxxxxxxxxx>
> Reviewed-by: Jarkko Sakkinen <jarkko@xxxxxxxxxx>
Seems sensible.
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> ---
> arch/x86/kernel/cpu/mce/core.c | 7 -------
> mm/memory-failure.c | 9 ++++++---
> 2 files changed, 6 insertions(+), 10 deletions(-)
>
> diff --git a/arch/x86/kernel/cpu/mce/core.c b/arch/x86/kernel/cpu/mce/core.c
> index 2a938f429c4d..c90d8fcd246a 100644
> --- a/arch/x86/kernel/cpu/mce/core.c
> +++ b/arch/x86/kernel/cpu/mce/core.c
> @@ -1373,13 +1373,6 @@ static void kill_me_maybe(struct callback_head *cb)
> return;
> }
>
> - /*
> - * -EHWPOISON from memory_failure() means that it already sent SIGBUS
> - * to the current process with the proper error info,
> - * -EOPNOTSUPP means hwpoison_filter() filtered the error event,
> - *
> - * In both cases, no further processing is required.
> - */
> if (ret == -EHWPOISON || ret == -EOPNOTSUPP)
> return;
>
> diff --git a/mm/memory-failure.c b/mm/memory-failure.c
> index 96ce31e5a203..1c5098f32d48 100644
> --- a/mm/memory-failure.c
> +++ b/mm/memory-failure.c
> @@ -2209,9 +2209,12 @@ static void kill_procs_now(struct page *p, unsigned long pfn, int flags,
> * Must run in process context (e.g. a work queue) with interrupts
> * enabled and no spinlocks held.
> *
> - * Return: 0 for successfully handled the memory error,
> - * -EOPNOTSUPP for hwpoison_filter() filtered the error event,
> - * < 0(except -EOPNOTSUPP) on failure.
> + * Return:
> + * 0 - success,
> + * -EOPNOTSUPP - hwpoison_filter() filtered the error event,
> + * -EHWPOISON - the page was already poisoned, potentially
> + * kill process,
> + * other negative values - failure.
> */
> int memory_failure(unsigned long pfn, int flags)
> {