ERESOURCE and KeEnterCriticalRegion

Hi,

Why does ERESOURCE requires KeEnterCriticalRegion?

Is there a way to implement a resource that does not require to block APC?

10x


Tired of spam? Get advanced junk mail protection with MSN 8.
http://join.msn.com/?page=features/junkmail

KeEnterCriticalRegion disables delivery of normal kernel-mode APCs. The
thread suspend functionality in Windows is implemented via delivery of
normal kernel-mode APCs. By requiring that you call
KeEnterCriticalRegion before taking an ERESOURCE, you ensure that your
thread is not randomly suspended while you are holding that lock.

  • Nick Ryan

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of dan Glazer
Sent: Tuesday, July 01, 2003 11:30 PM
To: File Systems Developers
Subject: [ntfsd] ERESOURCE and KeEnterCriticalRegion

Hi,

Why does ERESOURCE requires KeEnterCriticalRegion?

Is there a way to implement a resource that does not require
to block APC?

10x


Tired of spam? Get advanced junk mail protection with MSN 8.
http://join.msn.com/?page=features/junkmail


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

> Why does ERESOURCE requires KeEnterCriticalRegion?

Because APC - if fired with the lock held - can cause a deadlock by
acquiring the same lock again.

Max