FIX: Increased Memory Usage After Heavy Network Traffic (822253)



The information in this article applies to:

  • Microsoft Windows CE .NET 4.2

SYMPTOMS

After a period of heavy network traffic, the memory usage can increase by 900 kilobytes (KB).

After the network traffic has decreased, the memory usage does not decrease.

CAUSE

The Cxport module includes common network transport support for allocating memory by using memory pools. Cxport keeps unused memory without releasing it so that it can handle memory requests efficiently. The threshold is 100000; this explains the 900 KB increase in the level of memory usage.

RESOLUTION

Hotfix Information

A supported software update is now available from Microsoft as Windows CE Platform Builder 4.2 Core OS QFE 030616_KB822253. To resolve this problem immediately, click the following article number for information about obtaining Windows CE Platform Builder and core operating system software updates:

837392 How to locate core operating system fixes for Microsoft Windows CE Platform Builder products

File Information

The English version of this package has the file attributes (or later) that are listed in the following table.
   Date         Time   Version       Size    File name
   -----------------------------------------------------------------------------------
   16-Jun-2003  21:40  4.2.3.616    584,296  Wincepb42-030616-kb822253-armv4.exe  
   16-Jun-2003  21:40  4.2.3.616    584,296  Wincepb42-030616-kb822253-armv4i.exe  
   16-Jun-2003  21:40  4.2.3.616    588,392  Wincepb42-030616-kb822253-mipsii.exe  
   16-Jun-2003  21:41  4.2.3.616    588,392  Wincepb42-030616-kb822253-mipsii_fp.exe  
   16-Jun-2003  21:41  4.2.3.616    592,488  Wincepb42-030616-kb822253-mipsiv.exe  
   16-Jun-2003  21:41  4.2.3.616    592,488  Wincepb42-030616-kb822253-mipsiv_fp.exe  
   16-Jun-2003  21:40  4.2.3.616    580,200  Wincepb42-030616-kb822253-sh3.exe  
   16-Jun-2003  21:40  4.2.3.616    580,200  Wincepb42-030616-kb822253-sh4.exe  
   16-Jun-2003  21:40  4.2.3.616    576,104  Wincepb42-030616-kb822253-x86.exe  
The English version of this fix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.
   Date         Time   		            Size    File name
   --------------------------------------------------------------
   Path: Public\Common\Oak\Lib\Armv4\Debug
   04-Jun-2003  04:54                    115,016  Cxport.lib
   04-Jun-2003  04:54                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Armv4\Retail
   04-Jun-2003  04:43                     53,994  Cxport.lib
   04-Jun-2003  04:43                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Armv4i\Debug
   04-Jun-2003  05:16                    115,158  Cxport.lib
   04-Jun-2003  05:16                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Armv4i\Retail
   04-Jun-2003  05:05                     54,190  Cxport.lib
   04-Jun-2003  05:05                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Mipsii\Debug
   04-Jun-2003  05:39                    128,138  Cxport.lib
   04-Jun-2003  05:39                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Mipsii\Retail
   04-Jun-2003  05:28                     58,872  Cxport.lib
   04-Jun-2003  05:28                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Mipsii_fp\Debug
   04-Jun-2003  06:01                    128,150  Cxport.lib
   04-Jun-2003  06:01                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Mipsii_fp\Retail
   04-Jun-2003  05:50                     58,880  Cxport.lib
   04-Jun-2003  05:50                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Mipsiv\Debug
   04-Jun-2003  06:23                    129,354  Cxport.lib
   04-Jun-2003  06:23                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Mipsiv\Retail
   04-Jun-2003  06:12                     59,350  Cxport.lib
   04-Jun-2003  06:12                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Mipsiv_fp\Debug
   04-Jun-2003  06:45                    129,366  Cxport.lib
   04-Jun-2003  06:45                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Mipsiv_fp\Retail
   04-Jun-2003  06:34                     59,358  Cxport.lib
   04-Jun-2003  06:34                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Sh3\Debug
   04-Jun-2003  07:08                    102,092  Cxport.lib
   04-Jun-2003  07:08                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Sh3\Retail
   04-Jun-2003  06:57                     50,314  Cxport.lib
   04-Jun-2003  06:57                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Sh4\Debug
   04-Jun-2003  07:30                    102,068  Cxport.lib
   04-Jun-2003  07:30                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\Sh4\Retail
   04-Jun-2003  07:19                     50,116  Cxport.lib
   04-Jun-2003  07:19                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\X86\Debug
   04-Jun-2003  04:32                    102,144  Cxport.lib
   04-Jun-2003  04:32                     61,440  Cxport.pdb

   Path: Public\Common\Oak\Lib\X86\Retail
   04-Jun-2003  04:21                     46,488  Cxport.lib
   04-Jun-2003  04:21                     61,440  Cxport.pdb

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

MORE INFORMATION

System images that are built after you apply this update will have a default threshold of 20000 (instead of 100000). As a result, Cxport will keep smaller available memory pools, and more memory will be released after network traffic decreases.

After this update is installed, you can configure the CXPORT allocator by using the registry.

Example Registry Settings

# FreeLimit is the threshold.  Default is 20000.
# FreeLists determines if CXPORT uses memory pools or the private heap directly.
# Set to 0 to use private heap directly. Set to 1 to use memory pools. Default is 1.
[HKEY_LOCAL_MACHINE\Comm\Cxport]
"FreeLimit"=dword:20000
"FreeLists"=dword:1


Modification Type:MinorLast Reviewed:5/27/2005
Keywords:kbBug kbfix kbQFE KB822253 kbAudOEM