Message ID | 20241104015430.98599-3-xueshuai@linux.alibaba.com |
---|---|
State | Superseded |
Headers | show |
Series | None | expand |
On Mon, Nov 04, 2024 at 09:54:29AM +0800, Shuai Xue 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@linux.alibaba.com> > Reviewed-by: Jarkko Sakkinen <jarkko@kernel.org> > Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> > --- > 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, One more obvious one from this function: -ENXIO - memory not managed by the kernel > + * -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) > { > -- Reviewed-by: Yazen Ghannam <yazen.ghannam@amd.com> Thanks, Yazen
在 2024/11/5 23:18, Yazen Ghannam 写道: > On Mon, Nov 04, 2024 at 09:54:29AM +0800, Shuai Xue 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@linux.alibaba.com> >> Reviewed-by: Jarkko Sakkinen <jarkko@kernel.org> >> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> >> --- >> 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, > > One more obvious one from this function: > > -ENXIO - memory not managed by the kernel Yes, will fix it. > >> + * -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) >> { >> -- > > Reviewed-by: Yazen Ghannam <yazen.ghannam@amd.com> > > Thanks, > Yazen Thank you for valuable comments. Shuai
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) {