Microsoft KB Archive/296265

From BetaArchive Wiki
Knowledge Base


Article ID: 296265

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 Q296265

SYMPTOMS

Under certain circumstances, heavy usage of Winsock programs can cause non-paged pool memory to become exhausted. This behavior is likely to occur if the Winsock program is dealing with both Out-of-Band (MSG_OOB) and normal TCP traffic. This situation can cause various error messages and poor performance, and can cause the computer to stop responding (hang). Examples of possible error messages include:

Event ID: 2019
Source: Srv
Description: The server was unable to allocate from the system nonpaged pool because the pool was empty.

Event ID: 2000
Source: Srv
Description: The server's call to a system service failed unexpectedly.

Other events may not work and may generate status code 1450 ("Insufficient System Resources").

CAUSE

A non-paged pool memory leak occurs in Afd.sys if a Winsock program does not correctly post a Receive to collect the incoming data from Winsock. Afd.sys may endlessly buffer the data and use up all non-paged memory. Afd.sys should check the MaxBufferredReceiveBytes value for the socket and then not buffer more than this value.

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
   -----------------------------------------------------------
   4/16/2001   04:40p   5.0.2195.3503   118,800   Afd.sys
   4/16/2001   04:42p   5.0.2195.3417   104,720   Msafd.dll
   4/9/2001    03:25p   5.0.2195.3475   311,472   Tcpip.sys
   4/6/2001    05:55p   5.0.2195.3474    16,208   Tdi.sys
   4/16/2001   04:42p   5.0.2195.2104    17,680   Wshtcpip.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


You can identify this problem by following the instructions in the following Microsoft Knowledge Base article:

177415 How to Use Poolmon to Troubleshoot Kernel Mode Memory Leaks


The results show AfdB leaking non-paged pool over time:

Memory:  523816K Avail:  274204K  PageFlts:   971   InRam Krnl: 1396K P:17256
 Commit: 208392K Limit:1278740K Peak: 227040K            Pool N:20284K P:17416
 Tag  Type     Allocs            Frees            Diff   Bytes      Per Alloc

 
 AfdB Nonp     288886 (  17)    285160 (  21)     3726 6887776 (  2080)   1848
 MmCm Nonp         26 (   0)         3 (   0)       23 1286432 (     0)  55931
 File Nonp    1521215 ( 546)   1513387 ( 467)     7828 1255584 ( 12640)    160
 Irp  Nonp   15969583 (6156)  15966363 (6211)     3220 1225088 (-11232)    380
 TCPT Nonp       2010 (   0)         0 (   0)     2010  900480 (     0)    448
                    

The same problem exists in Microsoft Windows NT 4.0. For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

293841 Non-Paged Pool Is Exhausted by Afd


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: kbNetworking

Keywords: kbbug kbfix kbwin2000presp3fix kbqfe kbwin2000sp3fix kbnetwork kbhotfixserver KB296265