Re: [PATCH v2 0/5] fuse: Interrupt-related optimizations and improvements

From: Kirill Tkhai
Date: Wed Dec 26 2018 - 08:25:51 EST


ping

On 08.11.2018 12:05, Kirill Tkhai wrote:
> v2: Changes in [1-2,5] patches. The biggest change is in [5],
> where repeater FR_INTERRUPTED assignment is removed.
>
> This patchset consists of several parts. Patches [1-2] optimize
> likely case of request_end(), and make this function to take
> fiq->waitq.lock only, when it is really needed. This improves
> performance of this function completes.
>
> Patch 3 makes request_end() to call wake_up() only for not
> background requests (background requests never wait answer),
> and this optimizes this function a bit more
>
> Patches [4-5] makes code to check userspace requests correct
> interrupt id to requeue (whether we've sent this interrupt).
>
> ---
>
> Kirill Tkhai (5):
> fuse: Kill fasync only if interrupt is queued in queue_interrupt()
> fuse: Optimize request_end() by not taking fiq->waitq.lock
> fuse: Wake up req->waitq of only not background requests in request_end()
> fuse: Do some refactoring in fuse_dev_do_write()
> fuse: Verify userspace asks to requeue interrupt that we really sent
>
>
> fs/fuse/dev.c | 57 ++++++++++++++++++++++++++++++++++++++-------------------
> 1 file changed, 38 insertions(+), 19 deletions(-)
>
> --
> Signed-off-by: Kirill Tkhai <ktkhai@xxxxxxxxxxxxx>
>