The Samba-Bugzilla – Attachment 4899 Details for
Bug 6828
infinite timeout occurs when byte lock held outside of samba
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
git-am format follow on patch for 3.4.4.
0001-Second-part-of-the-fix-for-bug-6828-infinite-timeo.patch (text/plain), 1.89 KB, created by
Jeremy Allison
on 2009-10-27 13:44:51 UTC
(
hide
)
Description:
git-am format follow on patch for 3.4.4.
Filename:
MIME Type:
Creator:
Jeremy Allison
Created:
2009-10-27 13:44:51 UTC
Size:
1.89 KB
patch
obsolete
>From 7e52443414e791ffa3ecd9eb576e6d05804c3106 Mon Sep 17 00:00:00 2001 >From: Jeremy Allison <jra@samba.org> >Date: Tue, 27 Oct 2009 11:25:02 -0700 >Subject: [PATCH] Second part of the fix for bug 6828 - infinite timeout occurs when byte lock held outside of samba. > Fixes case where a connection with a pending lock can me marked "idle", and ensures > that the lock queue timeout is always recalculated. > Jeremy. > >--- > source3/smbd/blocking.c | 15 +++++++++------ > 1 files changed, 9 insertions(+), 6 deletions(-) > >diff --git a/source3/smbd/blocking.c b/source3/smbd/blocking.c >index f4d88d8..0eeb0b5 100644 >--- a/source3/smbd/blocking.c >+++ b/source3/smbd/blocking.c >@@ -652,7 +652,6 @@ void process_blocking_lock_queue(void) > { > struct timeval tv_curr = timeval_current(); > struct blocking_lock_record *blr, *next = NULL; >- bool recalc_timeout = False; > > /* > * Go through the queue and see if we can get any of the locks. >@@ -670,6 +669,14 @@ void process_blocking_lock_queue(void) > > DEBUG(10, ("Processing BLR = %p\n", blr)); > >+ /* We use set_current_service so connections with >+ * pending locks are not marked as idle. >+ */ >+ >+ set_current_service(blr->fsp->conn, >+ SVAL(blr->req->inbuf,smb_flg), >+ false); >+ > if(blocking_lock_record_process(blr)) { > struct byte_range_lock *br_lck = brl_get_locks( > talloc_tos(), blr->fsp); >@@ -690,7 +697,6 @@ void process_blocking_lock_queue(void) > > DLIST_REMOVE(blocking_lock_queue, blr); > TALLOC_FREE(blr); >- recalc_timeout = True; > continue; > } > >@@ -729,13 +735,10 @@ void process_blocking_lock_queue(void) > blocking_lock_reply_error(blr,NT_STATUS_FILE_LOCK_CONFLICT); > DLIST_REMOVE(blocking_lock_queue, blr); > TALLOC_FREE(blr); >- recalc_timeout = True; > } > } > >- if (recalc_timeout) { >- recalc_brl_timeout(); >- } >+ recalc_brl_timeout(); > } > > /**************************************************************************** >-- >1.5.4.3 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Flags:
metze
:
review+
Actions:
View
Attachments on
bug 6828
:
4866
|
4872
|
4873
|
4889
|
4890
|
4891
| 4899 |
4900