COMPILATION LISTING OF SEGMENT hardware_fault Compiled by: Multics PL/I Compiler, Release 32f, of October 9, 1989 Compiled at: Bull HN, Phoenix AZ, System-M Compiled on: 11/11/89 1001.4 mst Sat Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Bull Inc., 1987 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1984 * 6* * * 7* * Copyright (c) 1972 by Massachusetts Institute of * 8* * Technology and Honeywell Information Systems, Inc. * 9* * * 10* *********************************************************** */ 11 12 /* format: style4 */ 13 14 /* HARDWARE_FAULT - Handle Faults Caused by Hardware Malfeasance. 15* Modified from the program "parity_fault" 8/12/76 by Noel I. Morris 16* Modified 9/10/79 by J. A. Bush for cache parity diagnostic 17* Modified 29/08/80 by J. A. Bush for DPS8/70M CPU 18* Modified 84-05-04 by Keith Loepere to work during initialization. 19* Modified 85-02-25 by Keith Loepere to use ring zero get_pathname_. 20* Modified 85-02-25 by EJ Sharpe to use syserr_fault_msg.incl.pl1 21**/ 22 23 24 /* This module is called by the FIM to handle several types of faults. 25* These are as follows: 26* 27* parity 28* op-not-complete 29* shutdown 30* startup 31* 32* Each of these faults causes certain information to be logged 33* in the syserr log. 34* 35* USAGE: 36* call hardware_fault (mcptr); 37* 38* WHERE: 39* mcptr = pointer to stored machine conditions 40* 41**/ 42 43 hardware_fault: proc (mcp); 44 45 dcl fault_name char (32) aligned, /* name of fault */ 46 psrptr ptr, /* pointer to faulting procedure */ 47 psrname char (168) var, /* full pathname of faulting procedure */ 48 fault_index fixed bin (17), /* SCT index of fault */ 49 (base, top, i, j) fixed bin (18), 50 first_word fixed bin (35) aligned based, 51 code fixed bin (35); /* error code */ 52 53 dcl 1 mmdam_struct aligned like mmdam_msg; 54 55 dcl (addr, baseptr, bin, segno, substr, unspec) builtin; 56 57 dcl pds$process_group_id char (32) aligned ext; 58 dcl sys_info$initialization_state fixed bin ext; 59 60 dcl syserr$binary entry options (variable), 61 pmut$check_parity_for_use entry (fixed bin (18), fixed bin (35)), 62 pc_abs$remove_core entry (fixed bin (18), fixed bin, fixed bin (35)), 63 cache_tester entry (ptr), 64 get_pathname_ entry (fixed bin (17), char (*) var, fixed bin (35)); 65 66 dcl sys_info$page_size fixed bin (18) external static; 67 dcl sst$cmp pointer external; 68 69 70 fault_index = bin (mc.fcode, 17); /* Extract fault index */ 71 72 if fault_index = parity_sct_index then do; /* If parity fault ... */ 73 fregp = addr (mc.fault_reg); /* Look at the fault register. */ 74 if fault_reg.cpar_dir then /* Check for cache parity. */ 75 fault_name = "cache dir parity"; 76 else if fault_reg.cpar_str then 77 fault_name = "cache store parity"; 78 else if fault_reg.cpar_ia then 79 fault_name = "cache store cycle illegal action"; 80 else if fault_reg.cpar_blk then 81 fault_name = "cache load parity"; 82 else /* If not cache parity ... */ 83 fault_name = "parity"; 84 end; 85 86 else if fault_index = startup_sct_index then /* If startup fault ... */ 87 fault_name = "startup"; 88 89 else if fault_index = shutdown_sct_index then /* If shutdown fault ... */ 90 fault_name = "shutdown"; 91 92 else if fault_index = op_not_complete_sct_index then /* If op_not_complete fault ... */ 93 fault_name = "op_not_complete"; 94 95 else if fault_index = other_command_sct_index then/* If command fault ... */ 96 fault_name = "command"; 97 98 scup = addr (mc.scu); /* Get pointer to SCU data. */ 99 100 psrptr = baseptr (bin (scu.ppr.psr, 15)); /* Get pointer to faulting procedure. */ 101 if sys_info$initialization_state < 2 then psrname = ""; 102 else do; 103 call get_pathname_ (segno (psrptr), psrname, code); /* Attempt to get path and name of faulting proc. */ 104 if code ^= 0 then psrname = ""; 105 106 end; 107 108 call syserr$binary (ANNOUNCE, mcp, SB_hw_fault, SBL_hw_fault, "hardware_fault: ^a fault on CPU ^a by ^a^a.", 109 fault_name, substr ("ABCDEFGH", bin (scu.cpu_no, 3) + 1, 1), 110 pds$process_group_id, psrname); 111 112 mc.errcode = 1; /* Set an error code for the FIM. */ 113 114 /* if a cache parity occurred, test cache and attempt diagnosis before turning */ 115 /* cache back on. the routine cache_tester does all the work */ 116 117 if fault_index = parity_sct_index & (fault_reg.cpar_dir | fault_reg.cpar_str) then 118 call cache_tester (mcp); /* go check out cache */ 119 120 /* Special handling for memory parity fault. SCU data imprecise on where error is: so we scan all memory */ 121 /* Check all parity cases of note */ 122 123 else if fault_index = parity_sct_index then do; 124 do i = 0 to 7; 125 base = scs$controller_data (i).base; 126 top = base + scs$controller_data (i).size; 127 if scs$controller_data (i).online then do; 128 do j = base to top - 1; 129 cmep = addr (sst$cmp -> cma (j)); 130 if unspec (cmep -> first_word) ^= (36)"1"b then do; /* skip deleted */ 131 if cmep -> first_word ^= 0 | cme.ptwp then do; /* pageable? */ 132 call pmut$check_parity_for_use (j, code); 133 if code ^= 0 then do; 134 mmdam_struct.addr = j * sys_info$page_size; 135 mmdam_struct.ctrltag = substr ("ABCDEFGH", i + 1, 1); 136 call syserr$binary (BEEP, addr (mmdam_struct), SB_mmdam, SBL_mmdam, 137 "hardware_fault: Deleting frame at ^o from SCU ^a due to parity errors", 138 mmdam_struct.addr, mmdam_struct.ctrltag); 139 call pc_abs$remove_core (j, 1, code); 140 end; 141 end; 142 end; 143 end; 144 end; 145 end; 146 end; 147 148 return; /* Return to caller. */ 149 150 /* format: off */ 151 /* BEGIN INCLUDE FILE syserr_constants.incl.pl1 ... 11/11/80 W. Olin Sibert */ 1 2 /* 85-02-12, EJ Sharpe - Added sorting class constants, removed AIM_MESSAGE, added new action code names. */ 1 3 /* 85-04-24, G. Palter - Renamed SYSERR_UNUSED_10 to SYSERR_RING1_ERROR to reflect its actual use. */ 1 4 1 5 /* This include file has an ALM version. Keep 'em in sync! */ 1 6 1 7 dcl ( 1 8 1 9 /* The following constants define the message action codes. This indicates 1 10*how a message is to be handled. */ 1 11 1 12 SYSERR_CRASH_SYSTEM init (1), 1 13 CRASH init (1), /* Crash the system, and bleat plaintively. */ 1 14 1 15 SYSERR_TERMINATE_PROCESS init (2), 1 16 TERMINATE_PROCESS init (2), /* Terminate the process, print the message, and beep. */ 1 17 1 18 SYSERR_PRINT_WITH_ALARM init (3), 1 19 BEEP init (3), /* Beep and print the message on the console. */ 1 20 1 21 SYSERR_PRINT_ON_CONSOLE init (0), 1 22 ANNOUNCE init (0), /* Just print the message on the console. */ 1 23 1 24 SYSERR_LOG_OR_PRINT init (4), 1 25 LOG init (4), /* Log the message, or print it if it can't be logged */ 1 26 1 27 SYSERR_LOG_OR_DISCARD init (5), 1 28 JUST_LOG init (5), /* Just try to log the message, and discard it if it can't be */ 1 29 1 30 1 31 /* The following constants are added to the normal severities to indicate 1 32*different sorting classes of messages. */ 1 33 1 34 SYSERR_SYSTEM_ERROR init (00), /* indicates a standard level system error */ 1 35 SYSERR_RING1_ERROR init (10), /* indicates an error detected in ring 1 (mseg_, RCP) */ 1 36 SYSERR_COVERT_CHANNEL init (20), /* indicates covert channel audit trail message */ 1 37 SYSERR_UNSUCCESSFUL_ACCESS init (30), /* indicates access denial audit trail message */ 1 38 SYSERR_SUCCESSFUL_ACCESS init (40) /* indicates access grant audit trail message */ 1 39 ) fixed bin internal static options (constant); 1 40 1 41 /* END INCLUDE FILE syserr_constants.incl.pl1 */ 151 152 /* BEGIN INCLUDE FILE .. syserr_binary_def.incl.pl1 */ 2 2 2 3 /* This include file has an ALM version, keep 'em in sync. */ 2 4 2 5 /* format: off */ 2 6 2 7 /* Modified January 1984 by Paul Farley to add an array of entry values 2 8* to be examined by display_cpu_error. */ 2 9 /* Modified October 1984 by EJ Sharpe to include SB_audit_message */ 2 10 /* Modified January 1985 by EJ Sharpe for SB_char_data_classes */ 2 11 /* Modified 1985-01-25, BIM: added ring alarm audit support. */ 2 12 /* Modified 1985-02-20, EJ Sharpe: added SB_ibm3270_mde, syserr_binary_(seg vol)damage_class, 2 13* also changed some codes to "SB_unused_NN" - see line comments */ 2 14 2 15 /* In the future, these will be the only constants needed in this include 2 16*file. They are the binary data class strings for messages in the new format 2 17*syserr logs. The names are all of the form SB_ZZZZZZZ_data_class where 2 18*ZZZZZZZ is the value of the data class string. Message expanders are named 2 19*expand_ZZZZZZZ_msg_ and are referenced by the log perusal tools. */ 2 20 2 21 dcl ( /* include file name */ 2 22 SB_io_status_data_class init ("io_status"), /* io_syserr_msg */ 2 23 SB_hwfault_data_class init ("hwfault"), /* syserr_fault_msg */ 2 24 SB_mos_data_class init ("mos"), /* scr */ 2 25 SB_segdamage_data_class init ("segdamage"), /* segdamage_msg */ 2 26 SB_voldamage_data_class init ("voldamage"), /* segdamage_msg (first two words) */ 2 27 SB_mdc_del_uidpath_data_class init ("mdc_del_uidpath"), /* none - 16 word UID path */ 2 28 SB_mmdam_data_class init ("mmdam"), /* syserr_mmdam_msg */ 2 29 SB_mpc_poll_data_class init ("mpc_poll"), /* poll_mpc_data */ 2 30 SB_fnp_poll_data_class init ("fnp_poll"), /* poll_fnp_data */ 2 31 SB_config_deck_data_class init ("config_deck"), /* config_deck */ 2 32 SB_vtoce_data_class init ("vtoce"), /* vtoce */ 2 33 SB_access_audit_data_class init ("access_audit"), /* access_audit_bin_header */ 2 34 SB_ibm3270_mde_data_class init ("ibm3270_mde") /* ibm3270_mpx_data */ 2 35 ) static internal char (16) varying options (constant); 2 36 2 37 2 38 /************************ 2 39*Once the syserr$binary is replaced with something that takes real data classes 2 40*and all system modules and tools are upgraded to use the new interface, the 2 41*rest of this include file may be discarded. 2 42*************************/ 2 43 2 44 /* The limit of 36 is arbitrary- there is no reason that it can not be 2 45* extended at any time. */ 2 46 2 47 dcl ( 2 48 SB_disk_err init (1), SBL_disk_err init (5), 2 49 SB_hw_fault init (2), SBL_hw_fault init (176), 2 50 SB_io_err init (3), SBL_io_err init (5), 2 51 SB_unused_4 init (4), SBL_unused_4 init (1), /* was "mos_poll" (mos poll time) */ 2 52 SB_mos_err init (5), SBL_mos_err init (2), /* mos memory error data */ 2 53 SB_unused_6 init (6), SBL_unused_6 init (1), /* was "bulk_status" (bulk dcb status) */ 2 54 SB_unused_7 init (7), SBL_unused_7 init (1), /* was "bulk_csb" (bulk csb status) */ 2 55 SB_unused_8 init (8), SBL_unused_8 init (3), /* was "free_st_1" */ 2 56 SB_unused_9 init (9), SBL_unused_9 init (2), /* was "free_st_2" */ 2 57 SB_unused_10 init (10), SBL_unused_10 init (21), /* was "unpr_add" */ 2 58 SB_zerpag init (11), SBL_zerpag init (20), 2 59 SB_unused_12 init (12), SBL_unused_12 init (20), /* was "unpr_add" */ 2 60 SB_vtoc_salv_dam init (13), SBL_vtoc_salv_dam init (20), 2 61 SB_unused_14 init (14), SBL_unused_14 init (20), /* was "page_rw_err" */ 2 62 SB_unused_15 init (15), SBL_unused_15 init (3), /* was "ruad" */ 2 63 SB_random_segdamage init (16), SBL_random_segdamage init (20), 2 64 SB_read_nc init (17), SBL_read_nc init (2), 2 65 SB_unused_18 init (18), SBL_unused_18 init (2), /* was "vtoc_err" */ 2 66 SB_mdc_del_uidpath init (19), SBL_mdc_del_uidpath init (16), 2 67 SB_ocdcm_err init (20), SBL_ocdcm_err init (5), 2 68 SB_mmdam init (21), SBL_mmdam init (2), 2 69 SB_verify_lock init (22), SBL_verify_lock init (176), 2 70 SB_io_err_detail init (23), SBL_io_err_detail init (11), 2 71 SB_mpc_poll init (24), SBL_mpc_poll init (256) /* max */, 2 72 SB_fnp_poll init (25), SBL_fnp_poll init (256) /* max */, 2 73 SB_config_deck init (26), SBL_config_deck init (256) /* 16 cards at 16 words */, 2 74 SB_vtoce init (27), SBL_vtoce init (192), /* 1 VTOCE */ 2 75 SB_access_audit init (28), SBL_access_audit init (256), /* max */ 2 76 SB_ibm3270_mde init (35), SBL_ibm3270_mde init (256), /* max */ 2 77 SB_end_of_table init (36), SBL_end_of_table init (1) 2 78 ) internal static options (constant) fixed bin; 2 79 2 80 2 81 /* The following array is a mapping of the old syserr$binary codes into the 2 82*new data classes for MR11. It is primarily used by syserr_copy to translate 2 83*the binary data codes stored in the wired syserr log (see above) into the data 2 84*classes needed by the ring-0 paged syserr log which is a new format log. It 2 85*is also used by syserr_log_util_ to translate the data classes back into the 2 86*corresponding binary code (for tools not yet upgraded to deal with the new 2 87*format log messages). */ 2 88 2 89 dcl SB_char_data_classes (36) char (16) varying internal static options (constant) 2 90 init ( "io_status", /* 1 */ 2 91 "hwfault", /* 2 */ 2 92 "io_status", /* 3 */ 2 93 "unused_4", /* 4 */ 2 94 "mos", /* 5 */ 2 95 2 96 "unused_6", /* 6 */ 2 97 "unused_7", /* 7 */ 2 98 "unused_8", /* 8 */ 2 99 "unused_9", /* 9 */ 2 100 "unused_10", /* 10 */ 2 101 2 102 "segdamage", /* 11 */ 2 103 "unused_12", /* 12 */ 2 104 "segdamage", /* 13 */ 2 105 "unused_14", /* 14 */ 2 106 "unused_15", /* 15 */ 2 107 2 108 "segdamage", /* 16 */ 2 109 "voldamage", /* 17 */ 2 110 "unused_18", /* 18 */ 2 111 "mdc_del_uidpath", /* 19 */ 2 112 "io_status", /* 20 */ 2 113 2 114 "mmdam", /* 21 */ 2 115 "hwfault", /* 22 */ 2 116 "io_status", /* 23 */ 2 117 "mpc_poll", /* 24 */ 2 118 "fnp_poll", /* 25 */ 2 119 2 120 "config_deck", /* 26 */ 2 121 "vtoce", /* 27 */ 2 122 "access_audit", /* 28 */ 2 123 "unused_29", /* 29 */ 2 124 "unused_30", /* 30 */ 2 125 "unused_31", /* 31 */ 2 126 "unused_32", /* 32 */ 2 127 "unused_33", /* 33 */ 2 128 "unused_34", /* 34 */ 2 129 "ibm3270_mde", /* 35 */ 2 130 "unused_36" /* 36 */ 2 131 ); 2 132 2 133 2 134 /* format: on */ 2 135 2 136 /* These constants are used by various tools which analyze syserr messages and 2 137*still call the old interface "syserr_log_util_". */ 2 138 2 139 dcl syserr_binary_mos_mask init ("060000000000"b3) bit (36) static options (constant); 2 140 dcl syserr_binary_seg_damage_mask init ("000374000000"b3) bit (36) static options (constant); 2 141 dcl syserr_binary_vol_damage_mask init ("003413000000"b3) bit (36) static options (constant); 2 142 dcl syserr_binary_address_damage_mask init ("002010000000"b3) bit (36) static options (constant); 2 143 2 144 dcl display_cpu_error_binary_defs (2) init ( 2 145 2, /** SB_hw_fault */ 2 146 22 /** SB_verify_lock */ 2 147 ) internal static options (constant) fixed bin; 2 148 2 149 /* END INCLUDE FILE syserr_binary_def.incl.pl1 */ 152 153 /* BEGIN INCLUDE FILE scs.incl.pl1 ... March 1983 */ 3 2 /* format: style4 */ 3 3 3 4 /* Information about system controllers */ 3 5 3 6 dcl 1 scs$controller_data (0:7) aligned ext, /* per-controller info */ 3 7 2 size fixed bin (17) unaligned, /* size (in 1024 word blocks) of this controller */ 3 8 2 base fixed bin (17) unaligned, /* abs address (0 mod 1024) for base of this controller */ 3 9 2 eima_data (4) unaligned, /* EIMA information for this controller */ 3 10 3 mask_available bit (1) unaligned, /* ON if corresponding mask exists */ 3 11 3 mask_assigned bit (1) unaligned, /* ON if mask assigned to a port */ 3 12 3 mbz bit (3) unaligned, 3 13 3 mask_assignment fixed bin (3) unaligned, /* port to which mask is assigned */ 3 14 2 info aligned, 3 15 3 online bit (1) unaligned, /* ON if controller is online */ 3 16 3 offline bit (1) unaligned, /* ON if controller is offline but can be added */ 3 17 3 store_a_online bit (1) unaligned, /* ON if store A is online */ 3 18 3 store_a1_online bit (1) unaligned, /* ON if store A1 is online */ 3 19 3 store_b_online bit (1) unaligned, /* ON if store B is online */ 3 20 3 store_b1_online bit (1) unaligned, /* ON if store B1 is online */ 3 21 3 store_b_is_lower bit (1) unaligned, /* ON if store B is lower */ 3 22 3 ext_interlaced bit (1) unaligned, /* ON if this SCU is interlaced with other SCU */ 3 23 3 int_interlaced bit (1) unaligned, /* ON if this SCU is internally interlaced */ 3 24 3 four_word bit (1) unaligned, /* ON if external interlace is 4-word */ 3 25 3 cyclic_priority (7) bit (1) unaligned, /* Cyclic priority for adjacent ports */ 3 26 3 type bit (4) unaligned, /* Model number for this controller */ 3 27 3 abs_wired bit (1) unaligned, /* ON if controller can have abs_wired pages */ 3 28 3 program bit (1) unaligned, /* PROGRAM/MANUAL switch setting */ 3 29 3 mbz bit (13) unaligned, 3 30 2 lower_store_size fixed bin (17) unaligned, /* size (in 1024 word blocks) of lower store */ 3 31 2 upper_store_size fixed bin (17) unaligned; /* size (in 1024 word blocks) of upper store */ 3 32 3 33 /* Information about CPUs */ 3 34 3 35 dcl 1 scs$processor_data (0:7) aligned ext, /* information about CPUs in the system */ 3 36 ( 3 37 2 online bit (1), /* "1"b if CPU is online */ 3 38 2 offline bit (1), /* "1"b if CPU is offline but can be added */ 3 39 2 release_mask bit (1), /* "1"b is this CPU is to give up its mask */ 3 40 2 accept_mask bit (1), /* "1"b if this CPU is to grap mask in idle loop */ 3 41 2 delete_cpu bit (1), /* "1"b if this CPU is to delete itself */ 3 42 2 interrupt_cpu bit (1), /* "1"b if this CPU takes hardware interrupts */ 3 43 2 halted_cpu bit (1), /* "1"b if this CPU has stopped itself (going to BOS) */ 3 44 2 cpu_type fixed bin (2) unsigned, /* 0 => DPS or L68, 1 => DPS8 */ 3 45 2 mbz1 bit (6), 3 46 2 cache_size fixed bin (3) unsigned, /* 0 = No cache; 1 = L68 2K cache; 3 47* 2 = DPS8 8K cache; 3 = DPS8 VS&SC 8K cache; 3 48* 4 = DPS8 VS&SC 16K cache; 5 = DPS8 VS&SC 32K cache 3 49* 7 = ignore cache size (set by ISOLTS reconfig) */ 3 50 2 mbz2 bit (12), 3 51 2 expanded_port bit (1), /* "1"b = on expanded port */ 3 52 2 expander_port fixed bin (2) unsigned, /* The actual expander port */ 3 53 2 controller_port fixed bin (3) unsigned 3 54 ) unaligned; /* Port on controller */ 3 55 3 56 dcl 1 scs$port_data (0:7) aligned external static, /* Info about what is connected to each SCU port */ 3 57 2 assigned fixed bin (4) unsigned unaligned, /* Type of device on this port */ 3 58 2 expander_port bit (1) unaligned, /* "1"b => this port has a port expander */ 3 59 2 expanded_cpu (0:3) bit (1) unaligned, /* "1"b => this expander port has a CPU attached */ 3 60 2 iom_number fixed bin (3) unsigned unaligned, /* IOM number of IOM attached to this port */ 3 61 2 cpu_number (0:3) fixed bin (3) unsigned unaligned, /* CPU number of CPU(s) attached to this port */ 3 62 /* cpu_number (0) is only one if expander_port is "0"b */ 3 63 2 pad bit (12) unaligned; 3 64 3 65 dcl 1 scs$cow (0:7) aligned external, /* Actual connect words */ 3 66 2 pad bit (36) aligned, /* Expander COW's must be odd-word */ 3 67 2 cow, 3 68 3 sub_mask bit (8) unaligned, /* Expander sub-port mask */ 3 69 3 mbz1 bit (13) unaligned, 3 70 3 expander_command bit (3) unaligned, /* Expander command. */ 3 71 3 mbz2 bit (2) unaligned, 3 72 3 expanded_port bit (1) unaligned, /* "1"b = on expanded port */ 3 73 3 expander_port fixed bin (3) unsigned unaligned, /* Port on expander for cioc */ 3 74 3 mbz3 bit (3) unaligned, 3 75 3 controller_port fixed bin (3) unaligned unsigned;/* controller port for this CPU */ 3 76 3 77 dcl 1 scs$cow_ptrs (0:7) external aligned, /* Pointers to COW's */ 3 78 2 rel_cow_ptr bit (18) unal, /* Relative pointer to COW */ 3 79 2 pad bit (12) unal, 3 80 2 tag bit (6) unal; /* Better be zero. */ 3 81 3 82 dcl 1 scs$reconfig_general_cow aligned external, /* Used during reconfig ops. */ 3 83 2 pad bit (36) aligned, 3 84 2 cow, /* Connect operand word, in odd location. */ 3 85 3 sub_mask bit (8) unaligned, /* Expander sub-port mask */ 3 86 3 mbz1 bit (13) unaligned, 3 87 3 expander_command bit (3) unaligned, /* Expander command. */ 3 88 3 mbz2 bit (9) unaligned, 3 89 3 controller_port fixed bin (3) unaligned unsigned;/* controller port for this CPU */ 3 90 3 91 /* MASKS and PATTERNS */ 3 92 3 93 dcl scs$sys_level bit (72) aligned ext; /* mask used while handling I/O interrupts */ 3 94 dcl scs$open_level bit (72) aligned ext; /* mask used during normal operation */ 3 95 dcl scs$processor_start_mask bit (72) aligned ext; /* mask used when starting up a CPU */ 3 96 dcl scs$cpu_test_mask bit (72) aligned ext; /* mask used for ISOLTS CPU testing */ 3 97 dcl scs$number_of_masks fixed bin ext; /* number of masks (starting at sys_level) */ 3 98 dcl scs$processor_start_pattern bit (36) aligned ext; /* SMIC pattern used to send processor start interrupt */ 3 99 dcl scs$cpu_test_pattern bit (36) aligned ext; /* SMIC pattern used for ISOLTS processor testing */ 3 100 3 101 /* CAM and CACHE clear info */ 3 102 3 103 dcl scs$cam_pair fixed bin (71) ext; /* instructions XEDd when CAMing and clearing CACHE */ 3 104 dcl scs$cam_wait bit (8) aligned ext; /* Used when evicting pages from main memory */ 3 105 3 106 /* MASKING INSTRUCTIONS & POINTERS */ 3 107 3 108 dcl scs$set_mask (0:7) bit (36) aligned ext; /* instructions to set mask (STAQ or SMCM) */ 3 109 dcl scs$read_mask (0:7) bit (36) aligned ext; /* instructions to read mask (LDAQ or RMCM) */ 3 110 dcl scs$mask_ptr (0:7) ptr unaligned ext; /* pointers for real or simulated masks */ 3 111 3 112 /* MISCELLANEOUS */ 3 113 3 114 dcl 1 scs$processor_test_data aligned ext, /* info used for cpu testing */ 3 115 ( 3 116 2 active bit (1), /* = "1"b if cpu currently under test */ 3 117 2 scu_state bit (2), /* state of scu being used for testing (see definition below) */ 3 118 2 pad1 bit (4), 3 119 2 req_mem fixed bin (10), /* dedicated memory required to test this cpu */ 3 120 2 cpu_tag fixed bin (5), /* tag of cpu under test */ 3 121 2 scu_tag fixed bin (5), /* tag of scu being used for cpu testing */ 3 122 2 mask_cpu fixed bin (5) 3 123 ) unaligned; /* tag of active cpu that has mask asigned to above scu */ 3 124 3 125 /* scu_state = "00"b => SCU defined by scs$processor_test_data.scu_tag not yet effected */ 3 126 /* scu_state = "01"b => all core removed from SCU, port mask not yet changed */ 3 127 /* scu_state = "10"b => all core removed from SCU, port mask changed */ 3 128 /* scu_state = "11"b => only 64k at base of SCU being used for testing, original port mask restored */ 3 129 3 130 dcl scs$idle_aptep (0:7) ptr unaligned ext; /* pointer to idle process APTE for each processor */ 3 131 3 132 dcl scs$connect_lock bit (36) aligned ext; /* lock for sending connects */ 3 133 dcl scs$reconfig_lock bit (36) aligned ext; /* Lock used during reconfiguration */ 3 134 dcl scs$trouble_flags bit (8) aligned ext; /* checkoff flags for sys_trouble stopping */ 3 135 dcl scs$bos_restart_flags bit (8) aligned ext; /* checkoff flags for restarting after sys_trouble */ 3 136 dcl scs$nprocessors fixed bin ext; /* number of runnung processors */ 3 137 dcl scs$bos_processor_tag fixed bin (3) ext; /* CPU tag of processor running BOS */ 3 138 dcl scs$faults_initialized bit (1) aligned ext; /* ON after faults have been enabled */ 3 139 dcl scs$sys_trouble_pending bit (1) aligned ext; /* sys_trouble event is pending in the system */ 3 140 dcl scs$fast_cam_pending (0:7) bit (36) aligned ext; /* checkoff cells for cam connect */ 3 141 dcl scs$interrupt_controller fixed bin (3) ext; /* port number of low order controller */ 3 142 dcl scs$processor_start_int_no fixed bin (5) ext; /* interrupt cell for starting a processor */ 3 143 dcl scs$processor bit (8) aligned ext; /* bits ON for online CPUs */ 3 144 dcl scs$processor_start_wait bit (8) aligned ext; /* checkoff flags for waiting for new processor */ 3 145 3 146 dcl scs$trouble_dbrs (0:7) fixed bin (71); /* DBR values at system crash time */ 3 147 3 148 dcl scs$port_addressing_word (0:7) bit (3) aligned ext; /* active module port number for each controller */ 3 149 3 150 dcl scs$cfg_data (0:7) fixed bin (71) aligned ext; /* RSCR-CFG data from each controller */ 3 151 3 152 dcl scs$cfg_data_save fixed bin (71) aligned ext; /* RSCR-CFG save area for ISOLTS CPU testing */ 3 153 3 154 dcl scs$expanded_ports bit (1) unaligned dim (0:7) external; 3 155 /* Which ports have expanders */ 3 156 3 157 dcl scs$processor_switch_data (0:4) bit (36) aligned ext; /* raw data from RSW 0 thru 4 */ 3 158 dcl scs$processor_switch_template (0:4) bit (36) aligned ext; /* expected data from RSW 0 thru 4 */ 3 159 dcl scs$processor_switch_compare (0:4) bit (36) aligned ext; /* discrepancies from expected data */ 3 160 dcl scs$processor_switch_mask (0:4) bit (36) aligned ext; /* masks for comparing switch data */ 3 161 3 162 dcl scs$processor_data_switch_value bit (36) aligned ext; /* Correct value for CPU data switches */ 3 163 3 164 dcl scs$controller_config_size (0:7) fixed bin (14) aligned ext; 3 165 /* Controller size on config card */ 3 166 3 167 dcl scs$reconfig_locker_id char (32) aligned ext; /* process group ID of process doing reconfiguration */ 3 168 3 169 dcl scs$scas_page_table (0:31) bit (36) aligned external static; 3 170 /* PTWs for SCAS pages */ 3 171 3 172 dcl scs$cycle_priority_template bit (7) aligned ext; /* template for setting anti-hog switches */ 3 173 dcl scs$set_cycle_switches bit (1) aligned ext; /* flag to set ant-hog switches */ 3 174 3 175 3 176 dcl ( 3 177 IOM_PORT init (1), 3 178 CPU_PORT init (2), 3 179 BULK_PORT init (3) 3 180 ) fixed bin int static options (constant); /* values for scs$port_data.assigned */ 3 181 3 182 3 183 /* END INCLUDE FILE scs.incl.pl1 */ 153 154 /* BEGIN INCLUDE FILE cmp.incl.pl1 --- October 1982 */ 4 2 /* Note: This include file has an ALM counterpart NOT made with cif (for historical reasons). Keep it up to date */ 4 3 4 4 dcl cmep ptr; /* pointer to core map entry */ 4 5 4 6 dcl 1 cme based (cmep) aligned, /* core map entry */ 4 7 2 fp bit (18) unaligned, /* forward pointer to next entry */ 4 8 2 bp bit (18) unaligned, /* backward pointer to previous entry */ 4 9 4 10 2 devadd bit (22) unaligned, /* device address of page in the core block */ 4 11 2 pad5 bit (1) unaligned, 4 12 2 synch_held bit (1) unaligned, /* Page of synchronized seg held in memory */ 4 13 2 io bit (1) unaligned, /* input/output indicator 1=output, 0=input */ 4 14 2 pad2 bit (1) unaligned, 4 15 2 er bit (1) unaligned, /* indicates error in previous IO activity */ 4 16 2 removing bit (1) unaligned, /* core is being removed by reconfiguration */ 4 17 2 abs_w bit (1) unaligned, /* absolute address must not be changed for page */ 4 18 2 abs_usable bit (1) unaligned, /* page may be assigned with fixed absolute address */ 4 19 2 notify_requested bit (1) unaligned, /* notify requested on I/O completion */ 4 20 2 pad3 bit (1) unaligned, 4 21 2 phm_hedge bit (1) unaligned, /* on => pc$flush_core ought write. */ 4 22 2 contr bit (3) unaligned, /* controller in which core block is located */ 4 23 4 24 2 ptwp bit (18) unaligned, /* pointer to page table word for the page */ 4 25 2 astep bit (18) unaligned, /* relative AST entry pointer of page */ 4 26 2 pin_counter fixed bin (17) unaligned, /* number of times to skip eviction */ 4 27 2 synch_page_entryp bit (18) unaligned; /* relp to synch page entry */ 4 28 4 29 4 30 dcl 1 cma (0: 1) based aligned like cme; /* Core map array */ 4 31 4 32 dcl 1 mcme based (cmep) aligned, /* core map entry for extracting DID */ 4 33 2 pad bit (36) unaligned, 4 34 2 record_no bit (18) unaligned, /* record number of device */ 4 35 2 add_type bit (4) unaligned, /* see add_type.incl.pl1 */ 4 36 2 flags bit (14) unal, 4 37 2 pad1 bit (18) unal; 4 38 4 39 4 40 /* END INCLUDE FILE cmp.incl.pl1 */ 154 155 5 2 /* Begin include file ...... fault_reg.incl.pl1 5 3* Created 8/12/76 by Noel I. Morris */ 5 4 5 5 dcl fregp ptr; 5 6 5 7 dcl 1 fault_reg based (fregp) aligned, /* processor fault register */ 5 8 (2 ill_op bit (1), /* illegal op code detected */ 5 9 2 ill_mod bit (1), /* illegal modifier detected */ 5 10 2 ill_bar bit (1), /* Illegal BAR mode program */ 5 11 2 ill_proc bit (1), /* some other IPR detected */ 5 12 2 nem bit (1), /* nonexistent memory address requested */ 5 13 2 oob bit (1), /* bounds violation occurred */ 5 14 2 ill_dig bit (1), /* illegal decimal digit or sign detected */ 5 15 2 proc_paru bit (1), /* parity error in upper 36 bits of data */ 5 16 2 proc_parl bit (1), /* parity error in lower 36 bits of data */ 5 17 2 connect (0:3) bit (1), /* connect received from one of first four ports */ 5 18 2 da_err1 bit (1), /* $DA with no prior $INT */ 5 19 2 da_err2 bit (1), /* multiple $DA or $DA out of order */ 5 20 2 pad bit (1), 5 21 2 ia (0:3) bit (4), /* illegal action for ports 0 thru 3 */ 5 22 2 cpar_dir bit (1), /* cache directory parity error */ 5 23 2 cpar_str bit (1), /* cache store parity error */ 5 24 2 cpar_ia bit (1), /* illegal action received on store with cache */ 5 25 2 cpar_blk bit (1)) unal; /* cache parity during cache data block load */ 5 26 5 27 /* End of include file ...... fault_reg.incl.pl1 */ 5 28 155 156 /* */ 6 2 /* BEGIN INCLUDE FILE mc.incl.pl1 Created Dec 72 for 6180 - WSS. */ 6 3 /* Modified 06/07/76 by Greenberg for mc.resignal */ 6 4 /* Modified 07/07/76 by Morris for fault register data */ 6 5 /* Modified 08/28/80 by J. A. Bush for the DPS8/70M CVPU */ 6 6 /* Modified '82 to make values constant */ 6 7 6 8 /* words 0-15 pointer registers */ 6 9 6 10 dcl mcp ptr; 6 11 6 12 dcl 1 mc based (mcp) aligned, 6 13 2 prs (0:7) ptr, /* POINTER REGISTERS */ 6 14 (2 regs, /* registers */ 6 15 3 x (0:7) bit (18), /* index registers */ 6 16 3 a bit (36), /* accumulator */ 6 17 3 q bit (36), /* q-register */ 6 18 3 e bit (8), /* exponent */ 6 19 3 pad1 bit (28), 6 20 3 t bit (27), /* timer register */ 6 21 3 pad2 bit (6), 6 22 3 ralr bit (3), /* ring alarm register */ 6 23 6 24 2 scu (0:7) bit (36), 6 25 6 26 2 mask bit (72), /* mem controller mask at time of fault */ 6 27 2 ips_temp bit (36), /* Temporary storage for IPS info */ 6 28 2 errcode fixed bin (35), /* fault handler's error code */ 6 29 2 fim_temp, 6 30 3 unique_index bit (18) unal, /* unique index for restarting faults */ 6 31 3 resignal bit (1) unal, /* recompute signal name with fcode below */ 6 32 3 fcode bit (17) unal, /* fault code used as index to FIM table and SCT */ 6 33 2 fault_reg bit (36), /* fault register */ 6 34 2 pad2 bit (1), 6 35 2 cpu_type fixed bin (2) unsigned, /* L68 = 0, DPS8/70M = 1 */ 6 36 2 ext_fault_reg bit (15), /* extended fault reg for DPS8/70M CPU */ 6 37 2 fault_time bit (54), /* time of fault */ 6 38 6 39 2 eis_info (0:7) bit (36)) unaligned; 6 40 6 41 6 42 dcl (apx fixed bin init (0), 6 43 abx fixed bin init (1), 6 44 bpx fixed bin init (2), 6 45 bbx fixed bin init (3), 6 46 lpx fixed bin init (4), 6 47 lbx fixed bin init (5), 6 48 spx fixed bin init (6), 6 49 sbx fixed bin init (7)) internal static options (constant); 6 50 6 51 6 52 6 53 6 54 dcl scup ptr; 6 55 6 56 dcl 1 scu based (scup) aligned, /* SCU DATA */ 6 57 6 58 6 59 /* WORD (0) */ 6 60 6 61 (2 ppr, /* PROCEDURE POINTER REGISTER */ 6 62 3 prr bit (3), /* procedure ring register */ 6 63 3 psr bit (15), /* procedure segment register */ 6 64 3 p bit (1), /* procedure privileged bit */ 6 65 6 66 2 apu, /* APPENDING UNIT STATUS */ 6 67 3 xsf bit (1), /* ext seg flag - IT modification */ 6 68 3 sdwm bit (1), /* match in SDW Ass. Mem. */ 6 69 3 sd_on bit (1), /* SDW Ass. Mem. ON */ 6 70 3 ptwm bit (1), /* match in PTW Ass. Mem. */ 6 71 3 pt_on bit (1), /* PTW Ass. Mem. ON */ 6 72 3 pi_ap bit (1), /* Instr Fetch or Append cycle */ 6 73 3 dsptw bit (1), /* Fetch of DSPTW */ 6 74 3 sdwnp bit (1), /* Fetch of SDW non paged */ 6 75 3 sdwp bit (1), /* Fetch of SDW paged */ 6 76 3 ptw bit (1), /* Fetch of PTW */ 6 77 3 ptw2 bit (1), /* Fetch of pre-paged PTW */ 6 78 3 fap bit (1), /* Fetch of final address paged */ 6 79 3 fanp bit (1), /* Fetch of final address non-paged */ 6 80 3 fabs bit (1), /* Fetch of final address absolute */ 6 81 6 82 2 fault_cntr bit (3), /* number of retrys of EIS instructions */ 6 83 6 84 6 85 /* WORD (1) */ 6 86 6 87 2 fd, /* FAULT DATA */ 6 88 3 iro bit (1), /* illegal ring order */ 6 89 3 oeb bit (1), /* out of execute bracket */ 6 90 3 e_off bit (1), /* no execute */ 6 91 3 orb bit (1), /* out of read bracket */ 6 92 3 r_off bit (1), /* no read */ 6 93 3 owb bit (1), /* out of write bracket */ 6 94 3 w_off bit (1), /* no write */ 6 95 3 no_ga bit (1), /* not a gate */ 6 96 3 ocb bit (1), /* out of call bracket */ 6 97 3 ocall bit (1), /* outward call */ 6 98 3 boc bit (1), /* bad outward call */ 6 99 3 inret bit (1), /* inward return */ 6 100 3 crt bit (1), /* cross ring transfer */ 6 101 3 ralr bit (1), /* ring alarm register */ 6 102 3 am_er bit (1), /* associative memory fault */ 6 103 3 oosb bit (1), /* out of segment bounds */ 6 104 3 paru bit (1), /* processor parity upper */ 6 105 3 parl bit (1), /* processor parity lower */ 6 106 3 onc_1 bit (1), /* op not complete type 1 */ 6 107 3 onc_2 bit (1), /* op not complete type 2 */ 6 108 6 109 2 port_stat, /* PORT STATUS */ 6 110 3 ial bit (4), /* illegal action lines */ 6 111 3 iac bit (3), /* illegal action channel */ 6 112 3 con_chan bit (3), /* connect channel */ 6 113 6 114 2 fi_num bit (5), /* (fault/interrupt) number */ 6 115 2 fi_flag bit (1), /* 1 => fault, 0 => interrupt */ 6 116 6 117 6 118 /* WORD (2) */ 6 119 6 120 2 tpr, /* TEMPORARY POINTER REGISTER */ 6 121 3 trr bit (3), /* temporary ring register */ 6 122 3 tsr bit (15), /* temporary segment register */ 6 123 6 124 2 pad2 bit (9), 6 125 6 126 2 cpu_no bit (3), /* CPU number */ 6 127 6 128 2 delta bit (6), /* tally modification DELTA */ 6 129 6 130 6 131 /* WORD (3) */ 6 132 6 133 2 word3 bit (18), 6 134 6 135 2 tsr_stat, /* TSR STATUS for 1,2,&3 word instructions */ 6 136 3 tsna, /* Word 1 status */ 6 137 4 prn bit (3), /* Word 1 PR number */ 6 138 4 prv bit (1), /* Word 1 PR valid bit */ 6 139 3 tsnb, /* Word 2 status */ 6 140 4 prn bit (3), /* Word 2 PR number */ 6 141 4 prv bit (1), /* Word 2 PR valid bit */ 6 142 3 tsnc, /* Word 3 status */ 6 143 4 prn bit (3), /* Word 3 PR number */ 6 144 4 prv bit (1), /* Word 3 PR valid bit */ 6 145 6 146 2 tpr_tbr bit (6), /* TPR.TBR field */ 6 147 6 148 6 149 /* WORD (4) */ 6 150 6 151 2 ilc bit (18), /* INSTRUCTION COUNTER */ 6 152 6 153 2 ir, /* INDICATOR REGISTERS */ 6 154 3 zero bit (1), /* zero indicator */ 6 155 3 neg bit (1), /* negative indicator */ 6 156 3 carry bit (1), /* carryry indicator */ 6 157 3 ovfl bit (1), /* overflow indicator */ 6 158 3 eovf bit (1), /* eponent overflow */ 6 159 3 eufl bit (1), /* exponent underflow */ 6 160 3 oflm bit (1), /* overflow mask */ 6 161 3 tro bit (1), /* tally runout */ 6 162 3 par bit (1), /* parity error */ 6 163 3 parm bit (1), /* parity mask */ 6 164 3 bm bit (1), /* ^bar mode */ 6 165 3 tru bit (1), /* truncation mode */ 6 166 3 mif bit (1), /* multi-word instruction mode */ 6 167 3 abs bit (1), /* absolute mode */ 6 168 3 hex bit (1), /* hexadecimal exponent mode */ 6 169 3 pad bit (3), 6 170 6 171 6 172 /* WORD (5) */ 6 173 6 174 2 ca bit (18), /* COMPUTED ADDRESS */ 6 175 6 176 2 cu, /* CONTROL UNIT STATUS */ 6 177 3 rf bit (1), /* on first cycle of repeat instr */ 6 178 3 rpt bit (1), /* repeat instruction */ 6 179 3 rd bit (1), /* repeat double instruction */ 6 180 3 rl bit (1), /* repeat link instruciton */ 6 181 3 pot bit (1), /* IT modification */ 6 182 3 pon bit (1), /* return type instruction */ 6 183 3 xde bit (1), /* XDE from Even location */ 6 184 3 xdo bit (1), /* XDE from Odd location */ 6 185 3 poa bit (1), /* operation preparation */ 6 186 3 rfi bit (1), /* tells CPU to refetch instruction */ 6 187 3 its bit (1), /* ITS modification */ 6 188 3 if bit (1), /* fault occured during instruction fetch */ 6 189 6 190 2 cpu_tag bit (6)) unaligned, /* computed tag field */ 6 191 6 192 6 193 /* WORDS (6,7) */ 6 194 6 195 2 even_inst bit (36), /* even instruction of faulting pair */ 6 196 6 197 2 odd_inst bit (36); /* odd instruction of faulting pair */ 6 198 6 199 6 200 6 201 6 202 6 203 6 204 /* ALTERNATE SCU DECLARATION */ 6 205 6 206 6 207 dcl 1 scux based (scup) aligned, 6 208 6 209 (2 pad0 bit (36), 6 210 6 211 2 fd, /* GROUP II FAULT DATA */ 6 212 3 isn bit (1), /* illegal segment number */ 6 213 3 ioc bit (1), /* illegal op code */ 6 214 3 ia_am bit (1), /* illegal address - modifier */ 6 215 3 isp bit (1), /* illegal slave procedure */ 6 216 3 ipr bit (1), /* illegal procedure */ 6 217 3 nea bit (1), /* non existent address */ 6 218 3 oobb bit (1), /* out of bounds */ 6 219 3 pad bit (29), 6 220 6 221 2 pad2 bit (36), 6 222 6 223 2 pad3a bit (18), 6 224 6 225 2 tsr_stat (0:2), /* TSR STATUS as an ARRAY */ 6 226 3 prn bit (3), /* PR number */ 6 227 3 prv bit (1), /* PR valid bit */ 6 228 6 229 2 pad3b bit (6)) unaligned, 6 230 6 231 2 pad45 (0:1) bit (36), 6 232 6 233 2 instr (0:1) bit (36); /* Instruction ARRAY */ 6 234 6 235 6 236 6 237 /* END INCLUDE FILE mc.incl.pl1 */ 156 157 /* BEGIN INCLUDE FILE static_handlers.incl.pl1 */ 7 2 7 3 /* format: style4,indattr,ifthenstmt,ifthen,idind33,^indcomtxt */ 7 4 7 5 /* HISTORY: 7 6*Written by S. H. Webber, 06/20/75. 7 7*Modified: 7 8*12/15/83 by Benson Margulies: added undefined_pointer_sct_index and 7 9* pgt_sct_index. 7 10*06/11/84 by Lee A. Newcomb: added dm_shutdown_warning_sct_index and 7 11* dm_user_shutdown_sct_index for handling of Data Management 7 12* shutdown. 7 13*08/22/84 by R. Michael Tague: Removed dm_shutdown_warning_sct_index and 7 14* dm_user_shutdown_sct_index. Added 7 15* system_shutdown_scheduled_sct_index and 7 16* dm_shutdown_scheduled_sct_index. 7 17**/ 7 18 7 19 7 20 /****^ HISTORY COMMENTS: 7 21* 1) change(85-11-13,Herbst), approve(87-07-21,MCR7697), 7 22* audit(87-07-21,GDixon), install(87-08-04,MR12.1-1056): 7 23* Add system_message_sct_index. 7 24* END HISTORY COMMENTS */ 7 25 7 26 7 27 dcl ( 7 28 shutdown_sct_index init (0), 7 29 store_sct_index init (1), 7 30 mme1_sct_index init (2), 7 31 fault_tag_1_sct_index init (3), 7 32 timer_runout_sct_index init (4), 7 33 command_sct_index init (5), 7 34 derail_sct_index init (6), 7 35 lockup_sct_index init (7), 7 36 connect_sct_index init (8), 7 37 parity_sct_index init (9), 7 38 illegal_procedure_sct_index init (10), 7 39 op_not_complete_sct_index init (11), 7 40 startup_sct_index init (12), 7 41 ovrflo_sct_index init (13), 7 42 zerodivide_sct_index init (14), 7 43 execute_sct_index init (15), 7 44 seg_fault_error_sct_index init (16), 7 45 page_fault_error_sct_index init (17), 7 46 directed_fault_2_sct_index init (18), 7 47 directed_fault_3_sct_index init (19), 7 48 accessviolation_sct_index init (20), 7 49 mme2_sct_index init (21), 7 50 mme3_sct_index init (22), 7 51 mme4_sct_index init (23), 7 52 linkage_error_sct_index init (24), 7 53 fault_tag_3_sct_index init (25), 7 54 undefined_fault_sct_index init (26), 7 55 trouble_sct_index init (31), 7 56 illegal_opcode_sct_index init (32), 7 57 simfault_000000_sct_index init (33), 7 58 illegal_modifier_sct_index init (34), 7 59 illegal_ring_order_sct_index init (35), 7 60 not_in_execute_bracket_sct_index init (36), 7 61 no_execute_permission_sct_index init (37), 7 62 not_in_read_bracket_sct_index init (38), 7 63 no_read_permission_sct_index init (39), 7 64 not_in_write_bracket_sct_index init (40), 7 65 no_write_permission_sct_index init (41), 7 66 not_a_gate_sct_index init (42), 7 67 not_in_call_bracket_sct_index init (43), 7 68 outward_call_sct_index init (44), 7 69 bad_outward_call_sct_index init (45), 7 70 inward_return_sct_index init (46), 7 71 cross_ring_transfer_sct_index init (47), 7 72 ring_alarm_fault_sct_index init (48), 7 73 am_fault_sct_index init (49), 7 74 out_of_bounds_sct_index init (50), 7 75 fixedoverflow_sct_index init (51), 7 76 overflow_sct_index init (52), 7 77 underflow_sct_index init (53), 7 78 stringsize_sct_index init (54), 7 79 other_illegal_proc_sct_index init (55), 7 80 storage_sct_index init (56), 7 81 packed_pointer_fault_sct_index init (57), 7 82 lot_fault_sct_index init (58), 7 83 isot_fault_sct_index init (59), 7 84 system_packed_pointer_sct_index init (60), 7 85 quit_sct_index init (61), 7 86 alrm_sct_index init (62), 7 87 cput_sct_index init (63), 7 88 record_quota_overflow_sct_index init (64), 7 89 size_sct_index init (65), 7 90 neti_sct_index init (66), 7 91 other_command_sct_index init (67), 7 92 susp_sct_index init (68), 7 93 term_sct_index init (69), 7 94 wkp_sct_index init (70), 7 95 undefined_pointer_sct_index init (71), 7 96 pgt_sct_index init (72), 7 97 system_shutdown_scheduled_sct_index 7 98 init (73), 7 99 dm_shutdown_scheduled_sct_index init (74), 7 100 system_message_sct_index init (75) 7 101 ) fixed bin (17) int static options (constant); 7 102 7 103 /* END INCLUDE FILE static_handlers.incl.pl1 */ 157 158 8 2 /* Begin include file ...... syserr_fault_msg.incl.pl1 8 3* Modified 1985-02-21, EJ Sharpe: changed mach_cond to be "like mc" 8 4* Modified 8/12/76 by Noel I. Morris */ 8 5 8 6 8 7 /* This include file defines the format of the syserr message 8 8* generated on faults handled by various modules. 8 9*NOTE: program must also include "mc". */ 8 10 8 11 dcl fmsgp ptr; /* pointer to structure */ 8 12 8 13 dcl 1 fault_msg based (fmsgp) aligned, 8 14 2 mach_cond like mc, /* machine conditions */ 8 15 2 hist_reg (0:127) bit (36); /* history registers */ 8 16 /* someday the hist_reg should be increased to 256 wds to accomodate all DPS8 data */ 8 17 8 18 /* End of include file ...... syserr_fault_msg.incl.pl1 */ 8 19 158 /* not actually used, but this'll get it in the xref */ 159 /* BEGIN INCLUDE FILE - syserr_mmdam_msg.incl.pl1 */ 9 2 /* format: off */ 9 3 9 4 /* This include file has an ALM version, keep it in sync! */ 9 5 9 6 /* History: 9 7* 1985-02-21, EJ Sharpe, created 9 8**/ 9 9 9 10 /* This include file defines the structure of binary data logged as 9 11*the "mmdam" data class. This occurs when a main memory frame is deleted 9 12*or parity errors are detected. */ 9 13 9 14 dcl mmdam_ptr pointer; 9 15 9 16 dcl 1 mmdam_msg aligned based (mmdam_ptr), 9 17 2 addr fixed bin (24), 9 18 2 ctrltag char (4); 9 19 9 20 /* END INCLUDE FILE - syserr_mmdam_msg.incl.pl1 */ 159 160 161 /* BEGIN MESSAGE DOCUMENTATION 162* 163* Message: 164* hardware_fault: FFF fault on CPU CPUTAG by PROCESSNAME. 165* 166* S: $info 167* 168* T: $run 169* 170* M: A fault indicating processor or main memory malfunction has 171* occurred on CPU CPUTAG. FFF is the name of the fault. Complete 172* binary data about the fault is logged for automatic processing. 173* 174* A: Contact Field engineering personnel. 175* 176* Message: 177* hardware_fault: Deleting frame at WWW from SCU X due to parity errors 178* 179* S: $beep 180* 181* T: $run 182* 183* M: A parity error was detected at main storage address WWWW. 184* The main memory frame with the error was removed from service via delmain. 185* The user process encountering the parity fault cannot be restarted 186* at the point of error because the processor state is imprecise. 187* If the parity error 188* could have damaged user data, the damaged switch is set 189* on the segment, and the user is given the best 190* version we can come up with for the page. 191* 192* A: Contact Field Engineering personnel. 193* The memory page will remain out of service until 194* added back by addmain. 195* 196* END MESSAGE DOCUMENTATION. */ 197 198 end; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/11/89 0838.7 hardware_fault.pl1 >special_ldd>install>MR12.3-1114>hardware_fault.pl1 151 1 05/17/85 0615.7 syserr_constants.incl.pl1 >ldd>include>syserr_constants.incl.pl1 152 2 03/15/85 0953.1 syserr_binary_def.incl.pl1 >ldd>include>syserr_binary_def.incl.pl1 153 3 10/12/83 0943.5 scs.incl.pl1 >ldd>include>scs.incl.pl1 154 4 11/23/82 0953.7 cmp.incl.pl1 >ldd>include>cmp.incl.pl1 155 5 09/14/76 0751.1 fault_reg.incl.pl1 >ldd>include>fault_reg.incl.pl1 156 6 12/15/83 1100.4 mc.incl.pl1 >ldd>include>mc.incl.pl1 157 7 08/06/87 0913.5 static_handlers.incl.pl1 >ldd>include>static_handlers.incl.pl1 158 8 03/15/85 0953.1 syserr_fault_msg.incl.pl1 >ldd>include>syserr_fault_msg.incl.pl1 159 9 03/15/85 0953.1 syserr_mmdam_msg.incl.pl1 >ldd>include>syserr_mmdam_msg.incl.pl1 NAMES DECLARED IN THIS COMPILATION. IDENTIFIER OFFSET LOC STORAGE CLASS DATA TYPE ATTRIBUTES AND REFERENCES (* indicates a set context) NAMES DECLARED BY DECLARE STATEMENT. ANNOUNCE 000010 constant fixed bin(17,0) initial dcl 1-7 set ref 108* BEEP 000016 constant fixed bin(17,0) initial dcl 1-7 set ref 136* SBL_hw_fault 000001 constant fixed bin(17,0) initial dcl 2-47 set ref 108* SBL_mmdam 000015 constant fixed bin(17,0) initial dcl 2-47 set ref 136* SB_hw_fault 000015 constant fixed bin(17,0) initial dcl 2-47 set ref 108* SB_mmdam 000000 constant fixed bin(17,0) initial dcl 2-47 set ref 136* addr 000174 automatic fixed bin(24,0) level 2 in structure "mmdam_struct" dcl 53 in procedure "hardware_fault" set ref 134* 136* addr builtin function dcl 55 in procedure "hardware_fault" ref 73 98 129 136 136 base 000166 automatic fixed bin(18,0) dcl 45 in procedure "hardware_fault" set ref 125* 126 128 base 0(18) 000032 external static fixed bin(17,0) array level 2 in structure "scs$controller_data" packed packed unaligned dcl 3-6 in procedure "hardware_fault" ref 125 baseptr builtin function dcl 55 ref 100 bin builtin function dcl 55 ref 70 100 108 108 cache_tester 000022 constant entry external dcl 60 ref 117 cma based structure array level 1 dcl 4-30 set ref 129 cme based structure level 1 dcl 4-6 cmep 000176 automatic pointer dcl 4-4 set ref 129* 130 131 131 code 000172 automatic fixed bin(35,0) dcl 45 set ref 103* 104 132* 133 139* cpar_blk 0(35) based bit(1) level 2 packed packed unaligned dcl 5-7 ref 80 cpar_dir 0(32) based bit(1) level 2 packed packed unaligned dcl 5-7 ref 74 117 cpar_ia 0(34) based bit(1) level 2 packed packed unaligned dcl 5-7 ref 78 cpar_str 0(33) based bit(1) level 2 packed packed unaligned dcl 5-7 ref 76 117 cpu_no 2(27) based bit(3) level 2 packed packed unaligned dcl 6-56 ref 108 108 ctrltag 1 000174 automatic char(4) level 2 dcl 53 set ref 135* 136* errcode 43 based fixed bin(35,0) level 2 packed packed unaligned dcl 6-12 set ref 112* fault_index 000165 automatic fixed bin(17,0) dcl 45 set ref 70* 72 86 89 92 95 117 123 fault_name 000100 automatic char(32) dcl 45 set ref 74* 76* 78* 80* 82* 86* 89* 92* 95* 108* fault_reg 45 based bit(36) level 2 in structure "mc" packed packed unaligned dcl 6-12 in procedure "hardware_fault" set ref 73 fault_reg based structure level 1 dcl 5-7 in procedure "hardware_fault" fcode 44(19) based bit(17) level 3 packed packed unaligned dcl 6-12 ref 70 fim_temp 44 based structure level 2 packed packed unaligned dcl 6-12 first_word based fixed bin(35,0) dcl 45 ref 130 131 fregp 000200 automatic pointer dcl 5-5 set ref 73* 74 76 78 80 117 117 get_pathname_ 000024 constant entry external dcl 60 ref 103 i 000170 automatic fixed bin(18,0) dcl 45 set ref 124* 125 126 127 135* info 2 000032 external static structure array level 2 dcl 3-6 j 000171 automatic fixed bin(18,0) dcl 45 set ref 128* 129 132* 134 139* mc based structure level 1 dcl 6-12 mcp parameter pointer dcl 6-10 set ref 43 70 73 98 108* 112 117* mmdam_msg based structure level 1 dcl 9-16 mmdam_struct 000174 automatic structure level 1 dcl 53 set ref 136 136 online 2 000032 external static bit(1) array level 3 packed packed unaligned dcl 3-6 ref 127 op_not_complete_sct_index constant fixed bin(17,0) initial dcl 7-27 ref 92 other_command_sct_index constant fixed bin(17,0) initial dcl 7-27 ref 95 parity_sct_index constant fixed bin(17,0) initial dcl 7-27 ref 72 117 123 pc_abs$remove_core 000020 constant entry external dcl 60 ref 139 pds$process_group_id 000010 external static char(32) dcl 57 set ref 108* pmut$check_parity_for_use 000016 constant entry external dcl 60 ref 132 ppr based structure level 2 packed packed unaligned dcl 6-56 psr 0(03) based bit(15) level 3 packed packed unaligned dcl 6-56 ref 100 psrname 000112 automatic varying char(168) dcl 45 set ref 101* 103* 104* 108* psrptr 000110 automatic pointer dcl 45 set ref 100* 103 103 ptwp 2 based bit(18) level 2 packed packed unaligned dcl 4-6 ref 131 scs$controller_data 000032 external static structure array level 1 dcl 3-6 scu based structure level 1 dcl 6-56 in procedure "hardware_fault" scu 30 based bit(36) array level 2 in structure "mc" packed packed unaligned dcl 6-12 in procedure "hardware_fault" set ref 98 scup 000202 automatic pointer dcl 6-54 set ref 98* 100 108 108 segno builtin function dcl 55 ref 103 103 shutdown_sct_index constant fixed bin(17,0) initial dcl 7-27 ref 89 size 000032 external static fixed bin(17,0) array level 2 packed packed unaligned dcl 3-6 ref 126 sst$cmp 000030 external static pointer dcl 67 ref 129 startup_sct_index constant fixed bin(17,0) initial dcl 7-27 ref 86 substr builtin function dcl 55 ref 108 108 135 sys_info$initialization_state 000012 external static fixed bin(17,0) dcl 58 ref 101 sys_info$page_size 000026 external static fixed bin(18,0) dcl 66 ref 134 syserr$binary 000014 constant entry external dcl 60 ref 108 136 top 000167 automatic fixed bin(18,0) dcl 45 set ref 126* 128 unspec builtin function dcl 55 ref 130 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. BULK_PORT internal static fixed bin(17,0) initial dcl 3-176 CPU_PORT internal static fixed bin(17,0) initial dcl 3-176 CRASH internal static fixed bin(17,0) initial dcl 1-7 IOM_PORT internal static fixed bin(17,0) initial dcl 3-176 JUST_LOG internal static fixed bin(17,0) initial dcl 1-7 LOG internal static fixed bin(17,0) initial dcl 1-7 SBL_access_audit internal static fixed bin(17,0) initial dcl 2-47 SBL_config_deck internal static fixed bin(17,0) initial dcl 2-47 SBL_disk_err internal static fixed bin(17,0) initial dcl 2-47 SBL_end_of_table internal static fixed bin(17,0) initial dcl 2-47 SBL_fnp_poll internal static fixed bin(17,0) initial dcl 2-47 SBL_ibm3270_mde internal static fixed bin(17,0) initial dcl 2-47 SBL_io_err internal static fixed bin(17,0) initial dcl 2-47 SBL_io_err_detail internal static fixed bin(17,0) initial dcl 2-47 SBL_mdc_del_uidpath internal static fixed bin(17,0) initial dcl 2-47 SBL_mos_err internal static fixed bin(17,0) initial dcl 2-47 SBL_mpc_poll internal static fixed bin(17,0) initial dcl 2-47 SBL_ocdcm_err internal static fixed bin(17,0) initial dcl 2-47 SBL_random_segdamage internal static fixed bin(17,0) initial dcl 2-47 SBL_read_nc internal static fixed bin(17,0) initial dcl 2-47 SBL_unused_10 internal static fixed bin(17,0) initial dcl 2-47 SBL_unused_12 internal static fixed bin(17,0) initial dcl 2-47 SBL_unused_14 internal static fixed bin(17,0) initial dcl 2-47 SBL_unused_15 internal static fixed bin(17,0) initial dcl 2-47 SBL_unused_18 internal static fixed bin(17,0) initial dcl 2-47 SBL_unused_4 internal static fixed bin(17,0) initial dcl 2-47 SBL_unused_6 internal static fixed bin(17,0) initial dcl 2-47 SBL_unused_7 internal static fixed bin(17,0) initial dcl 2-47 SBL_unused_8 internal static fixed bin(17,0) initial dcl 2-47 SBL_unused_9 internal static fixed bin(17,0) initial dcl 2-47 SBL_verify_lock internal static fixed bin(17,0) initial dcl 2-47 SBL_vtoc_salv_dam internal static fixed bin(17,0) initial dcl 2-47 SBL_vtoce internal static fixed bin(17,0) initial dcl 2-47 SBL_zerpag internal static fixed bin(17,0) initial dcl 2-47 SB_access_audit internal static fixed bin(17,0) initial dcl 2-47 SB_access_audit_data_class internal static varying char(16) initial dcl 2-21 SB_char_data_classes internal static varying char(16) initial array dcl 2-89 SB_config_deck internal static fixed bin(17,0) initial dcl 2-47 SB_config_deck_data_class internal static varying char(16) initial dcl 2-21 SB_disk_err internal static fixed bin(17,0) initial dcl 2-47 SB_end_of_table internal static fixed bin(17,0) initial dcl 2-47 SB_fnp_poll internal static fixed bin(17,0) initial dcl 2-47 SB_fnp_poll_data_class internal static varying char(16) initial dcl 2-21 SB_hwfault_data_class internal static varying char(16) initial dcl 2-21 SB_ibm3270_mde internal static fixed bin(17,0) initial dcl 2-47 SB_ibm3270_mde_data_class internal static varying char(16) initial dcl 2-21 SB_io_err internal static fixed bin(17,0) initial dcl 2-47 SB_io_err_detail internal static fixed bin(17,0) initial dcl 2-47 SB_io_status_data_class internal static varying char(16) initial dcl 2-21 SB_mdc_del_uidpath internal static fixed bin(17,0) initial dcl 2-47 SB_mdc_del_uidpath_data_class internal static varying char(16) initial dcl 2-21 SB_mmdam_data_class internal static varying char(16) initial dcl 2-21 SB_mos_data_class internal static varying char(16) initial dcl 2-21 SB_mos_err internal static fixed bin(17,0) initial dcl 2-47 SB_mpc_poll internal static fixed bin(17,0) initial dcl 2-47 SB_mpc_poll_data_class internal static varying char(16) initial dcl 2-21 SB_ocdcm_err internal static fixed bin(17,0) initial dcl 2-47 SB_random_segdamage internal static fixed bin(17,0) initial dcl 2-47 SB_read_nc internal static fixed bin(17,0) initial dcl 2-47 SB_segdamage_data_class internal static varying char(16) initial dcl 2-21 SB_unused_10 internal static fixed bin(17,0) initial dcl 2-47 SB_unused_12 internal static fixed bin(17,0) initial dcl 2-47 SB_unused_14 internal static fixed bin(17,0) initial dcl 2-47 SB_unused_15 internal static fixed bin(17,0) initial dcl 2-47 SB_unused_18 internal static fixed bin(17,0) initial dcl 2-47 SB_unused_4 internal static fixed bin(17,0) initial dcl 2-47 SB_unused_6 internal static fixed bin(17,0) initial dcl 2-47 SB_unused_7 internal static fixed bin(17,0) initial dcl 2-47 SB_unused_8 internal static fixed bin(17,0) initial dcl 2-47 SB_unused_9 internal static fixed bin(17,0) initial dcl 2-47 SB_verify_lock internal static fixed bin(17,0) initial dcl 2-47 SB_voldamage_data_class internal static varying char(16) initial dcl 2-21 SB_vtoc_salv_dam internal static fixed bin(17,0) initial dcl 2-47 SB_vtoce internal static fixed bin(17,0) initial dcl 2-47 SB_vtoce_data_class internal static varying char(16) initial dcl 2-21 SB_zerpag internal static fixed bin(17,0) initial dcl 2-47 SYSERR_COVERT_CHANNEL internal static fixed bin(17,0) initial dcl 1-7 SYSERR_CRASH_SYSTEM internal static fixed bin(17,0) initial dcl 1-7 SYSERR_LOG_OR_DISCARD internal static fixed bin(17,0) initial dcl 1-7 SYSERR_LOG_OR_PRINT internal static fixed bin(17,0) initial dcl 1-7 SYSERR_PRINT_ON_CONSOLE internal static fixed bin(17,0) initial dcl 1-7 SYSERR_PRINT_WITH_ALARM internal static fixed bin(17,0) initial dcl 1-7 SYSERR_RING1_ERROR internal static fixed bin(17,0) initial dcl 1-7 SYSERR_SUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 1-7 SYSERR_SYSTEM_ERROR internal static fixed bin(17,0) initial dcl 1-7 SYSERR_TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 1-7 SYSERR_UNSUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 1-7 TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 1-7 abx internal static fixed bin(17,0) initial dcl 6-42 accessviolation_sct_index internal static fixed bin(17,0) initial dcl 7-27 alrm_sct_index internal static fixed bin(17,0) initial dcl 7-27 am_fault_sct_index internal static fixed bin(17,0) initial dcl 7-27 apx internal static fixed bin(17,0) initial dcl 6-42 bad_outward_call_sct_index internal static fixed bin(17,0) initial dcl 7-27 bbx internal static fixed bin(17,0) initial dcl 6-42 bpx internal static fixed bin(17,0) initial dcl 6-42 command_sct_index internal static fixed bin(17,0) initial dcl 7-27 connect_sct_index internal static fixed bin(17,0) initial dcl 7-27 cput_sct_index internal static fixed bin(17,0) initial dcl 7-27 cross_ring_transfer_sct_index internal static fixed bin(17,0) initial dcl 7-27 derail_sct_index internal static fixed bin(17,0) initial dcl 7-27 directed_fault_2_sct_index internal static fixed bin(17,0) initial dcl 7-27 directed_fault_3_sct_index internal static fixed bin(17,0) initial dcl 7-27 display_cpu_error_binary_defs internal static fixed bin(17,0) initial array dcl 2-144 dm_shutdown_scheduled_sct_index internal static fixed bin(17,0) initial dcl 7-27 execute_sct_index internal static fixed bin(17,0) initial dcl 7-27 fault_msg based structure level 1 dcl 8-13 fault_tag_1_sct_index internal static fixed bin(17,0) initial dcl 7-27 fault_tag_3_sct_index internal static fixed bin(17,0) initial dcl 7-27 fixedoverflow_sct_index internal static fixed bin(17,0) initial dcl 7-27 fmsgp automatic pointer dcl 8-11 illegal_modifier_sct_index internal static fixed bin(17,0) initial dcl 7-27 illegal_opcode_sct_index internal static fixed bin(17,0) initial dcl 7-27 illegal_procedure_sct_index internal static fixed bin(17,0) initial dcl 7-27 illegal_ring_order_sct_index internal static fixed bin(17,0) initial dcl 7-27 inward_return_sct_index internal static fixed bin(17,0) initial dcl 7-27 isot_fault_sct_index internal static fixed bin(17,0) initial dcl 7-27 lbx internal static fixed bin(17,0) initial dcl 6-42 linkage_error_sct_index internal static fixed bin(17,0) initial dcl 7-27 lockup_sct_index internal static fixed bin(17,0) initial dcl 7-27 lot_fault_sct_index internal static fixed bin(17,0) initial dcl 7-27 lpx internal static fixed bin(17,0) initial dcl 6-42 mcme based structure level 1 dcl 4-32 mmdam_ptr automatic pointer dcl 9-14 mme1_sct_index internal static fixed bin(17,0) initial dcl 7-27 mme2_sct_index internal static fixed bin(17,0) initial dcl 7-27 mme3_sct_index internal static fixed bin(17,0) initial dcl 7-27 mme4_sct_index internal static fixed bin(17,0) initial dcl 7-27 neti_sct_index internal static fixed bin(17,0) initial dcl 7-27 no_execute_permission_sct_index internal static fixed bin(17,0) initial dcl 7-27 no_read_permission_sct_index internal static fixed bin(17,0) initial dcl 7-27 no_write_permission_sct_index internal static fixed bin(17,0) initial dcl 7-27 not_a_gate_sct_index internal static fixed bin(17,0) initial dcl 7-27 not_in_call_bracket_sct_index internal static fixed bin(17,0) initial dcl 7-27 not_in_execute_bracket_sct_index internal static fixed bin(17,0) initial dcl 7-27 not_in_read_bracket_sct_index internal static fixed bin(17,0) initial dcl 7-27 not_in_write_bracket_sct_index internal static fixed bin(17,0) initial dcl 7-27 other_illegal_proc_sct_index internal static fixed bin(17,0) initial dcl 7-27 out_of_bounds_sct_index internal static fixed bin(17,0) initial dcl 7-27 outward_call_sct_index internal static fixed bin(17,0) initial dcl 7-27 overflow_sct_index internal static fixed bin(17,0) initial dcl 7-27 ovrflo_sct_index internal static fixed bin(17,0) initial dcl 7-27 packed_pointer_fault_sct_index internal static fixed bin(17,0) initial dcl 7-27 page_fault_error_sct_index internal static fixed bin(17,0) initial dcl 7-27 pgt_sct_index internal static fixed bin(17,0) initial dcl 7-27 quit_sct_index internal static fixed bin(17,0) initial dcl 7-27 record_quota_overflow_sct_index internal static fixed bin(17,0) initial dcl 7-27 ring_alarm_fault_sct_index internal static fixed bin(17,0) initial dcl 7-27 sbx internal static fixed bin(17,0) initial dcl 6-42 scs$bos_processor_tag external static fixed bin(3,0) dcl 3-137 scs$bos_restart_flags external static bit(8) dcl 3-135 scs$cam_pair external static fixed bin(71,0) dcl 3-103 scs$cam_wait external static bit(8) dcl 3-104 scs$cfg_data external static fixed bin(71,0) array dcl 3-150 scs$cfg_data_save external static fixed bin(71,0) dcl 3-152 scs$connect_lock external static bit(36) dcl 3-132 scs$controller_config_size external static fixed bin(14,0) array dcl 3-164 scs$cow external static structure array level 1 dcl 3-65 scs$cow_ptrs external static structure array level 1 dcl 3-77 scs$cpu_test_mask external static bit(72) dcl 3-96 scs$cpu_test_pattern external static bit(36) dcl 3-99 scs$cycle_priority_template external static bit(7) dcl 3-172 scs$expanded_ports external static bit(1) array packed unaligned dcl 3-154 scs$fast_cam_pending external static bit(36) array dcl 3-140 scs$faults_initialized external static bit(1) dcl 3-138 scs$idle_aptep external static pointer array packed unaligned dcl 3-130 scs$interrupt_controller external static fixed bin(3,0) dcl 3-141 scs$mask_ptr external static pointer array packed unaligned dcl 3-110 scs$nprocessors external static fixed bin(17,0) dcl 3-136 scs$number_of_masks external static fixed bin(17,0) dcl 3-97 scs$open_level external static bit(72) dcl 3-94 scs$port_addressing_word external static bit(3) array dcl 3-148 scs$port_data external static structure array level 1 dcl 3-56 scs$processor external static bit(8) dcl 3-143 scs$processor_data external static structure array level 1 dcl 3-35 scs$processor_data_switch_value external static bit(36) dcl 3-162 scs$processor_start_int_no external static fixed bin(5,0) dcl 3-142 scs$processor_start_mask external static bit(72) dcl 3-95 scs$processor_start_pattern external static bit(36) dcl 3-98 scs$processor_start_wait external static bit(8) dcl 3-144 scs$processor_switch_compare external static bit(36) array dcl 3-159 scs$processor_switch_data external static bit(36) array dcl 3-157 scs$processor_switch_mask external static bit(36) array dcl 3-160 scs$processor_switch_template external static bit(36) array dcl 3-158 scs$processor_test_data external static structure level 1 dcl 3-114 scs$read_mask external static bit(36) array dcl 3-109 scs$reconfig_general_cow external static structure level 1 dcl 3-82 scs$reconfig_lock external static bit(36) dcl 3-133 scs$reconfig_locker_id external static char(32) dcl 3-167 scs$scas_page_table external static bit(36) array dcl 3-169 scs$set_cycle_switches external static bit(1) dcl 3-173 scs$set_mask external static bit(36) array dcl 3-108 scs$sys_level external static bit(72) dcl 3-93 scs$sys_trouble_pending external static bit(1) dcl 3-139 scs$trouble_dbrs automatic fixed bin(71,0) array dcl 3-146 scs$trouble_flags external static bit(8) dcl 3-134 scux based structure level 1 dcl 6-207 seg_fault_error_sct_index internal static fixed bin(17,0) initial dcl 7-27 simfault_000000_sct_index internal static fixed bin(17,0) initial dcl 7-27 size_sct_index internal static fixed bin(17,0) initial dcl 7-27 spx internal static fixed bin(17,0) initial dcl 6-42 storage_sct_index internal static fixed bin(17,0) initial dcl 7-27 store_sct_index internal static fixed bin(17,0) initial dcl 7-27 stringsize_sct_index internal static fixed bin(17,0) initial dcl 7-27 susp_sct_index internal static fixed bin(17,0) initial dcl 7-27 syserr_binary_address_damage_mask internal static bit(36) initial packed unaligned dcl 2-142 syserr_binary_mos_mask internal static bit(36) initial packed unaligned dcl 2-139 syserr_binary_seg_damage_mask internal static bit(36) initial packed unaligned dcl 2-140 syserr_binary_vol_damage_mask internal static bit(36) initial packed unaligned dcl 2-141 system_message_sct_index internal static fixed bin(17,0) initial dcl 7-27 system_packed_pointer_sct_index internal static fixed bin(17,0) initial dcl 7-27 system_shutdown_scheduled_sct_index internal static fixed bin(17,0) initial dcl 7-27 term_sct_index internal static fixed bin(17,0) initial dcl 7-27 timer_runout_sct_index internal static fixed bin(17,0) initial dcl 7-27 trouble_sct_index internal static fixed bin(17,0) initial dcl 7-27 undefined_fault_sct_index internal static fixed bin(17,0) initial dcl 7-27 undefined_pointer_sct_index internal static fixed bin(17,0) initial dcl 7-27 underflow_sct_index internal static fixed bin(17,0) initial dcl 7-27 wkp_sct_index internal static fixed bin(17,0) initial dcl 7-27 zerodivide_sct_index internal static fixed bin(17,0) initial dcl 7-27 NAME DECLARED BY EXPLICIT CONTEXT. hardware_fault 000124 constant entry external dcl 43 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 734 770 566 744 Length 1340 566 34 334 145 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME hardware_fault 220 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME hardware_fault 000100 fault_name hardware_fault 000110 psrptr hardware_fault 000112 psrname hardware_fault 000165 fault_index hardware_fault 000166 base hardware_fault 000167 top hardware_fault 000170 i hardware_fault 000171 j hardware_fault 000172 code hardware_fault 000174 mmdam_struct hardware_fault 000176 cmep hardware_fault 000200 fregp hardware_fault 000202 scup hardware_fault THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_ne_as call_ext_out_desc call_ext_out return_mac ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. cache_tester get_pathname_ pc_abs$remove_core pmut$check_parity_for_use syserr$binary THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. pds$process_group_id scs$controller_data sst$cmp sys_info$initialization_state sys_info$page_size LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 43 000121 70 000131 72 000137 73 000141 74 000143 76 000152 78 000161 80 000170 82 000177 84 000202 86 000203 89 000211 92 000217 95 000225 98 000232 100 000234 101 000242 103 000247 104 000273 108 000276 112 000360 117 000365 123 000403 124 000405 125 000411 126 000420 127 000424 128 000430 129 000437 130 000444 131 000447 132 000456 133 000466 134 000470 135 000474 136 000500 139 000543 143 000560 145 000562 148 000564 ----------------------------------------------------------- Historical Background This edition of the Multics software materials and documentation is provided and donated to Massachusetts Institute of Technology by Group BULL including BULL HN Information Systems Inc. as a contribution to computer science knowledge. This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology, Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell BULL Inc., Groupe BULL and BULL HN Information Systems Inc. to the development of this operating system. Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970), renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture for managing computer hardware properly and for executing programs. Many subsequent operating systems incorporated Multics principles. Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc., as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. . ----------------------------------------------------------- Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without fee is hereby granted,provided that the below copyright notice and historical background appear in all copies and that both the copyright notice and historical background and this permission notice appear in supporting documentation, and that the names of MIT, HIS, BULL or BULL HN not be used in advertising or publicity pertaining to distribution of the programs without specific prior written permission. Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc. Copyright 2006 by BULL HN Information Systems Inc. Copyright 2006 by Bull SAS All Rights Reserved