1
2
3
4
5
6
7 dcl (wait_ctl_hdr_len init (32),
8 wait_ctl_entry_len init (32),
9 wait_ctl_version init (1)) fixed bin int static options (constant);
10
11 dcl wait_ctl_ptr ptr int static;
12
13 dcl 1 wait_ctl aligned based (wait_ctl_ptr),
14 2 hdr like control_hdr,
15 2 linked_lists,
16 3 used,
17 4 count fixed bin,
18 (4 findex,
19 4 bindex) fixed bin (18),
20 3 free,
21 4 count fixed bin,
22 (4 findex,
23 4 bindex) fixed bin (18),
24 2 mp_info,
25 3 mp_lockword bit (36) aligned,
26 3 mp_current_size fixed bin,
27 3 mp_active_count fixed bin,
28 3 mp_entries (10) like wait_ctl_mp_entry,
29 2 entries (wait_ctl.current_size) like wait_ctl_entry;
30
31 dcl wait_ctl_eindex fixed bin;
32
33 dcl wait_ctl_eptr ptr;
34
35 dcl 1 wait_ctl_entry aligned based (wait_ctl_eptr),
36 2 linked_list_indexes,
37 (3 findex,
38 3 bindex) fixed bin (18),
39 2 lockword bit (36) aligned,
40 2 entry_status fixed bin,
41 2 rcv_process_id bit (36),
42 2 rcv_tree_path,
43 3 level_names (4) char (12),
44 2 abs_tree_path,
45 3 level_names (4) char (12),
46 2 queue_ctl_eindex fixed bin,
47 2 ev_wait_chn fixed bin (71),
48 2 ev_message fixed bin (71),
49 2 queue_name char (32),
50 2 tree_ctl_eindex fixed bin;
51
52 dcl wait_ctl_mp_eindex fixed bin;
53
54 dcl wait_ctl_mp_eptr ptr;
55
56 dcl 1 wait_ctl_mp_entry aligned based (wait_ctl_mp_eptr),
57 2 process_id bit (36),
58 2 flags,
59 (3 available_sw bit (1),
60 3 filler bit (35)) unaligned,
61 2 ev_wait_chn fixed bin (71),
62 2 ev_message fixed bin (71),
63 2 tree_ctl_eindex fixed bin;
64
65