1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 dcl fast_lock_ptr ptr;
19 dcl fast_lock_block_ptr ptr;
20 dcl fast_lock_wakeup_block_ptr ptr;
21 dcl fast_lock_data_ptr ptr;
22
23 dcl FAST_LOCK_DATA_VERSION_1 char (8) aligned init ("fastlk 1") int static options (constant);
24
25 dcl 1 fast_lock aligned based (fast_lock_ptr),
26
27 2 lock_word bit (36) aligned,
28 2 notify_sw bit (1) unal,
29 2 pad bit (17) unal,
30 2 offset bit (18) unal;
31
32
33 dcl 1 fast_lock_block aligned based (fast_lock_block_ptr),
34
35 2 uid bit (36) aligned,
36 2 offset bit (18) unal,
37 2 pad bit (18) unal,
38 2 list_head bit (18) unal,
39 2 mbz bit (18) unal,
40 2 pad1 bit (36) aligned;
41
42
43 dcl 1 fast_lock_wakeup_block aligned based (fast_lock_wakeup_block_ptr),
44
45 2 event_channel fixed bin (71),
46 2 processid bit (36) aligned,
47 2 message char (4);
48
49 dcl 1 fast_lock_data aligned based (fast_lock_data_ptr),
50 2 version char (8),
51 2 size fixed bin,
52 2 n_list_entries fixed bin,
53 2 free_list_head aligned like lock_list_head,
54 2 list fixed bin (71) aligned;
55
56