Tag Archives: irpstacksize too small

Evento de erro de sistema ID 2011

A seguinte mensagem de erro é mostrada no log de eventos de Sistema:

Event Type: Error
Event Source: Srv
Event ID: 2011
Date: 1/1/2008
Time: 12:00:00 AM
Computer: MachineName
Description:
The server’s configuration parameter “irpstacksize” is too small for the server to use a local device. Please increase the value of this parameter.

E/ou a seguinte é mostrada no log de Cluster:

1/1/2008 12:00:00 AM 1 2055 1055 ClusSvc N/A MachineName(PhysicalNode) Cluster File Share resource
‘Share: FOLDERSHARENAME’ has failed a status check. The error code is 1130.

Usando o comando “NET HELPMSG 1130” obtemos a seguinte saída:

Not enough storage was available to complete the operation.

O que certamente pode levar a desconfiança com problemas no sistema de storage o que certamente não vem ao caso.

Uma descrição desse problema é feita aqui:
http://blogs.technet.com/b/askcore/archive/2008/01/25/irpstacksize-and-clusters.aspx

A solução para este problemas está descrita aqui:
http://support.microsoft.com/kb/106167/en-us

Mais detalhes sobre esse mecanismo:
http://msdn.microsoft.com/en-us/library/windows/hardware/ff551821(v=vs.85).aspx

De onde vale a pena destacar o seguinte:
Any higher-level driver that allocates IRPs for lower-level drivers also determines how many I/O stack locations the new IRPs should have, according to the StackSizevalue of the next-lower driver’s device object.

O que equivale dizer que: o driver do mais alto nível deve fazer a alocação dessa estrutura (IRP stack) com níveis suficientes, de forma que todos os driver de níveis mais baixos tenham garantida sua posição no “array”. Como na figura:

 

Image

 

Nesse contexto estamos falando especificamente de IRPs que foram alocadas pelo driver (Srv.sys) que o componente Kernel Mode do serviço LanManServer.

Referência: http://www.thenetworkencyclopedia.com/entry/server-service/

Em outras circunstâncias a falta de espaço na stack de uma IRP é a causa do bugcheck com código de erro 0X35.
http://msdn.microsoft.com/en-us/library/windows/hardware/ff557494(v=vs.85).aspx

Bom exemplo de debugging de um cenário desse tipo de bugcheck:
http://www.osronline.com/article.cfm?article=337

Bem essa é minha primeira experiência postando conteúdo técnico em um blog, espero que lhe seja útil, terei prazer em ler seus comentários.