Re: [PATCH] sched: Avoid that __wait_on_bit_lock() hangs
From: Oleg Nesterov
Date: Sat Aug 13 2016 - 13:08:04 EST
Forgot to mention...
On 08/12, Bart Van Assche wrote:
>
> --- a/mm/filemap.c
> +++ b/mm/filemap.c
> @@ -1643,7 +1643,12 @@ find_page:
> * wait_on_page_locked is used to avoid unnecessarily
> * serialisations and why it's safe.
> */
> - wait_on_page_locked_killable(page);
> + error = wait_on_page_locked_killable(page);
> + if (error == -EINTR) {
> + put_page(page);
> + goto out;
> + }
> + error = 0;
This change probably makes sense regardless although I'd suggest to
simplify it:
- wait_on_page_locked_killable(page);
+ error = wait_on_page_locked_killable(page);
+ if (unlikely(error))
+ goto readpage_error;
but it looks off-topic. And the changelog looks misleading/wrong.
I do not think this change makes sense in this debugging session,
Oleg.