Re: [Patch v2 2/4] mm/page_alloc.c: bad_[reason|flags] is not necessary when PageHWPoison

From: Anshuman Khandual
Date: Mon Jan 20 2020 - 01:26:45 EST




On 01/20/2020 08:34 AM, Wei Yang wrote:
> Since function returns directly, bad_[reason|flags] is not used any
> where.
>
> This is a following cleanup for commit e570f56cccd21 ("mm:
> check_new_page_bad() directly returns in __PG_HWPOISON case")
>
> Signed-off-by: Wei Yang <richardw.yang@xxxxxxxxxxxxxxx>
> Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
> ---
> mm/page_alloc.c | 2 --
> 1 file changed, 2 deletions(-)
>
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 0cf6218aaba7..a43b9d2482f2 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -2051,8 +2051,6 @@ static void check_new_page_bad(struct page *page)
> if (unlikely(page_ref_count(page) != 0))
> bad_reason = "nonzero _refcount";
> if (unlikely(page->flags & __PG_HWPOISON)) {
> - bad_reason = "HWPoisoned (hardware-corrupted)";
> - bad_flags = __PG_HWPOISON;
> /* Don't complain about hwpoisoned pages */
> page_mapcount_reset(page); /* remove PageBuddy */
> return;

This bail out condition should be the first in the function
check_new_page_bad() before evaluating bad_[reason|flags]
as they will never be used.

>