Insufficient NonPaged Pool.

Hi,
My file system filter driver needs maintainence of a big linked list,
which is used in various dispatch routines, (like IRP_MJ_WRITE,
IRP_MJ_CREATE etc.)
Now the problem is that I need to access it on dispatch routines, which
may be above the DISPATCH_LEVEL giving all sorts of errors.
What is the most appropriate way of handling it. I have heard making
asynchronous will help, but how we do that.
I have to use the linked list in the dispatch routine only.
Thanks
Lalit

Hi,

I guess you can use HASH TABLES instead of link list, refer to filemon code for it.

I have seen your previous messages here and you are developing the same application which i am developing, so i guess you can help me a lot. my ques to are

1 How to trap file or folder delete and figure out if file or folder has been deleted (is there any differnce in handling of file or folder deletion)?

2 Instead of deleting file/folder i need to hide them.User is not be given any message of NO_ACCESS. The user has the illusion that the file or folder is deleted and is recovered on reboot.(is there any differnce in handling of file or folder hiding)?

Any tip with a sample code will be a great help to me as i am new to this subject and i have do this job ASAP.

thanks

Vishal

“Lalit S. Rana” wrote:
Hi,
My file system filter driver needs maintainence of a big linked list,
which is used in various dispatch routines, (like IRP_MJ_WRITE,
IRP_MJ_CREATE etc.)
Now the problem is that I need to access it on dispatch routines, which
may be above the DISPATCH_LEVEL giving all sorts of errors.
What is the most appropriate way of handling it. I have heard making
asynchronous will help, but how we do that.
I have to use the linked list in the dispatch routine only.
Thanks
Lalit


You are currently subscribed to ntfsd as: xxxxx@yahoo.co.in
To unsubscribe send a blank email to xxxxx@lists.osr.com
SMS using the Yahoo! Messenger;Download latest version.

Dispatch routines for file system filters are usually entered at
PASSIVE_LEVEL. Are you confusing DISPATCH_LEVEL & dispatch routines? They
are not related.

“Lalit S. Rana” wrote in message news:xxxxx@ntfsd…
>
> Hi,
> My file system filter driver needs maintainence of a big linked list,
> which is used in various dispatch routines, (like IRP_MJ_WRITE,
> IRP_MJ_CREATE etc.)
> Now the problem is that I need to access it on dispatch routines, which
> may be above the DISPATCH_LEVEL giving all sorts of errors.
> What is the most appropriate way of handling it. I have heard making
> asynchronous will help, but how we do that.
> I have to use the linked list in the dispatch routine only.
> Thanks
> Lalit
>
>

Is it possible for a dispatch routine for a file system filter to run at
DISPATCH_LEVEL.
In my FSFD I am making a linked list which is in PagedPool it is giving
memory errors when the link list becomes very big.
This error is not there if I implement the code with NonPagedPool.
Why this behaviour if dispatch routines are entered at PASSIVE_LEVEL. Is
there any method to lower the IRQL to get to the lower levels.
How can I handle the situation. I don’t want to allocate the NonPagedPool.
Thanks
Lalit.
“David J. Craig” wrote in message
news:xxxxx@ntfsd…
>
> Dispatch routines for file system filters are usually entered at
> PASSIVE_LEVEL. Are you confusing DISPATCH_LEVEL & dispatch routines?
They
> are not related.
>
> “Lalit S. Rana” wrote in message news:xxxxx@ntfsd…
> >
> > Hi,
> > My file system filter driver needs maintainence of a big linked list,
> > which is used in various dispatch routines, (like IRP_MJ_WRITE,
> > IRP_MJ_CREATE etc.)
> > Now the problem is that I need to access it on dispatch routines, which
> > may be above the DISPATCH_LEVEL giving all sorts of errors.
> > What is the most appropriate way of handling it. I have heard making
> > asynchronous will help, but how we do that.
> > I have to use the linked list in the dispatch routine only.
> > Thanks
> > Lalit
> >
> >
>
>
>
>

1 How to trap file or folder delete and figure out if file or folder has
been deleted (is there any differnce in handling of file or folder
deletion)?

