Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

29 lines
906 B

  1. 14 April 1997
  2. 19 May 1997
  3. Locking Rules for Po interface code
  4. 1. The Dope structure and all elements in it
  5. or referred to by it, including idle, notify,
  6. and channel structures, are protected by a
  7. global lock named PopDopeGlobalLock.
  8. use PopLockDopeGlobal and PopUnlockDopeGlobal.
  9. EXCEPTION: PoSetDeviceBusy is allowed to wack
  10. directly on the IdleCount variable.
  11. 2. The Irp serial list is protected by the
  12. PopIrpSerialLock, accessed via
  13. PopLockIrpSerialList and PopReleaseIrpSerialList,
  14. note that the later does NOT lower IRQL.
  15. PowerFlags (sys state, dev state, pend, active) are
  16. also protected by the irpserial list lock.
  17. 3. Notify network protected by eresource named PopNotifyLock,
  18. dope/notify data protected by the DopeGlobalLock.
  19. 4. Lock order:
  20. PopNotifyLock, DopeGlobalLock, IrpSerialLock.