From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Wagner Subject: Re: [PATCH] locks: fix fasync_struct memory leak in lease upgrade/downgrade handling Date: Thu, 5 Mar 2015 07:57:09 +0100 Message-ID: <54F7FE45.5000100@bmw-carit.de> References: <1425513974-27153-1-git-send-email-jeff.layton@primarydata.com> Mime-Version: 1.0 Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit Cc: , , To: Jeff Layton , Return-path: In-Reply-To: <1425513974-27153-1-git-send-email-jeff.layton@primarydata.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org 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 > Signed-off-by: Jeff Layton Tested-by: Daniel Wagner cheers, daniel