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 */