AW: Unloading File system filter driver

Kedar,

may be I’m not up-to-date, but one statement I can remember from one of Tony
Mason’s classes was:

You can technically unload the filter, but it is NOT safe.

Lars

-----Ursprüngliche Nachricht-----
Von: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]Im Auftrag von kedar n
Gesendet: Donnerstag, 18. März 2004 06:26
An: Windows File Systems Devs Interest List
Betreff: [ntfsd] Unloading File system filter driver

Hi All,

Is it possible for an File system filter driver to unload itself from the
file system stack.

Thanks,
Kedar.


Xerox Multifunction devices that print,copy,scan and fax.
http://go.msnserver.com/IN/44797.asp Get affordable printing solutions that
fit your needs .


Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17

You are currently subscribed to ntfsd as: xxxxx@t-online.de
To unsubscribe send a blank email to xxxxx@lists.osr.com

For testing/development, sure you can unload - when it crashes you just reboot.

However, I can think of at least four reasons why this cannot work safely:

(1) Work queue items. You don’t know what the state of these are, they can’t be removed safely. Actually, the same thing applies to timers, but most filters don’t use them.

(2) Other filters. Once another filter loads on top of you an unload by you will leave the system in a highly unstable state.

(3) SRV. This delightful part of the OS saves copies of your fast I/O entry points in a private (per file) data structure. So even if you unload, it will send future requests to your former entry points.

(4) In-progress I/O operations. This is something people usually rectify by keeping a count, but it is another issue.

What we’ve done for years is split our filter drivers into pieces: one piece that does the filtering and the other piece (a “buddy driver”) that implements the functionality. You can load/unload the buddy driver so long as you build the filter piece to handle the various situations where the buddy driver is present, absent, loading, and unloading.

Filter Manager operates similarly to this model, and should allow you to deregister/unload.

Regards,

Tony

Tony Mason
Consulting Partner
OSR Open Systems Resources, Inc.
http://www.osr.com

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of kedar n
Sent: Thursday, March 18, 2004 12:26 AM
To: ntfsd redirect
Subject: [ntfsd] Unloading File system filter driver

Hi All,

Is it possible for an File system filter driver to unload itself from the
file system stack.

Thanks,
Kedar.


Xerox Multifunction devices?that print,copy,scan and fax.
http://go.msnserver.com/IN/44797.asp Get affordable printing solutions that
fit your needs .


Questions? First check the IFS FAQ at https://www.osronline.com/article.cfm?id=17

You are currently subscribed to ntfsd as: xxxxx@osr.com
To unsubscribe send a blank email to xxxxx@lists.osr.com