Microsoft KB Archive/288794

= Calling FlushFileBuffers on Bidirectional File Transfer May Cause a Deadlock =

Article ID: 288794

Article Last Modified on 1/31/2007

-

APPLIES TO


 * Microsoft Windows 2000 Service Pack 1
 * Microsoft Windows 2000 Service Pack 2
 * Microsoft Windows 2000 Advanced Server
 * Microsoft Windows 2000 Advanced Server
 * Microsoft Windows 2000 Service Pack 1
 * Microsoft Windows 2000 Service Pack 2

-



This article was previously published under Q288794



SYMPTOMS
If a client is transferring a large file to a server, and at the same time the server is transferring a large file to the client, one or both of the copy operations may stop (or hang). This can occur if the program that is copying the file calls the FlushFileBuffers function after issuing the Write call.

This problem does not occur with typical Copy and Xcopy utilities because they do not call FlushFileBuffers after issuing Write calls.



CAUSE
Flushes cause write operations, and these write operations are not expected to go into the cache. However, the server message block (SMB) server is issuing cached writes in the flush path. These cached writes cause a deadlock condition in the cache manager.



RESOLUTION
To resolve this problem, obtain the latest service pack for Windows 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

260910 How to Obtain the Latest Windows 2000 Service Pack

The English version of this fix should have the following file attributes or later:   Date        Time      Version        Size          File name 5/4/2001  03:48p   5.0.2195.3573   1,685,440   Ntkrnlmp.exe 5/4/2001  03:49p   5.0.2195.3573   1,685,248   Ntkrnlpa.exe 5/4/2001  03:49p   5.0.2195.3573   1,705,856   Ntkrpamp.exe 5/4/2001  03:48p   5.0.2195.3573   1,663,360   Ntoskrnl.exe 4/2/2001  03:46p   5.0.2195.3444     237,072   Srv.sys 5/4/2001  06:25p   5.0.2195.3407      73,488   Srvsvc.dll



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Windows 2000 Service Pack 3.



MORE INFORMATION
For additional information about how to obtain a hotfix for Windows 2000 Datacenter Server, click the article number below to view the article in the Microsoft Knowledge Base:

265173 The Datacenter Program and Windows 2000 Datacenter Server Product

For additional information about how to install multiple hotfixes with only one reboot, click the article number below to view the article in the Microsoft Knowledge Base:

296861 Use QChain.exe to Install Multiple Hotfixes with One Reboot

For additional information about how to install Windows 2000 and Windows 2000 hotfixes at the same time, click the article number below to view the article in the Microsoft Knowledge Base:

249149 Installing Microsoft Windows 2000 and Windows 2000 Hotfixes

Additional query words:

Keywords: kbbug kbfix kbwin2000presp3fix kbqfe kbwin2000sp3fix kbsecurity kbhotfixserver KB288794

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.