1 /* BEGIN INCLUDE FILE ... syserr_log_dcls.incl.pl1 ... 84-08-17 ... W. Olin Sibert */
 2 /* Modified 1984-12-10, BIM: changed to a fast lock, added error count. */
 3 
 4 /* The syserr_log_data segment, made reverse-deciduous in >sl1, overlays the
 5    first page of the LOG partition, and contains control information about
 6    the other syserr_log segments. */
 7 
 8 declare   syserr_log_data$    fixed bin external static;
 9 declare   syserr_log_data_ptr pointer;
10 
11 declare 1 syserr_log_data     aligned based (syserr_log_data_ptr),
12           2 version           char (8) unaligned,           /* SYSERR_LOG_DATA_V1 */
13           2 old_init_word     char (4) unaligned,           /* Overlays slog.head.init_word ("INIT") */
14           2 pad003            bit (1) aligned,
15 
16           2 live_log          fixed bin,                    /* Identifier of live log (#1 or #2) */
17           2 pad001            bit (1) aligned,
18           2 error_count       fixed bin (35),               /* errors copying the log */
19           2 swap_time         fixed bin (71),               /* Time of last log swap; zero if other_log_empty */
20 
21           2 messages_copied   fixed bin (35),               /* A meter */
22           2 messages_lost     fixed bin (35),               /* Messages not copied because logs full */
23 
24           2 log_start (2)     fixed bin,                    /* Offset of each log segment in the partition */
25           2 log_size (2)      fixed bin,                    /* Number of pages in each log segment */
26 
27           2 per_bootload,                                   /* Ramaining structure is reinitialized at each boot */
28             3 log_ptr (2) pointer,                          /* Pointer to the three segments in the partition */
29 
30             3 log_name (2) char (32) unaligned,             /* Current names of log segments (by syserr_seg_manager) */
31             3 log_dir char (168) unaligned,                 /* Parent directory */
32 
33             3 lock            aligned,
34               4 pid           bit (36) aligned,             /* Standard format wait lock, used when updating log */
35               4 event_id      fixed bin (35),
36               4 notify_requested
37                               bit (1) unaligned,
38               4 pad           bit (35) unaligned,
39             3 take_a_fault    bit (1) aligned,              /* Forces a fault if on, for testing fault recovery */
40             3 test_mode       bit (1) aligned,              /* Running in outer-ring test mode */
41 
42             3 copy_disabled   bit (1) aligned,              /* No more messages being copied into live log */
43             3 drop_severity_5 bit (1) aligned,              /* No more severity 5 messages (log is 3/4 full) */
44             3 wakeup_on_printable bit (1) aligned,          /* Console recovery: send wakeup for printable message */
45 
46             3 copy_threshold  fixed bin (18),               /* How often to copy to outer ring log segments */
47             3 copy_channel    fixed bin (71),
48             3 copy_process_id bit (36) aligned,
49 
50           2 pad fixed bin (71);                             /* Anything goes, as long as it's under a page */
51 
52 declare   SYSERR_LOG_DATA_V1 char (8) internal static options (constant) init ("syserr01");
53 
54 /* END INCLUDE FILE ... syserr_log_dcls.incl.p1l */