Re: [PATCH] fuse: clear FR_PENDING flag when moving requests out of pending queue
From: Miklos Szeredi
Date: Fri Jan 13 2017 - 06:13:13 EST
On Thu, Jan 12, 2017 at 9:04 PM, Tahsin Erdogan <tahsin@xxxxxxxxxx> wrote:
> fuse_abort_conn() moves requests from pending list to a temporary list
> before canceling them. This operation races with request_wait_answer()
> which also tries to remove the request after it gets a fatal signal. It
> checks FR_PENDING flag to determine whether the request is still in the
> pending list.
>
> Make fuse_abort_conn() clear FR_PENDING flag so that request_wait_answer()
> does not remove the request from temporary list.
>
> This bug manifests itself as a panic that looks like this:
Perfect patch; applied and pushed.
Thanks,
Miklos