You can do it in IRP_MJ_SET_INFORMATION, check for filedisposition class.

2 Instead of deleting file/folder i need to hide them.User is not be given
any message of NO_ACCESS. The user has the illusion that the file or folder
is deleted and is recovered on reboot.(is there any differnce in handling of
file or folder hiding)?

Do it in IRP_MJ_DIRECTORY_CONTROL.

Lalit.

“tarun chugh” wrote in message
news:xxxxx@ntfsd…
Hi,

I guess you can use HASH TABLES instead of link list, refer to filemon code
for it.

I have seen your previous messages here and you are developing the same
application which i am developing, so i guess you can help me a lot. my ques
to are

1 How to trap file or folder delete and figure out if file or folder has
been deleted (is there any differnce in handling of file or folder
deletion)?

2 Instead of deleting file/folder i need to hide them.User is not be given
any message of NO_ACCESS. The user has the illusion that the file or folder
is deleted and is recovered on reboot.(is there any differnce in handling of
file or folder hiding)?

Any tip with a sample code will be a great help to me as i am new to this
subject and i have do this job ASAP.

thanks

Vishal

“Lalit S. Rana” wrote:
Hi,
My file system filter driver needs maintainence of a big linked list,
which is used in various dispatch routines, (like IRP_MJ_WRITE,
IRP_MJ_CREATE etc.)
Now the problem is that I need to access it on dispatch routines, which
may be above the DISPATCH_LEVEL giving all sorts of errors.
What is the most appropriate way of handling it. I have heard making
asynchronous will help, but how we do that.
I have to use the linked list in the dispatch routine only.
Thanks
Lalit


You are currently subscribed to ntfsd as: xxxxx@yahoo.co.in
To unsubscribe send a blank email to xxxxx@lists.osr.com
SMS using the Yahoo! Messenger; Download latest version.

Dispatch routines for filesystems will not be called at DISPATCH_LEVEL.
However, if you’re filtering requests for page files, you cannot touch
pageable memory at that time even though the IRQL is < DISPATCH_LEVEL
(check for SL_OPEN_PAGING_FILE in the create and remember the file
object). Also, remember that any IRP completion routine can be called at
DISPATCH_LEVEL. Plus, it is absolutely illegal to lower the IRQL if you
did not raise the IRQL yourself.

  • Nick Ryan

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Lalit S. Rana
Sent: Friday, June 20, 2003 10:46 AM
To: File Systems Developers
Subject: [ntfsd] Re: Insufficient NonPaged Pool.

Is it possible for a dispatch routine for a file system
filter to run at DISPATCH_LEVEL. In my FSFD I am making a
linked list which is in PagedPool it is giving memory errors
when the link list becomes very big. This error is not there
if I implement the code with NonPagedPool. Why this behaviour
if dispatch routines are entered at PASSIVE_LEVEL. Is there
any method to lower the IRQL to get to the lower levels. How
can I handle the situation. I don’t want to allocate the
NonPagedPool. Thanks Lalit. “David J. Craig”
wrote in message news:xxxxx@ntfsd…
> >
> > Dispatch routines for file system filters are usually entered at
> > PASSIVE_LEVEL. Are you confusing DISPATCH_LEVEL & dispatch
> routines?
> They
> > are not related.
> >
> > “Lalit S. Rana” wrote in message
> > news:xxxxx@ntfsd…
> > >
> > > Hi,
> > > My file system filter driver needs maintainence of a big linked
> > > list, which is used in various dispatch routines, (like
> > > IRP_MJ_WRITE, IRP_MJ_CREATE etc.) Now the problem is that
> I need to
> > > access it on dispatch routines, which may be above the
> > > DISPATCH_LEVEL giving all sorts of errors. What is the most
> > > appropriate way of handling it. I have heard making asynchronous
> > > will help, but how we do that. I have to use the linked
> list in the
> > > dispatch routine only. Thanks
> > > Lalit
> > >
> > >
> >
> >
> >
> >
>
>
>
> —
> You are currently subscribed to ntfsd as: xxxxx@nryan.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>