Re: [PATCH] locks: fix fasync_struct memory leak in lease upgrade/downgrade handling

From: Daniel Wagner
Date: Thu Mar 05 2015 - 01:57:27 EST


Hi Jeff,

On 03/05/2015 01:06 AM, Jeff Layton wrote:
> Commit 8634b51f6ca2 (locks: convert lease handling to file_lock_context)
> introduced a regression in the handling of lease upgrade/downgrades.
>
> In the event that we already have a lease on a file and are going to
> either upgrade or downgrade it, we skip doing any list insertion or
> deletion and skip to re-calling lm_setup on the existing lease.
>
> As of commit 8634b51f6ca2 however, we end up calling lm_setup on the
> lease that was passed in, instead of on the existing lease. This causes
> us to leak the fasync_struct that was allocated in the event that there
> was not already an existing one (as it always appeared that there
> wasn't one).
>
> Fixes: 8634b51f6ca2 (locks: convert lease handling to file_lock_context)

Yes, that fixes the problem. Thanks!

> Reported-by: Daniel Wagner <daniel.wagner@xxxxxxxxxxxx>
> Signed-off-by: Jeff Layton <jeff.layton@xxxxxxxxxxxxxxx>

Tested-by: Daniel Wagner <daniel.wagner@xxxxxxxxxxxx>


cheers,
daniel
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/