COMPILATION LISTING OF SEGMENT alm_syserr_caller 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 1024.4 mst Sat Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Bull Inc., 1987 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1983 * 6* * * 7* *********************************************************** */ 8 9 10 /****^ HISTORY COMMENTS: 11* 1) change(86-01-15,Fawcett), approve(86-04-11,MCR7383), 12* audit(86-05-21,Coppola), install(86-07-17,MR12.0-1097): 13* Add support for subvolumes. 14* 2) change(87-02-04,Fawcett), approve(87-04-27,MCR7670), 15* audit(87-04-27,Farley), install(87-04-28,MR12.1-1028): 16* Correct ioa_ format string in syserr call. 17* END HISTORY COMMENTS */ 18 19 20 /* format: style4 */ 21 alm_syserr_caller: proc; 22 23 /* 83-05-30 E. N. Kittlitz */ 24 25 /* this routine contains calls to syserr which are just not worth coding 26* in the ALM routines from which we wish to call syserr. */ 27 28 dcl a_pvid bit (36) aligned; 29 dcl a_uid bit (36) aligned; 30 dcl a_vtocx fixed bin; 31 dcl a_ignore1 fixed bin; 32 dcl a_ignore2 fixed bin; 33 34 dcl code fixed bin (35); 35 dcl p99 pic "99"; 36 dcl pv_loc char (32) varying; 37 dcl pvid bit (36) aligned; 38 dcl pvtx fixed bin; 39 dcl uid bit (36) aligned; 40 dcl vtocx fixed bin; 41 42 dcl get_pvtx entry (bit (36) aligned, fixed bin (35)) returns (fixed bin); 43 dcl search_ast entry (bit (36) aligned) returns (ptr); 44 dcl syserr entry options (variable); 45 46 dcl (addr, convert, null, rtrim) builtin; 47 48 return; /* no syserr_caller$syserr_caller */ 49 50 51 search_ast_hash_error: entry; 52 53 call syserr (CRASH, "search_ast: hash error"); 54 return; 55 56 57 /* search_ast$check entry (a_uid, a_pvid, a_vtocx, a_code) returns (ptr) 58* calls this entry with the same argument list. */ 59 60 search_ast_double_uid: entry (a_uid, a_pvid, a_vtocx, a_ignore1, a_ignore2); 61 62 uid = a_uid; 63 pvid = a_pvid; 64 vtocx = a_vtocx; 65 pvt_arrayp = addr (pvt$array); 66 pvtx = get_pvtx (pvid, code); 67 if code = 0 then do; 68 pvtep = addr (pvt_array (pvtx)); 69 pv_loc = pvte.devname || "_" || convert (p99, pvte.logical_area_number); 70 if pvte.is_sv then pv_loc = rtrim (pv_loc) || rtrim (pvte.sv_name); 71 end; 72 else do; 73 pvtep = null; 74 pv_loc = "*not-mounted*"; 75 end; 76 astep = search_ast ((uid)); 77 if astep = null then 78 call syserr (CRASH, "syserr_caller$search_ast_double_uid spurious call, astep=null, uid=^w, pv=^a(^w), vtocx=^o.", 79 uid, pv_loc, pvid, vtocx); 80 else if pvt_array (aste.pvtx).pvid = a_pvid & aste.vtocx = a_vtocx then 81 call syserr (CRASH, "syserr_caller$search_ast_double_uid spurious call, aste=^p, uid=^w, pv=^a(^w), vtocx=^o", 82 astep, uid, pv_loc, pvid, vtocx); 83 else call syserr (LOG, "search_ast: double uid ^w. vtocx ^o on ^a(^w). active vtocx ^o on ^a^[^a^;^1s^](^w).", 84 uid, vtocx, pv_loc, pvid, 85 aste.vtocx, pvt_array (aste.pvtx).devname || "_" || 86 convert (p99, pvt_array (aste.pvtx).logical_area_number), 87 pvt_array (aste.pvtx).is_sv, pvt_array (aste.pvtx).sv_name, 88 pvt_array (aste.pvtx).pvid); 89 return; 90 91 /* format: off */ 92 /* BEGIN INCLUDE FILE ...aste.incl.pl1 ... */ 1 2 1 3 /* Template for an AST entry. Length = 12 words. */ 1 4 1 5 /* Words 0 to 7, and 11 are read by PC; they are read and modified by SC. 1 6* Words 8, 9 and 10 are modified by PC; they should never be modified without locking the PC lock */ 1 7 /* Modified January 1985 by Keith Loepere for multi_class. */ 1 8 1 9 dcl astep ptr; 1 10 1 11 dcl 1 aste based (astep) aligned, 1 12 1 13 (2 fp bit (18), /* forward used list rel pointer */ 1 14 2 bp bit (18), /* backward used list rel pointer */ 1 15 1 16 2 infl bit (18), /* ptr to NEXT in list of ASTE's of my brothers */ 1 17 2 infp bit (18), /* ptr to FIRST in list of ASTE's of my children */ 1 18 1 19 2 strp bit (18), /* rel pointer to process trailer */ 1 20 2 par_astep bit (18), /* rel pointer to parent aste */ 1 21 1 22 2 uid bit (36), /* segment unique id */ 1 23 1 24 2 msl bit (9), /* maximum segment length in 1024 word units */ 1 25 2 pvtx fixed bin (8), /* physical volume table index */ 1 26 2 vtocx fixed bin (17), /* vtoc entry index */ 1 27 1 28 2 usedf bit (1), /* ast entry is being used if non-zero */ 1 29 2 init bit (1), /* used bit - insure 1 lap */ 1 30 2 gtus bit (1), /* global transparent usage switch */ 1 31 2 gtms bit (1), /* global transparent modified switch */ 1 32 2 hc bit (1), /* hard core segment */ 1 33 2 hc_sdw bit (1), /* aste with sdw for hardcore seg if non-zero */ 1 34 2 any_access_on bit (1), /* any sdw allows access, unless write_access_on */ 1 35 2 write_access_on bit (1), /* any sdw allows write access */ 1 36 2 inhibit_cache bit (1), /* flag not to reset above bits */ 1 37 2 explicit_deact_ok bit (1), /* set if user can deactivate seg */ 1 38 2 deact_error bit (1), /* set if error occurred while deactivating */ 1 39 2 hc_part bit (1), /* set if pages are in a hardcore partition */ 1 40 2 fm_damaged bit (1), /* set if filemap checksum was ever bad */ 1 41 2 multi_class bit (1), /* set if page_control should watch state changes to this segment */ 1 42 2 pad1 bit (2), /* OO */ 1 43 2 dius bit (1), /* dumper in use switch */ 1 44 2 nid bit (1), /* if on prevents addtion to incremental dump map */ 1 45 2 dmpr_pad bit (1), 1 46 2 ehs bit (1), /* entry hold switch */ 1 47 2 nqsw bit (1), /* no quota switch - no checking for pages of this seg */ 1 48 2 dirsw bit (1), /* directory switch */ 1 49 2 master_dir bit (1), /* master dir - a root for the log volume */ 1 50 2 volmap_seg bit (1), /* volmap_seg for some volume */ 1 51 2 tqsw (0:1) bit (1), /* terminal quota switch - (0) for non dir pages */ 1 52 2 pad_ic bit (10), /* Used to be aste.ic */ 1 53 1 54 2 dtu bit (36), /* date and time segment last used */ 1 55 1 56 2 dtm bit (36), /* date and time segment last modified */ 1 57 1 58 1 59 2 quota (0:1) fixed bin (18) unsigned, /* sec storage quota - (0) for non dir pages */ 1 60 1 61 2 used (0:1) fixed bin (18) unsigned, /* sec storage used - (0) for non dir pages */ 1 62 1 63 2 csl bit (9), /* current segment length in 1024 words units */ 1 64 2 fmchanged bit (1), /* turned on by page if file map changed */ 1 65 2 fms bit (1), /* file modified switch */ 1 66 2 npfs bit (1), /* no page fault switch */ 1 67 2 gtpd bit (1), /* global transparent paging device switch */ 1 68 2 dnzp bit (1), /* don't null out if zero page switch */ 1 69 2 per_process bit (1), /* use master quota for this entry */ 1 70 2 ddnp bit (1), /* don't deposit nulled pages */ 1 71 2 pad2 bit (2), 1 72 2 records bit (9), /* number of records used by the seg in sec storage */ 1 73 2 np bit (9), /* number of pages in core */ 1 74 1 75 1 76 2 ht_fp bit (18), /* hash table forward rel pointer */ 1 77 2 fmchanged1 bit (1), /* value of "fmchanged" saved by pc$get_file_map */ 1 78 2 damaged bit (1), /* PC declared segment unusable */ 1 79 2 pack_ovfl bit (1), /* page fault on seg would cause pack overflow */ 1 80 2 synchronized bit (1), /* Data Management synchronized segment */ 1 81 2 pad3 bit (6), /* OOOOOOOOO */ 1 82 2 ptsi bit (2), /* page table size index */ 1 83 2 marker bit (6)) unaligned; /* marker to indicate last word of ASTE */ 1 84 1 85 1 86 dcl asta (0 : 8000) bit (36*12 /* sst-> sst.astsize */) based aligned; 1 87 1 88 1 89 dcl 1 aste_part aligned based (astep), 1 90 1 91 2 one bit (36) unaligned, /* fp and bp */ 1 92 2 two bit (36*11 - 8) unaligned, /* part that has to be zeroed when ASTE is freed */ 1 93 2 three bit (8) unaligned; /* ptsi and marker */ 1 94 1 95 1 96 dcl 1 seg_aste based (astep) aligned, /* Overlay because quota is only for dirs */ 1 97 2 pad1 bit (8*36), 1 98 2 usage fixed bin (35), /* page fault count: overlays quota */ 1 99 2 pad2 bit (3*36); 1 100 1 101 /* END INCLUDE FILE ... aste.incl.pl1 */ 92 93 /* START OF: pvte.incl.pl1 July 1982 * * * * * * * * * * * * * * * * */ 2 2 2 3 /* Added pc_vacating, Benson Margulies 84-10-17 */ 2 4 2 5 /****^ HISTORY COMMENTS: 2 6* 1) change(86-04-11,Fawcett), approve(86-04-11,MCR7383), 2 7* audit(86-05-29,GDixon), install(86-07-18,MR12.0-1098): 2 8* Add the support for subvolumes 2 9* 2) change(86-04-11,Lippard), approve(86-04-11,MCR7309), 2 10* audit(86-05-29,GDixon), install(86-07-18,MR12.0-1098): 2 11* Add root_lv flag to mount RLVs that do not have hardcore partitions. 2 12* 3) change(88-05-27,GWMay), approve(88-05-27,MCR7883), 2 13* audit(88-06-14,Beattie), install(88-07-19,MR12.2-1061): 2 14* Added inconsistent_dbm bit for determining the status of volume 2 15* dumper bit maps. 2 16* END HISTORY COMMENTS */ 2 17 2 18 dcl pvt$array aligned external; 2 19 dcl pvt$max_n_entries fixed bin external; 2 20 2 21 dcl pvt_arrayp ptr; 2 22 dcl pvtep ptr; 2 23 2 24 dcl 1 pvt_array (pvt$max_n_entries) aligned like pvte based (pvt_arrayp); 2 25 2 26 dcl 1 pvte based (pvtep) aligned, 2 27 2 28 2 pvid bit (36), /* physical volume ID */ 2 29 2 30 2 lvid bit (36), /* logical volume ID */ 2 31 2 32 2 dmpr_in_use (3) bit (1) unaligned, /* physical volume dumper interlock */ 2 33 2 is_sv bit (1) unaligned, /* true if this entry defines a subvolume */ 2 34 2 root_lv bit (1) unaligned, /* true if this is on the root LV */ 2 35 2 removable_pack bit (1) unaligned, /* true if packs are eremoveable */ 2 36 2 inconsistent_dbm bit (1) unaligned, /* true if trouble count is incremented */ 2 37 2 pad3 bit (2) unaligned, 2 38 2 brother_pvtx fixed bin (8) unaligned,/* next pvte in lv chain */ 2 39 2 skip_queue_count fixed bin (18) unsigned unaligned, /* number of times this pv skipped for per-proc allocation due to saturation */ 2 40 2 41 2 42 2 43 2 devname char (4), /* device name */ 2 44 2 45 (2 device_type fixed bin (8), /* device type */ 2 46 2 logical_area_number fixed bin (8), /* disk drive number */ 2 47 2 used bit (1), /* TRUE if this entry is used */ 2 48 2 storage_system bit (1), /* TRUE for storage system (vs io disk) */ 2 49 2 permanent bit (1), /* TRUE if cannot be demounted */ 2 50 2 testing bit (1), /* Protocol bit for read_disk$test */ 2 51 2 being_mounted bit (1), /* TRUE if the physical volume is being mounted */ 2 52 2 being_demounted bit (1), /* TRUE if the pysical volume is being demounted */ 2 53 2 check_read_incomplete bit (1), /* page control should check read incomplete */ 2 54 2 device_inoperative bit (1), /* TRUE if disk_control decides dev busted */ 2 55 2 rpv bit (1), /* TRUE if this is the root physical volume */ 2 56 2 scav_check_address 2 57 bit (1), /* TRUE is page control should check deposits/withdrawals against scavenger table */ 2 58 2 deposit_to_volmap bit (1), /* TRUE if deposits should got to volume map, not stock */ 2 59 2 being_demounted2 bit (1), /* No more vtoc I/O during demount */ 2 60 2 pc_vacating bit (1), /* No more withdraws from this volume -- for debugging */ 2 61 2 vacating bit (1), /* don't put new segs on this vol */ 2 62 2 hc_part_used bit (1), /* HC part set up by init_pvt */ 2 63 2 volmap_lock_notify bit (1) unal, /* TRUE if notify required when volmap lock is unlocked */ 2 64 2 volmap_idle_notify bit (1) unal, /* TRUE if notify required when volmap state is idle */ 2 65 2 vtoc_map_lock_notify bit (1) unal, /* TRUE if notify required when vtoc map lock is unlocked */ 2 66 2 67 2 68 2 n_free_vtoce fixed bin (17), /* number of free VTOC entries */ 2 69 2 vtoc_size fixed bin (17), /* size of the VTOC part of the disk - in records */ 2 70 2 71 2 dbmrp (2) bit (18), /* rel ptr to dumber bit maps for this volume */ 2 72 2 73 2 nleft fixed bin (17), /* number of records left */ 2 74 2 totrec fixed bin (17)) unaligned, /* Total records in this map */ 2 75 2 76 2 dim_info bit (36), /* Information peculiar to DIM */ 2 77 2 sv_num fixed bin, /* the number of this subvolume starting at 0 */ 2 78 2 num_of_svs fixed bin, /* number of subvolumes for this device */ 2 79 2 records_per_cyl fixed bin, 2 80 2 record_factor fixed bin, /* the record factor for logical to real seek calculation */ 2 81 2 sv_name char (2) aligned, 2 82 2 curn_dmpr_vtocx (3) fixed bin unaligned,/* current vtocx being dumped */ 2 83 2 n_vtoce fixed bin unaligned, /* number of vtoce on this volume */ 2 84 2 85 2 baseadd fixed bin (18) uns unaligned, /* Base of paging region */ 2 86 2 pad2 bit (18) unaligned, 2 87 2 88 2 pad_for_mod_2 fixed bin (35), /* Make volmap_seg_sdw double word aligned */ 2 89 2 90 2 volmap_seg_sdw fixed bin (71), /* SDW describing volmap_seg */ 2 91 2 92 2 volmap_astep ptr unal, /* Packed pointer to ASTE for volmap_seg */ 2 93 2 94 2 volmap_offset bit (18) unal, /* Offset in volmap_seg of volume map */ 2 95 2 vtoc_map_offset bit (18) unal, /* Offset in volmap_seg of VTOC map */ 2 96 2 97 2 98 2 volmap_lock bit (36) aligned, /* Lock on volume map operations */ 2 99 2 100 2 vtoc_map_lock bit (36) aligned, /* Lock on VTOC map operations */ 2 101 2 102 2 volmap_stock_ptr ptr unal, /* Packed pointer to record stock */ 2 103 2 104 2 vtoc_map_stock_ptr ptr unal, /* Packed pointer to VTOCE stock */ 2 105 2 106 2 volmap_async_state fixed bin (17) unaligned, /* Asynchronous update state of Volume Map */ 2 107 2 volmap_async_page fixed bin (17) unaligned, /* Page number for asynchronous update */ 2 108 2 109 2 vol_trouble_count fixed bin (17) unaligned, /* Count of inconsistencies since last salvage */ 2 110 2 scavenger_block_rel bit (18) unaligned; /* Offset to scavenger block, ^0 => scavenging */ 2 111 2 112 2 113 dcl (VOLMAP_ASYNC_IDLE init (0), /* for volmap_async_state */ 2 114 VOLMAP_ASYNC_READ init (1), 2 115 VOLMAP_ASYNC_WRITE init (2)) fixed bin int static options (constant); 2 116 2 117 2 118 /* END OF: pvte.incl.pl1 * * * * * * * * * * * * * * * * */ 93 94 /* BEGIN INCLUDE FILE syserr_constants.incl.pl1 ... 11/11/80 W. Olin Sibert */ 3 2 /* 85-02-12, EJ Sharpe - Added sorting class constants, removed AIM_MESSAGE, added new action code names. */ 3 3 /* 85-04-24, G. Palter - Renamed SYSERR_UNUSED_10 to SYSERR_RING1_ERROR to reflect its actual use. */ 3 4 3 5 /* This include file has an ALM version. Keep 'em in sync! */ 3 6 3 7 dcl ( 3 8 3 9 /* The following constants define the message action codes. This indicates 3 10*how a message is to be handled. */ 3 11 3 12 SYSERR_CRASH_SYSTEM init (1), 3 13 CRASH init (1), /* Crash the system, and bleat plaintively. */ 3 14 3 15 SYSERR_TERMINATE_PROCESS init (2), 3 16 TERMINATE_PROCESS init (2), /* Terminate the process, print the message, and beep. */ 3 17 3 18 SYSERR_PRINT_WITH_ALARM init (3), 3 19 BEEP init (3), /* Beep and print the message on the console. */ 3 20 3 21 SYSERR_PRINT_ON_CONSOLE init (0), 3 22 ANNOUNCE init (0), /* Just print the message on the console. */ 3 23 3 24 SYSERR_LOG_OR_PRINT init (4), 3 25 LOG init (4), /* Log the message, or print it if it can't be logged */ 3 26 3 27 SYSERR_LOG_OR_DISCARD init (5), 3 28 JUST_LOG init (5), /* Just try to log the message, and discard it if it can't be */ 3 29 3 30 3 31 /* The following constants are added to the normal severities to indicate 3 32*different sorting classes of messages. */ 3 33 3 34 SYSERR_SYSTEM_ERROR init (00), /* indicates a standard level system error */ 3 35 SYSERR_RING1_ERROR init (10), /* indicates an error detected in ring 1 (mseg_, RCP) */ 3 36 SYSERR_COVERT_CHANNEL init (20), /* indicates covert channel audit trail message */ 3 37 SYSERR_UNSUCCESSFUL_ACCESS init (30), /* indicates access denial audit trail message */ 3 38 SYSERR_SUCCESSFUL_ACCESS init (40) /* indicates access grant audit trail message */ 3 39 ) fixed bin internal static options (constant); 3 40 3 41 /* END INCLUDE FILE syserr_constants.incl.pl1 */ 94 95 96 /* format: on */ 97 98 /* BEGIN MESSAGE DOCUMENTATION 99* 100* Message: 101* search_ast: hash error 102* 103* S: $crash 104* 105* T: $run 106* 107* M: $err 108* 109* A: $recover 110* 111* 112* Message: 113* search_ast: double uid UID. vtocx VTOCX on DRIVE(PVID). active vtocx VTOCX2 on DRIVE2(PVID2). 114* 115* S: $log 116* 117* T: $run 118* 119* M: A mismatch has been detected between the branch and the ASTE 120* for a segment. The two segments indicated by VTOCE index and 121* physical volume location/identifier claim to have the same file system 122* unique identifier. The operation either proceeds or returns a connection 123* failure to the user process, as appropriate. This message is logged for the 124* use of system programmers. 125* 126* This error can occur if damage to a directory branch has caused 127* its unique ID to become incorrect, and if the incorrect unique ID 128* happens to be identical to the unique ID of a segment already active. 129* 130* A: $inform 131* 132* 133* Message: 134* syserr_caller$search_ast_double_uid spurious call, astep=null, uid=UID, pv=DRIVE(PVID), vtocx=VTOCX. 135* 136* S: $log 137* 138* T: $run 139* 140* M: A call was made to indicate a double unique_id, but it was not possible 141* to reconstruct the error. The unique_id, physical volume location/identifier, 142* and VTOCE index are provided. 143* 144* A: $ignore 145* 146* Message: 147* syserr_caller$search_ast_double_uid spurious call, aste=desired, uid=UID, pv=DRIVE(PVID), vtocx=VTOCX. 148* 149* S: $log 150* 151* T: $run 152* 153* M: A call was made to indicate a double unique_id, but it was not possible to 154* reconstruct the error. The unique id, physical volume location/identifier, 155* and vtoce index are provided. 156* 157* A: $ignore 158* 159* END MESSAGE DOCUMENTATION */ 160 161 end alm_syserr_caller; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/11/89 0808.4 alm_syserr_caller.pl1 >spec>install>1112>alm_syserr_caller.pl1 92 1 01/30/85 1523.9 aste.incl.pl1 >ldd>include>aste.incl.pl1 93 2 07/21/88 2036.0 pvte.incl.pl1 >ldd>include>pvte.incl.pl1 94 3 05/17/85 0615.7 syserr_constants.incl.pl1 >ldd>include>syserr_constants.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. CRASH 000014 constant fixed bin(17,0) initial dcl 3-7 set ref 53* 77* 80* LOG 000012 constant fixed bin(17,0) initial dcl 3-7 set ref 83* a_ignore1 parameter fixed bin(17,0) dcl 31 ref 60 a_ignore2 parameter fixed bin(17,0) dcl 32 ref 60 a_pvid parameter bit(36) dcl 28 ref 60 63 80 a_uid parameter bit(36) dcl 29 ref 60 62 a_vtocx parameter fixed bin(17,0) dcl 30 ref 60 64 80 addr builtin function dcl 46 ref 65 68 aste based structure level 1 dcl 1-11 astep 000116 automatic pointer dcl 1-9 set ref 76* 77 80 80 80* 83 83 83 83 83 83 code 000100 automatic fixed bin(35,0) dcl 34 set ref 66* 67 convert builtin function dcl 46 ref 69 83 devname 3 based char(4) array level 2 in structure "pvt_array" dcl 2-24 in procedure "alm_syserr_caller" set ref 83 devname 3 based char(4) level 2 in structure "pvte" dcl 2-26 in procedure "alm_syserr_caller" ref 69 get_pvtx 000010 constant entry external dcl 42 ref 66 is_sv 2(03) based bit(1) level 2 in structure "pvte" packed packed unaligned dcl 2-26 in procedure "alm_syserr_caller" ref 70 is_sv 2(03) based bit(1) array level 2 in structure "pvt_array" packed packed unaligned dcl 2-24 in procedure "alm_syserr_caller" set ref 83* logical_area_number 4(09) based fixed bin(8,0) array level 2 in structure "pvt_array" packed packed unaligned dcl 2-24 in procedure "alm_syserr_caller" set ref 83 logical_area_number 4(09) based fixed bin(8,0) level 2 in structure "pvte" packed packed unaligned dcl 2-26 in procedure "alm_syserr_caller" ref 69 null builtin function dcl 46 ref 73 77 p99 automatic picture(2) packed unaligned dcl 35 ref 69 83 pv_loc 000101 automatic varying char(32) dcl 36 set ref 69* 70* 70 74* 77* 80* 83* pvid 000112 automatic bit(36) dcl 37 in procedure "alm_syserr_caller" set ref 63* 66* 77* 80* 83* pvid based bit(36) array level 2 in structure "pvt_array" dcl 2-24 in procedure "alm_syserr_caller" set ref 80 83* pvt$array 000016 external static fixed bin(17,0) dcl 2-18 set ref 65 pvt_array based structure array level 1 dcl 2-24 set ref 68 pvt_arrayp 000120 automatic pointer dcl 2-21 set ref 65* 68 80 83 83 83 83 83 pvte based structure level 1 dcl 2-26 pvtep 000122 automatic pointer dcl 2-22 set ref 68* 69 69 70 70 73* pvtx 4(09) based fixed bin(8,0) level 2 in structure "aste" packed packed unaligned dcl 1-11 in procedure "alm_syserr_caller" ref 80 83 83 83 83 83 pvtx 000113 automatic fixed bin(17,0) dcl 38 in procedure "alm_syserr_caller" set ref 66* 68 rtrim builtin function dcl 46 ref 70 70 search_ast 000012 constant entry external dcl 43 ref 76 sv_name 15 based char(2) array level 2 in structure "pvt_array" dcl 2-24 in procedure "alm_syserr_caller" set ref 83* sv_name 15 based char(2) level 2 in structure "pvte" dcl 2-26 in procedure "alm_syserr_caller" ref 70 syserr 000014 constant entry external dcl 44 ref 53 77 80 83 uid 000114 automatic bit(36) dcl 39 set ref 62* 76 77* 80* 83* vtocx 4(18) based fixed bin(17,0) level 2 in structure "aste" packed packed unaligned dcl 1-11 in procedure "alm_syserr_caller" set ref 80 83* vtocx 000115 automatic fixed bin(17,0) dcl 40 in procedure "alm_syserr_caller" set ref 64* 77* 80* 83* NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. ANNOUNCE internal static fixed bin(17,0) initial dcl 3-7 BEEP internal static fixed bin(17,0) initial dcl 3-7 JUST_LOG internal static fixed bin(17,0) initial dcl 3-7 SYSERR_COVERT_CHANNEL internal static fixed bin(17,0) initial dcl 3-7 SYSERR_CRASH_SYSTEM internal static fixed bin(17,0) initial dcl 3-7 SYSERR_LOG_OR_DISCARD internal static fixed bin(17,0) initial dcl 3-7 SYSERR_LOG_OR_PRINT internal static fixed bin(17,0) initial dcl 3-7 SYSERR_PRINT_ON_CONSOLE internal static fixed bin(17,0) initial dcl 3-7 SYSERR_PRINT_WITH_ALARM internal static fixed bin(17,0) initial dcl 3-7 SYSERR_RING1_ERROR internal static fixed bin(17,0) initial dcl 3-7 SYSERR_SUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 3-7 SYSERR_SYSTEM_ERROR internal static fixed bin(17,0) initial dcl 3-7 SYSERR_TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 3-7 SYSERR_UNSUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 3-7 TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 3-7 VOLMAP_ASYNC_IDLE internal static fixed bin(17,0) initial dcl 2-113 VOLMAP_ASYNC_READ internal static fixed bin(17,0) initial dcl 2-113 VOLMAP_ASYNC_WRITE internal static fixed bin(17,0) initial dcl 2-113 asta based bit(432) array dcl 1-86 aste_part based structure level 1 dcl 1-89 pvt$max_n_entries external static fixed bin(17,0) dcl 2-19 seg_aste based structure level 1 dcl 1-96 NAMES DECLARED BY EXPLICIT CONTEXT. alm_syserr_caller 000135 constant entry external dcl 21 search_ast_double_uid 000202 constant entry external dcl 60 search_ast_hash_error 000144 constant entry external dcl 51 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 740 760 640 750 Length 1202 640 20 205 77 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME alm_syserr_caller 234 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME alm_syserr_caller 000100 code alm_syserr_caller 000101 pv_loc alm_syserr_caller 000112 pvid alm_syserr_caller 000113 pvtx alm_syserr_caller 000114 uid alm_syserr_caller 000115 vtocx alm_syserr_caller 000116 astep alm_syserr_caller 000120 pvt_arrayp alm_syserr_caller 000122 pvtep alm_syserr_caller THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. alloc_char_temp call_ext_out_desc call_ext_out return_mac shorten_stack ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. get_pvtx search_ast syserr THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. pvt$array LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 21 000134 48 000142 51 000143 53 000151 54 000174 60 000175 62 000207 63 000212 64 000214 65 000216 66 000221 67 000233 68 000235 69 000242 70 000270 71 000343 73 000345 74 000347 76 000354 77 000367 80 000432 83 000515 89 000636 ----------------------------------------------------------- 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