r17108: Make the default timeout parameter for lock waiting
authorJeremy Allison <jra@samba.org>
Tue, 18 Jul 2006 01:29:43 +0000 (01:29 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 16:38:12 +0000 (11:38 -0500)
be lp_lock_spin(). lock spin count is no longer
used. I'll update the man pages.
Jeremy.

source/param/loadparm.c
source/smbd/reply.c

index b4b6c2bd108869c457d4c119a68a061998502ab9..acb54f25dfc529363df12b23ed05ca34055f36f8 100644 (file)
@@ -1546,8 +1546,8 @@ static void init_globals(BOOL first_time_only)
        Globals.map_to_guest = 0;       /* By Default, "Never" */
        Globals.oplock_break_wait_time = 0;     /* By Default, 0 msecs. */
        Globals.enhanced_browsing = True; 
-       Globals.iLockSpinCount = 3; /* Try 3 times. */
-       Globals.iLockSpinTime = 10; /* usec. */
+       Globals.iLockSpinCount = 0; /* Unused. */
+       Globals.iLockSpinTime = WINDOWS_MINIMUM_LOCK_TIMEOUT_MS; /* msec. */
 #ifdef MMAP_BLACKLIST
        Globals.bUseMmap = False;
 #else
@@ -1948,7 +1948,7 @@ FN_GLOBAL_INTEGER(lp_machine_password_timeout, &Globals.machine_password_timeout
 FN_GLOBAL_INTEGER(lp_map_to_guest, &Globals.map_to_guest)
 FN_GLOBAL_INTEGER(lp_oplock_break_wait_time, &Globals.oplock_break_wait_time)
 FN_GLOBAL_INTEGER(lp_lock_spin_count, &Globals.iLockSpinCount)
-FN_GLOBAL_INTEGER(lp_lock_sleep_time, &Globals.iLockSpinTime)
+FN_GLOBAL_INTEGER(lp_lock_spin_time, &Globals.iLockSpinTime)
 FN_GLOBAL_INTEGER(lp_usershare_max_shares, &Globals.iUsershareMaxShares)
 
 FN_LOCAL_STRING(lp_preexec, szPreExec)
index f1ac098e7d14045f8e169e3c4b1c73fec404afca..edaf5d8062c120010d6e68c5ce2fc46bce5f15cd 100644 (file)
@@ -5383,8 +5383,8 @@ int reply_lockingX(connection_struct *conn, char *inbuf, char *outbuf,
                        if (br_lck && blocking_lock && ERROR_WAS_LOCK_DENIED(status)) {
                                /* Windows internal resolution for blocking locks seems
                                   to be about 200ms... Don't wait for less than that. JRA. */
-                               if (lock_timeout != -1 && lock_timeout < WINDOWS_MINIMUM_LOCK_TIMEOUT_MS) {
-                                       lock_timeout = WINDOWS_MINIMUM_LOCK_TIMEOUT_MS;
+                               if (lock_timeout != -1 && lock_timeout < lp_lock_spin_time()) {
+                                       lock_timeout = lp_lock_spin_time();
                                }
                                defer_lock = True;
                        }
@@ -5397,7 +5397,7 @@ int reply_lockingX(connection_struct *conn, char *inbuf, char *outbuf,
                        if (br_lck && lp_blocking_locks(SNUM(conn)) && !blocking_lock &&
                                        NT_STATUS_EQUAL((status), NT_STATUS_FILE_LOCK_CONFLICT)) {
                                defer_lock = True;
-                               lock_timeout = WINDOWS_MINIMUM_LOCK_TIMEOUT_MS;
+                               lock_timeout = lp_lock_spin_time();
                        }
 
                        if (br_lck && defer_lock) {