winnt-dont-display-ibm-legal-message-20040326
[openafs.git] / src / WINNT / afsd / lock.txt
1 Copyright 2000, International Business Machines Corporation and others.
2 All Rights Reserved.
3
4 This software has been released under the terms of the IBM Public
5 License.  For details, see the LICENSE file in the top-level source
6 directory or online at http://www.openafs.org/dl/license10.html
7
8 The locking/waiting hierarchy here is this:
9
10  - lock scp's bufCreateLock
11
12  - resv multiple simul. buffers reservation
13  - lock buffer I/O flags
14  - lock buffer's mutex
15
16  - smb_fid_t mutex
17
18  - scache flags (storing, fetching, etc); if set for more than one
19         vnode in a volume, must be set in vnode order (see cm_Rename).
20
21  - scache mutex
22
23  - lock tran_globalLock
24  - lock buf_globalLock
25
26  - userp->mx
27
28  - lock cm_scacheLock
29
30  - volp->mx
31
32  - cm_connLock  (locked before cm_userLock in cm_GCConnections)
33  - cm_cellLock
34  - cm_serverLock (locked after cm_cellLock in cm_IoctlGetCell)
35  - other global locks
36  - cm_aclLock (locked before cm_userLock throughout cm_aclent.c)
37  - cm_userLock