BUG NO_MORE_IRP_STACK_LOCATIONS

Hi, I’m developing a File System Filter driver. So, I have loaded my
driver and it’s filtering the file system, but if someone from other
computer opens a file in my computer, my computer shows a blue screen with
the message NO_MORE_IRP_STACK_LOCATIONS. Has anyone seen something like
it?

You need to increase the number of stack locations for the server driver.
This is a registry setting; I do not remember exacly. Search the MS
knowledge base for NO_MORE_IRP_STACK_LOCATIONS and the results should lead
you to a KB article describing how to increase the stack count for the
server driver.

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Ratmil Torres
Vargas
Sent: Thursday, June 08, 2000 6:44 AM
To: File Systems Developers
Subject: [ntfsd] BUG NO_MORE_IRP_STACK_LOCATIONS

Hi, I’m developing a File System Filter driver. So, I have loaded my
driver and it’s filtering the file system, but if someone from other
computer opens a file in my computer, my computer shows a blue screen with
the message NO_MORE_IRP_STACK_LOCATIONS. Has anyone seen something like
it?


You are currently subscribed to ntfsd as: xxxxx@storagecraft.com
To unsubscribe send a blank email to $subst(‘Email.Unsub’)

i suspect it is due to the same problem i encountered some time back.

are u copying the stack locations with

*PtrNextIoStackLocation = *PtrCurrentIoStackLocation;

if so, this will cause the NO_MORE_IRP_STACK_LOCATIONS problem if access is
made from another computer, as the completion routine from the previous
driver would be copied to the next if no completion routine is set by your
driver, leading to the same completion routine being called twice. this was
explained by Thomas.

i was taught by Tony to use the macro IoCopyCurrentIrpStackLocationToNext
and Jamey provided me with the definition.

thanks again to them.

// Copy the current IRP stack location to the next IRP stack location.
#ifndef IoCopyCurrentIrpStackLocationToNext
#define IoCopyCurrentIrpStackLocationToNext(Irp){ PIO_STACK_LOCATION irpSp; PIO_STACK_LOCATION nextIrpSp; irpSp = IoGetCurrentIrpStackLocation((Irp)); nextIrpSp = IoGetNextIrpStackLocation((Irp)); RtlCopyMemory(nextIrpSp, irpSp,
FIELD_OFFSET(IO_STACK_LOCATION,CompletionRoutine)); nextIrpSp->Control = 0;}
#endif

Ho Mun Chuen
@@ “Not everything that counts can be counted;
<” )~ and not everything that can be counted counts"
//\ … Albert Einstein
----- Original Message -----
From: Jamey Kirby
To: File Systems Developers
Sent: Friday, June 09, 2000 1:01 AM
Subject: [ntfsd] RE: BUG NO_MORE_IRP_STACK_LOCATIONS

You need to increase the number of stack locations for the server driver.
This is a registry setting; I do not remember exacly. Search the MS
knowledge base for NO_MORE_IRP_STACK_LOCATIONS and the results should lead
you to a KB article describing how to increase the stack count for the
server driver.

Jamey

> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com]On Behalf Of Ratmil Torres
> Vargas
> Sent: Thursday, June 08, 2000 6:44 AM
> To: File Systems Developers
> Subject: [ntfsd] BUG NO_MORE_IRP_STACK_LOCATIONS
>
>
> Hi, I’m developing a File System Filter driver. So, I have loaded my
> driver and it’s filtering the file system, but if someone from other
> computer opens a file in my computer, my computer shows a blue screen with
> the message NO_MORE_IRP_STACK_LOCATIONS. Has anyone seen something like
> it?
>
>
> —
> You are currently subscribed to ntfsd as: xxxxx@storagecraft.com
> To unsubscribe send a blank email to $subst(‘Email.Unsub’)
>


You are currently subscribed to ntfsd as: xxxxx@pmail.ntu.edu.sg
To unsubscribe send a blank email to $subst(‘Email.Unsub’)