]> git.michaelhowe.org Git - packages/o/openafs.git/commit
DEVEL15-windows-smb-lock-timeouts-20080228
authorJeffrey Altman <jaltman@secure-endpoints.com>
Thu, 28 Feb 2008 17:17:15 +0000 (17:17 +0000)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Thu, 28 Feb 2008 17:17:15 +0000 (17:17 +0000)
commita709dbf9efaf79073208d5509654fd49c1a47408
tree0cdbe2f52a1598fa23709b42f41a25fe1b8f0098
parent715cbd0765fe1463f246fbcb2d60dc503dfc18df
DEVEL15-windows-smb-lock-timeouts-20080228

LICENSE MIT

Attempts to open files which are already write-locked by another
client took forever to return a lock not granted error.  This
was because cm_Analyze() would retry the lock request for up to
the RDRtimeout in response to the EAGAIN error.  The problem
was that cm_IntSetLock() was not setting the CM_REQ_NORETRY flag.

While examining this issue, discovered two other things:

(1) the infinite wait logic on lock request processing was broken
(2) the cancel outstanding lock request logic wasn't implemented
(3) cm_Analyze() would put the thread to sleep even when retries
    were not permitted.

Also removed a number of compile time warnings.

(cherry picked from commit e9f7894e3576ef9e01234966f7869440f1823718)
src/WINNT/afsd/cm.h
src/WINNT/afsd/cm_conn.c
src/WINNT/afsd/cm_dcache.h
src/WINNT/afsd/cm_vnodeops.c
src/WINNT/afsd/smb.c
src/WINNT/afsd/smb.h
src/WINNT/afsd/smb3.c