s3: SMB2 : Fix leak of blocking lock records in the database.
authorJeremy Allison <jra@samba.org>
Thu, 26 Jun 2014 19:08:46 +0000 (12:08 -0700)
committerKarolin Seeger <kseeger@samba.org>
Thu, 17 Jul 2014 18:59:16 +0000 (20:59 +0200)
Based on a fix from Hemanth Thummala <hemanth.thummala@gmail.com>
Bug #10673 - Increasing response times for byte range unlock requests.

The previous refactoring makes it obvious we need to call
remove_pending_lock() in all places where we are returning
from the SMB2 blocking lock call.

https://bugzilla.samba.org/show_bug.cgi?id=10673

Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Ira Cooper <ira@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Mon Jun 30 14:59:16 CEST 2014 on sn-devel-104

(cherry picked from commit cee1531e551e5ccd5ccd4a55de226ad686919486)

source3/smbd/smb2_lock.c

index 6c81f5caf3173c938896f3b7348a1bf3cd3c1c47..52698f3c4b993803294b4d009d7f3a650fe9945f 100644 (file)
@@ -724,6 +724,7 @@ static void reprocess_blocked_smb2_lock(struct smbd_smb2_request *smb2req,
                        fsp_fnum_dbg(fsp),
                        (int)state->lock_count));
 
+               remove_pending_lock(state, blr);
                tevent_req_done(smb2req->subreq);
                return;
        }