>               }
>               goto unlock_mutex;
>       } else if (res < 0) {
> -             if (is_reserved)
> +             /*
> +              * Promote a stable unhandlable kernel page diagnosed by
> +              * get_hwpoison_page() to MF_MSG_KERNEL alongside reserved
> +              * pages; transient lifecycle races stay as MF_MSG_GET_HWPOISON.
> +              */
> +             if (is_reserved || gp_status == MF_GET_PAGE_UNHANDLABLE)
>                       res = action_result(pfn, MF_MSG_KERNEL, MF_IGNORED);


It's all a bit of a mess. get_hwpoison_page() should just indicate that a page
is unhandable if it is PG_reserved?

Why can't we just return a special error code from  get_hwpoison_page()? We ahve
plenty of errno values to chose from.

-- 
Cheers,

David

Reply via email to