Please test this build
Jeffrey Altman <[email protected]> Thu, 01 Jun 2006 09:48:51 -0400
| Newsgroups | gmane.comp.file-systems.openafs.devel.win32 |
|---|---|
| Organization | Secure Endpoints Inc. |
| Message-ID | <[email protected]> |
Over the last two weeks in response to the openafs-info thread
describing "delayed write errors" from Microsoft Office applications
I have made three changes to OpenAFS for Windows:
(1) Removed the deadlock that was the cause of the "delayed write
errors" that initiated the thread. The "delayed write errors"
in this case were being caused by a deadlock on one smb_fid_t
object that prevented reads, writes, etc from being performed
on the file that Microsoft Office was attempting to write to.
(2) In the more general case, delayed write errors can occur when
a smb_Server thread that is processing a Windows CIFS request
is starved for CPU time because it is simply incredibly unlucky
when trying to obtain a mutex, lock, etc. To help prevent this
situation thread priorities are now dynamically adjusted based
upon the age of the CIFS request. This helps older requests
win out over younger requests when attempting to obtain resources.
(3) It was observed that when multiple requests on the same file
are being processed that the smb_Server threads spend most of
their time fighting over mutex objects and not performing I/O.
This was because the mutex objects were being held across
cm_SyncOp() and AFS RPC calls which tend to block. Releasing
the mutex across these calls will allow for simultaneous requests
to the AFS File Server on the same file. This is turn will
improve performance.
I have tagged a set of sources in cvs as openafs-stable-1_4_1c.
Installers for this build are available at
http://web.mit.edu/jaltman/Public/OpenAFS/1.4.1/
/afs/athena.mit.edu/user/j/a/jaltman/Public/OpenAFS/1.4.1/
\\afs\athena.mit.edu\user\j\a\jaltman\Public\OpenAFS\1.4.1\
Please test this build and report back your experiences. If things
look good, 1.4.2 will be released shortly.
Jeffrey Altman
smime.p7s
(application/x-pkcs7-signature, 3.3 KB) - not displayed