Microsoft KB Archive/285089

From BetaArchive Wiki
Knowledge Base


Description of the IRPStackSize parameter in Windows 2000, in Windows XP, and in Windows Server 2003

Article ID: 285089

Article Last Modified on 8/31/2007



APPLIES TO

  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows XP Professional
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Server 4.0 Enterprise Edition
  • Microsoft Windows NT Server 4.0, Terminal Server Edition



This article was previously published under Q285089

Important This article contains information about how to modify the registry. Make sure that you back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows registry


INTRODUCTION

This article describes the functionality of the IRPStackSize parameter in Microsoft Windows 2000 Server, in Microsoft Windows XP, and in Microsoft Windows Server 2003.

MORE INFORMATION

Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall the operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

The IRPStackSize parameter specifies the number of stack locations in I/O request packets (IRPs) that are used by Windows 2000 Server, by Windows Server 2003, and by Windows XP. You may have to increase this number for certain transports, for media access control (MAC) drivers, or for file system drivers. Each stack uses 36 bytes of memory for each receive buffer. This value is set in the following registry subkey:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters


The default value of the IRPStackSize parameter is 15. The range is from 11 (0xb hexadecimal) through 50 (0x32 hexadecimal).

If the subkey is not present, you can use Registry Editor to add the subkey. To do this, follow these steps:

  1. Click Start, click Run, type regedit, and then click OK.
  2. Locate and then click the following registry subkey:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

  3. Click Edit, point to New, and then click DWORD Value.
  4. Type IRPStackSize, and then press ENTER to name the value.

    Note Type IRPStackSize exactly as it is displayed. The value name is case sensitive.
  5. Click Edit, and then click Modify.
  6. In the Data Value box, type the value that is appropriate for the network, and then click OK.

If the problem persists after you complete this procedure, increase the value of IRPStackSize even more.

Note On some computers, values from 33 through 38 can cause problems. For information about a hotfix that addresses these problems, click the following article number to visit the article in the Microsoft Knowledge Base:

924749 Event ID 2021 is logged even though lots of non-paged pool memory is available in Windows Server 2003



Additional query words: irpstacksize lanmanserver IRP

Keywords: kbinfo KB285089