ASSEMBLY LISTING OF SEGMENT >spec>install>1111>page_fault.alm ASSEMBLED ON: 11/11/89 0925.1 mst Sat OPTIONS USED: -target l68 list symbols ASSEMBLED BY: ALM Version 8.14 March 1989 ASSEMBLER CREATED: 06/09/89 1002.3 mst Fri 1 " *********************************************************** 2 " * * 3 " * Copyright, (C) Honeywell Bull Inc., 1987 * 4 " * * 5 " * Copyright, (C) Honeywell Information Systems Inc., 1982 * 6 " * * 7 " * Copyright (c) 1972 by Massachusetts Institute of * 8 " * Technology and Honeywell Information Systems, Inc. * 9 " * * 10 " *********************************************************** 11 12 " HISTORY COMMENTS: 13 " 1) change(87-06-22,Fawcett), approve(87-06-23,MCR7734), 14 " audit(87-07-14,Farley), install(87-07-17,MR12.1-1043): 15 " Change the checking for the "mylock" on the ptl for after the first stac 16 " instructions indicates that the lock was in fact locked. 17 " END HISTORY COMMENTS 18 19 20 " " " " " " " "" " " " " " " " " " " " " " " " " " " " " " " " " " " " 21 " 22 " page_fault 23 " 24 " This is the major procedure of Multics page control. For details, see 25 " the Storage System PLM, Order Number AN61. 26 " 27 " Coded 1/70 by S.Webber 28 " Last Modified (Date and Reason): 29 " Modified by S.Webber 07/01/71 to add page multilevel 30 " Modified by S.Webber 07/01/72 for followon 31 " Modified by S.Webber 10/01/73 to merge with privileged code 32 " Modified by B. Greenberg 06/10/74 for IOBM and put all cam/lock_ptl in page. 33 " Modified by B. Greenberg 11/12/74 for overlap-lookahead core control. 34 " Modified by B. Greenberg 02/05/75 for new storage system. 35 " Modified by S. Webber 02/05/76 for new reconfiguration 36 " Modified by B. Greenberg 03/08/76 for waiting on PTL 37 " Modified by B. Greenberg 05/13/76 for pdme's with uid/pageno 38 " Modified by B. Greenberg 12/76 for core_queue_man delay queue. 39 " Modified by B. Greenberg 3/31/77 for disk_emergency and new page_error. 40 " Modified by B. Greenberg 5/03/77 for page$pcleanup, aste.damaged. 41 " Modified by RE Mullen 5/13/77 for concurrent scheduler 42 " Modified by B. Greenberg 8/77 for pc_recover_sst, misc. cleanups. 43 " Modified by B. Greenberg 9/20/77 for disk offline waiting. 44 " Modified by B. Greenberg 3/15/78 for large sst, ptw.phm1 45 " Modified by B. Greenberg 5/1/78 for parity errors. 46 " Modified by D. Spector 2/20/79 for 18-bit unsigned quota 47 " Modified by B. Greenberg 2/79 for variable write_limit 48 " Modified by B. Greenberg 2/79 for 8-cpu port expander 49 " Modified by J. A. Bush 3/80 to store fault time in machine conditions 50 " Modified by B. Greenberg 6/23/80 for loop & unlock meters 51 " Modified by J. A. Bush 8/80 for the DPS8/70M CPU 52 " Modified by E.N. Kittlitz (per WOS) to not update PF count on gtus segments. 53 " Modified by E.N. Kittlitz 11/17/80 for new dtu/dtm calculation. 54 " Modified by J. Bongiovanni 1/81 for fault_counters 55 " Modified by M. Pierret 11/80 to use page pinning algorithm 56 " Modified by J. Bongiovanni 2/81 to remove cam/cache code 57 " Modified by W. Olin Sibert, 2/26/81, for ADP conversion, phase one 58 " Modified by C. Hornig, January 1982, to only CAM if segment accessible. 59 " Modified by J. Bongiovanni, January 1982, to remove PML code, add 60 " extended page fault trace type 61 " Modified by J. Bongiovanni, February 1982, for stocks 62 " Modified by E. N. Kittlitz, 6/21/82, summer solstice sacrifice of core map. 63 " Modified by J. Bongiovanni, July 1982, scs$trouble_processid, scavenger 64 " Modified by J. Bongiovanni, October 1982, synchronized segment support, 65 " don't decrement quota through zero 66 " Modified by E. N. Kittlitz (Massachusetts agent for W.O. Sibert) to pin those pages again. 67 " Modified by Keith Loepere, October 1983, for paged unpaged dseg and 68 " for bug fix to find_core loop. 69 " Modified by R. Coppola 10/13/83 to meter DF1 on per-cpu basis and 70 " added code to meter cache errors when mc_trace'ing 71 " Modified by BIM 83-12-03 for pgt_ IPS signal. 72 " Modified by TO 84-10-17 to remove write_limit and disk_run'ing. 73 " Modified by Keith Loepere, December 1984, for covert channel 74 " detection and a little cleanup. 75 " Modified by Keith Loepere, January 1985, for updated covert 76 " channel detection. 77 " Modified by Keith Loepere, January 1985, for fix to aste.records race. 78 " Modified by Tom Oke, February 1985, to remove a missed write_limit 79 " and disk run. 80 " 81 " The following entries exist within this procedure (given by entry name to "page"): 82 " 83 " done used by the paging DIMs to signal the completion 84 " of an I/O request. 85 " 86 " enter_data places an entry into the per-process trace table 87 " 88 " fault transferred to upon page faults from the fault vector 89 " 90 " lock_ptl used to lock the page table lock 91 " 92 " pccleanup used to get a page out of core 93 " 94 " pread used to read a page into core 95 " 96 " pwrite used to write a page out of core 97 " 98 " reset_working_set is obsolete and does nothing 99 " 100 " trace_marker places a user marker entry into the per-process 101 " trace table 102 " 103 " unlock_ptl used to unlock the page table lock 104 " 105 " 106 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 107 108 " 109 " 110 " 111 " The very beginning 112 " 000000 113 name page_fault 114 115 000103 116 entry wait_return,pmut_unlock_ptl 000077 117 entry ptl_wait_return 118 000775 119 segdef check_accessible " See whether anyone can access segment 002265 120 segdef cleanup_page " Evict one page from memory 000016 121 segdef cme_offsets " Core map ITS pointers, 1 per cme word 000016 122 segdef cme_0,cme_bp,cme_fp " ITS to word 0 of cme 000020 123 segdef cme_1,cme_devadd,cme_flags " ITS to word 1 of cme 000022 124 segdef cme_2,cme_astep,cme_ptwp " ITS to word 2 of cme 000024 125 segdef cme_3,cme_pin_counter,cme_synch_page_entryp " ITS to word 3 of cme 126 002764 127 segdef delete_mm_frame " Clear out and deconfigure main memory frame 002111 128 segdef disk_offline_event " Wait event for disk offline 002100 129 segdef disk_offlinep " Check whether disk is offline 002550 130 segdef done " Post completion of I/O 002551 131 segdef done_ " Post completion with PTL locked 000530 132 segdef enter_data " Enter per-process trace data 001062 133 segdef fault " Page Fault entry 002146 134 segdef find_core_ " Find a frame of core 000132 135 segdef init_savex " Init x7 save stack 000131 136 segdef init_savex_bb " Init x7 save stack, set bb -> sst 000040 137 segdef lock_ptl " Lock PTL 000121 138 segdef lock_ptl_ext " Lock PTL from outside ALm PC 000041 139 segdef lock_ptl_no_lp " Lock PTL, don't save lp 000014 140 segdef my_lp " lp for bound_page_control 002623 141 segdef notify_return " Side-door return from pxss$notify_page 000127 142 segdef page_fault_error " Call to page_error - fatal 001547 143 segdef pcleanup " Entry to get a page out of core 000010 144 segdef pf_prs " Pointer to saved prs on page fault 000012 145 segdef pf_scuinfo " Pointer to SCU data on page fault 000642 146 segdef pre_page_info " Obsolete 001467 147 segdef pread " Entry to read a page 001526 148 segdef pwrite " Entry to write a page 001600 149 segdef read_page_abs " Same as read_page, but OOPV not allowed 000641 150 segdef reset_working_set " Obsolete 000136 151 segdef savex " Save x7 in save stack for recursive use 000244 152 segdef set_up_abs_seg " Setup abs_seg_1 000211 153 segdef thread_in " Thread CME as MRU 000220 154 segdef thread_lru_ext " Thread CME as LRU, ouside of ALM PC 000173 155 segdef thread_out " Thread CME out of used list 000145 156 segdef thread_to_lru " Thread CME as LRU 000521 157 segdef trace_marker " Add user marker to per-process trace 000514 158 segdef trace_restart_fault " Add restart_fault to per-process trace 000525 159 segdef trace_scheduling " Add reschedule to per-process trace 000505 160 segdef trace_signaller " Add signaller to per-process trace 000120 161 segdef unlock_ptl " Unlock PTL 000113 162 segdef unlock_ptl_ext " Unlock PTL, outside of ALM PC 000141 163 segdef unsavex " Pop save stack, tra 0,x7 000143 164 segdef unsavex_1 " Pop save stack, tra 1,x7 002144 165 segdef unsavex_2 " Pop save stack, tra 2,x7 002426 166 segdef write_page " Write page out if necessary 167 " 168 169 include page_regs 1-1 " 1-2 " Begin include file page_regs.incl.alm 1-3 " 1-4 " 11/12/74 by BSG 1-5 " 1-6 000000 1-7 equ .tem,0 temporary (may be used at any time) 000000 1-8 equ .nxt,0 threading temp, points to next cme/pdme 000001 1-9 equ .lst,1 threading temp, points to last cme/pdme 000001 1-10 equ .pdme,1 pointer to pdme of interest 000002 1-11 equ .ptw,2 pointer to PTW of interest 000003 1-12 equ .aste,3 pointer to AST entry of interest 000004 1-13 equ .cme,4 pointer to core map entry of interest 000005 1-14 equ .x5,5 not used consistently 000006 1-15 equ .2ret,6 auxiliary one-level-deep call return 000007 1-16 equ .ret,7 standard call return 1-17 1-18 " 1-19 " End include file page_regs.incl.alm 1-20 " 170 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 171 " 172 " Temporary storage, INCLUDE files, and constants 173 " 174 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 175 176 000010 177 link prds_link,prds$ 000012 178 link abs_seg1_link,abs_seg1$ 179 180 include stack_frame 2-1 " 2-2 " BEGIN INCLUDE FILE ... stack_frame.incl.alm 6/72 RBS 2-3 " 2-4 " Modified: 16 Dec 1977, D. Levin - to add fio_ps_ptr 2-5 " Modified: 3 Feb 1978, P. Krupp - to add run_unit_manager_bit & main_proc_bit 2-6 " Modified: 21 March 1978, D. Levin - change fio_ps_ptr to support_ptr 2-7 " 000020 2-8 equ stack_frame.prev_sp,16 000020 2-9 equ stack_frame.condition_word,16 000022 2-10 equ stack_frame.next_sp,18 000022 2-11 equ stack_frame.signaller_word,18 000024 2-12 equ stack_frame.return_ptr,20 000026 2-13 equ stack_frame.entry_ptr,22 000030 2-14 equ stack_frame.operator_ptr,24 000030 2-15 equ stack_frame.lp_ptr,24 000032 2-16 equ stack_frame.arg_ptr,26 000034 2-17 equ stack_frame.static_ptr,28 000035 2-18 equ stack_frame.support_ptr,29 " only used by fortran I/O 000036 2-19 equ stack_frame.on_unit_rel_ptrs,30 000037 2-20 equ stack_frame.operator_ret_ptr,31 000037 2-21 equ stack_frame.translator_id,31 000040 2-22 equ stack_frame.regs,32 000060 2-23 equ stack_frame.min_length,48 000020 2-24 equ stack_frame.flag_word,16 020000 2-25 bool stack_frame.main_proc_bit,020000 (DL) 010000 2-26 bool stack_frame.run_unit_manager,010000 (DL) 004000 2-27 bool stack_frame.signal_bit,004000 (DL) 002000 2-28 bool stack_frame.crawl_out_bit,002000 (DL) 001000 2-29 bool stack_frame.signaller_bit,001000 (DL) 000400 2-30 bool stack_frame.link_trap_bit,000400 (DL) 000200 2-31 bool stack_frame.support_bit,000200 (DL) 000100 2-32 bool stack_frame.condition_bit,000100 (DL) 2-33 2-34 " 2-35 " END INCLUDE FILE ... stack_frame.incl.alm 2-36 " 181 include stack_header 3-1 " BEGIN INCLUDE FILE ... stack_header.incl.alm 3/72 Bill Silver 3-2 " 3-3 " modified 7/76 by M. Weaver for *system links and more system use of areas 3-4 " modified 3/77 by M. Weaver to add rnt_ptr 3-5 " modified 7/77 by S. Webber to add run_unit_depth and assign_linkage_ptr 3-6 " modified 6/83 by J. Ives to add trace_frames and in_trace. 3-7 3-8 " HISTORY COMMENTS: 3-9 " 1) change(86-06-24,DGHowe), approve(86-06-24,MCR7396), 3-10 " audit(86-08-05,Schroth), install(86-11-03,MR12.0-1206): 3-11 " added the heap_header_ptr definition 3-12 " 2) change(86-08-12,Kissel), approve(86-08-12,MCR7473), 3-13 " audit(86-10-10,Fawcett), install(86-11-03,MR12.0-1206): 3-14 " Modified to support control point management. These changes were 3-15 " actually made in February 1985 by G. Palter. 3-16 " 3) change(86-10-22,Fawcett), approve(86-10-22,MCR7473), 3-17 " audit(86-10-22,Farley), install(86-11-03,MR12.0-1206): 3-18 " Remove the old_lot pointer and replace it with cpm_data_ptr. Use the 18 3-19 " bit pad after cur_lot_size for the cpm_enabled. This was done to save 3-20 " some space int the stack header and change the cpd_ptr unal to 3-21 " cpm_data_ptr (ITS pair). 3-22 " END HISTORY COMMENTS 3-23 000004 3-24 equ stack_header.cpm_data_ptr,4 ptr to control point for this stack 000006 3-25 equ stack_header.combined_stat_ptr,6 ptr to separate static area 3-26 000010 3-27 equ stack_header.clr_ptr,8 ptr to area containing linkage sections 000012 3-28 equ stack_header.max_lot_size,10 number of words allowed in lot (DU) 000012 3-29 equ stack_header.main_proc_invoked,10 nonzero if main proc was invoked in run unit (DL) 000012 3-30 equ stack_header.run_unit_depth,10 number of active run units stacked (DL) 000013 3-31 equ stack_header.cur_lot_size,11 DU number of words (entries) in lot 000013 3-32 equ stack_header.cpm_enabled,11 DL non-zero if control point management is enabled 000014 3-33 equ stack_header.system_free_ptr,12 ptr to system storage area 000016 3-34 equ stack_header.user_free_ptr,14 ptr to user storage area 3-35 000020 3-36 equ stack_header.parent_ptr,16 ptr to parent stack or null 000022 3-37 equ stack_header.stack_begin_ptr,18 ptr to first stack frame 000024 3-38 equ stack_header.stack_end_ptr,20 ptr to next useable stack frame 000026 3-39 equ stack_header.lot_ptr,22 ptr to the lot for the current ring 3-40 000030 3-41 equ stack_header.signal_ptr,24 ptr to signal proc for current ring 000032 3-42 equ stack_header.bar_mode_sp,26 value of sp before entering bar mode 000034 3-43 equ stack_header.pl1_operators_ptr,28 ptr: pl1_operators_$operator_table 000036 3-44 equ stack_header.call_op_ptr,30 ptr to standard call operator 3-45 000040 3-46 equ stack_header.push_op_ptr,32 ptr to standard push operator 000042 3-47 equ stack_header.return_op_ptr,34 ptr to standard return operator 000044 3-48 equ stack_header.ret_no_pop_op_ptr,36 ptr: stand. return/ no pop operator 000046 3-49 equ stack_header.entry_op_ptr,38 ptr to standard entry operator 3-50 000050 3-51 equ stack_header.trans_op_tv_ptr,40 ptr to table of translator operator ptrs 000052 3-52 equ stack_header.isot_ptr,42 pointer to ISOT 000054 3-53 equ stack_header.sct_ptr,44 pointer to System Condition Table 000056 3-54 equ stack_header.unwinder_ptr,46 pointer to unwinder for current ring 3-55 000060 3-56 equ stack_header.sys_link_info_ptr,48 ptr to *system link name table 000062 3-57 equ stack_header.rnt_ptr,50 ptr to reference name table 000064 3-58 equ stack_header.ect_ptr,52 ptr to event channel table 000066 3-59 equ stack_header.assign_linkage_ptr,54 ptr to area for hcs_$assign_linkage calls 000070 3-60 equ stack_header.heap_header_ptr,56 ptr to heap header. 000072 3-61 equ stack_header.trace_frames,58 stack of trace_catch_ frames 000073 3-62 equ stach_header.trace_top_ptr,59 trace pointer 000074 3-63 equ stack_header.in_trace,60 trace antirecurse bit 000100 3-64 equ stack_header_end,64 length of stack header 3-65 3-66 3-67 3-68 000000 3-69 equ trace_frames.count,0 number of trace frames on stack 000001 3-70 equ trace_frames.top_ptr,1 packed pointer to top one 3-71 3-72 " The following constant is an offset within the pl1 operators table. 3-73 " It references a transfer vector table. 3-74 000551 3-75 bool tv_offset,551 3-76 3-77 3-78 " The following constants are offsets within this transfer vector table. 3-79 001170 3-80 equ call_offset,tv_offset+271 001171 3-81 equ push_offset,tv_offset+272 001172 3-82 equ return_offset,tv_offset+273 001173 3-83 equ return_no_pop_offset,tv_offset+274 001174 3-84 equ entry_offset,tv_offset+275 3-85 3-86 3-87 " END INCLUDE FILE stack_header.incl.alm 182 include trace_types 4-1 " Begin include file trace_types.incl.alm 4-2 000000 4-3 bool page_fault_type,000000 020000 4-4 bool seg_fault_start,020000 030000 4-5 bool seg_fault_end,030000 040000 4-6 bool linkage_fault_start,040000 050000 4-7 bool linkage_fault_end,050000 060000 4-8 bool boundfault_start,060000 070000 4-9 bool boundfault_end,070000 100000 4-10 bool signaller_type,100000 110000 4-11 bool restart_fault_type,110000 120000 4-12 bool reschedule_type,120000 130000 4-13 bool marker_type,130000 140000 4-14 bool interrupt_type,140000 170000 4-15 bool extended_page_fault_type,170000 4-16 4-17 " End include file trace_types.incl.alm 183 include sys_trouble_codes 5-1 " Begin include file ...... sys_trouble_codes.incl.alm ...... Feb. 24, 1982 5-2 000001 5-3 equ trbl_prds_pf,1 page fault while on prds 000002 5-4 equ trbl_prds_fi,2 fault/interrupt while on prds 000003 5-5 equ trbl_idle_flt,3 fault in idle process 000004 5-6 equ trbl_ptl_fi,4 fault/interrupt with ptl set 000005 5-7 equ trbl_illeg_flt,5 unrecognized fault 000006 5-8 equ trbl_unexp_flt,6 unexpected fault 000007 5-9 equ trbl_exec_flt,7 operator caused execute fault 000010 5-10 equ trbl_oosb_prds,8 OOSB on prds with target prds 000011 5-11 equ trbl_fault_masked,9 interrupts masked in user-ring 000012 5-12 equ trbl_fim_flt,10 Fault while in bound_interceptors 000013 5-13 equ trbl_r0_drl_flt,11 derail in ring 0 5-14 5-15 " End of include file ...... sys_trouble_codes.incl.alm 184 include mode_reg 6-1 " BEGIN INCLUDE FILE mode_reg.incl.alm 6-2 " 777770 6-3 bool mr.floating_fv_mask,777770 floating fault vector address (DU) 000001 6-4 bool mr.trap_address_match,000001 trap on address match flag 777400 6-5 bool mr.opcode_field,777400 opcode field of mode reg (DL) 000200 6-6 bool mr.trap_opcode_match,000200 trap on opcode match flag 000060 6-7 bool mr.enable_hist,000060 enable strobe of history reg for most faults 000004 6-8 bool mr.enable_hfp,000004 enable hex floating point (DL) 000001 6-9 bool mr.enable_mr,000001 enable the mode register (DL) 6-10 6-11 " 6-12 " END INCLUDE FILE mode_reg.incl.alm 185 include pxss_page_stack 7-1 " 7-2 " BEGIN INCLUDE FILE pxss_page_stack.incl.alm July 1982 7-3 " 7-4 000006 7-5 equ pxss_stack_size,6 " size of x7 save stack used by pxss 000015 7-6 equ stack_size,13 " size of x7 save stack used by page control 7-7 7-8 temp8 notify_regs 7-9 temp save_stack(stack_size),stackp 7-10 tempd pre_time,pre_temp(3) 7-11 tempd arg(11),temp 7-12 tempd stock_temp,volmap_temp,volmap_save_ptr 7-13 tempd tmp_ev_channel,tmp_ev_message,apt_ptr,getwork_temp,delta_t 7-14 tempd lock_volmap_temp_1,free_store_temp_1,volmap_save_sdw 7-15 temp cmep,total_steps,temp1,temp2,volmap_temp_1,volmap_temp_2 7-16 temp pvtx,core_add,count,entry_sw,ptp_astep,inter,devadd,errcode 7-17 temp tmp_ring,dev_signal,before,depth,x5 7-18 temp tmp_event,pxss_save_stack(pxss_stack_size),pxss_stackp 7-19 temp stock_temp_1,stock_temp_2,free_store_temp,savx2_3 7-20 temp lock_volmap_temp 7-21 temp volmap_page_temp 7-22 tempd free_store_start_time,post_io_start_time 7-23 7-24 temp done_astep,volmap_page_temp_1 7-25 temp vtocx,pageno 7-26 7-27 tempd page_synch_temp,page_synch_time 7-28 temp page_synch_index 7-29 7-30 temp pc_err_type,pc_err_ptwp,pc_err_astep 7-31 tempd pf_sdw 7-32 7-33 temp pad(22) " to grow compatibly 7-34 " 7-35 " END INCLUDE FILE pxss_page_stack.incl.alm 7-36 " 186 include page_error_types 8-1 8-2 8-3 "BEGIN INCLUDE FILE page_error_types.incl.alm 8-4 8-5 8-6 "Created 10/25/82 1330.1 edt Mon by convert_include_file, 8-7 " Version of 07/15/82 2204.3 edt Thu. 8-8 8-9 "Made from >user_dir_dir>Multics>Bongiovanni>hardcore_test_dir>dm_dir>page_error_types.incl.pl1, 8-10 " modified 10/25/82 1330.1 edt Mon 8-11 8-12 000000 8-13 equ PAGE_ERROR_RQO,0 " MANIFEST 000001 8-14 equ PAGE_ERROR_IOERR,1 " MANIFEST 000002 8-15 equ PAGE_ERROR_BADFAULT,2 " MANIFEST 000003 8-16 equ PAGE_ERROR_INVERROR,3 " MANIFEST 000002 8-17 equ PAGE_ERROR_MAXTYPE,2 " MANIFEST 8-18 8-19 "END INCLUDE FILE page_error_types.incl.alm 187 include page_info 9-1 " BEGIN INCLUDE FILE page_info.incl.alm -- 6/72 9-2 " 9-3 " Modified 02/22/81, W. Olin Sibert, for ADP conversion 9-4 " Modified 06/23/82, E. N. Kittlitz, to move core map. 9-5 " 000012 9-6 equ page_power,10 " 2**10 = size of page 000001 9-7 bool df1,000001 " directed fault 1 on page fault 9-8 777777 740000 9-9 bool address_mask,777777740000 " Mask for PTW add, add_type compares 9-10 " Use as =v36/address_mask 9-11 400000 9-12 bool ptw.nulled,400000 " flag for testing addresses 9-13 100000 9-14 bool int,100000 " Disk dim flags 000020 9-15 bool pri,000020 000004 9-16 bool no_post,000004 9-17 000003 9-18 equ sst,3 " Standard pointer and index 000003 9-19 equ pdm,sst " register usage 000003 9-20 equ ast,sst 000002 9-21 equ ptw,2 9-22 9-23 " Various AST masks which are not 9-24 " expressible in standard notation 9-25 " 777000 9-26 bool aste.csl_mask_inner,777000 777000 9-27 bool aste.records_mask_inner,777000 9-28 000000 9-29 equ fault_entry,0 " Flags indicating how we 000001 9-30 equ read_entry,1 " were entered 000002 9-31 equ write_entry,2 000003 9-32 equ pre_page_entry,3 000004 9-33 equ post_purge_entry,4 000005 9-34 equ pd_flush_entry,5 000006 9-35 equ evict_entry,6 000007 9-36 equ abs_wire_entry,7 000010 9-37 equ cleanup_entry,8 9-38 9-39 " Constants for manipulating core addresses and PTWs. The core address 9-40 " is a fixed bin (35) aligned, and must be moved to/from the appropriate 9-41 " field in the SDW or PTW. 9-42 " 9-43 iftarget l68 777760 bool ptw_add_mask,777760 " Page number 777760 bool sdw_add_mask,777760 " Page number 000077 777777 bool coreadd_mask,000077777777 " Mask for coreadd in AL 000014 equ coreadd_to_ptw.ls,12 000014 equ coreadd_to_sdw.ls,12 000014 equ ptw_to_coreadd.rl,12 000014 equ sdw_to_coreadd.rl,12 000002 equ cmep_to_ptw.ls,2 000002 equ cmep_to_sdw.ls,2 000002 equ ptw_to_cmep.rl,2 000024 equ ptw_to_cmep_lower.rl,20 000002 equ sdw_to_cmep.rl,2 " ifend 9-58 9-59 iftarget adp " bool ptw_add_mask,177777 " Page number " bool sdw_add_mask,777774 " Page number " bool coreadd_mask,000377777777 " Mask for coreadd in AL " " equ coreadd_to_ptw.ls,8 " equ coreadd_to_sdw.ls,10 " equ ptw_to_coreadd.rl,8 " equ sdw_to_coreadd.rl,10 " equ cmep_to_ptw.rl,2 " Must shift backwards " equ cmep_to_sdw.ls,0 " equ ptw_to_cmep.ls,2 " Must shift backwards " equ ptw_to_cmep_lower.rl,16 " equ sdw_to_cmep.rl,0 " ifend 9-74 000012 9-75 equ cmep_to_coreadd.rl,10 .cmep to coreadd 000012 9-76 equ coreadd_to_cmep.ls,10 coreadd to .cmep 9-77 9-78 " 9-79 " 9-80 " Assorted general purpose macros used in PC. These will be changed 9-81 " when address types are changed for 20 bit addresses. Additionally, 9-82 " for more accurate metering on the ADP, the metering macros should 9-83 " modified to update the metering cells uninterruptably. 9-84 " 9-85 9-86 macro missing 1 9-87 ife &2,() 2 9-88 warn (&1: Argument missing.) 3 9-89 ifend 4 9-90 &end 9-91 " 9-92 " staddra and staddrq store the address portion (upper 22 bits) of the A or Q 9-93 " into the specified location. 9-94 " 9-95 macro staddra 1 9-96 missing staddra,&1 2 9-97 era &F1 3 9-98 ana =v36/address_mask 4 9-99 ersa &F1 5 9-100 &end 9-101 9-102 macro staddrq 1 9-103 missing staddrq,&1 2 9-104 erq &F1 3 9-105 anq =v36/address_mask 4 9-106 ersq &F1 5 9-107 &end 9-108 9-109 " Macros for metering 6/23/80 9-110 9-111 macro read_clock 1 9-112 iftarget l68 2 9-113 rccl sys_info$clock_,* 3 9-114 ifend 4 9-115 iftarget adp 5 9-116 rccl 0 6 9-117 ifend 7 9-118 &end 9-119 9-120 macro increment 1 9-121 missing increment,&1 2 9-122 aos &1 3 9-123 &end 9-124 9-125 macro store_clock 1 9-126 missing store_clock,&1 2 9-127 read_clock 3 9-128 staq &1 4 9-129 &end 9-130 9-131 macro meter_time 1 9-132 missing meter_time,&3 2 9-133 increment &3 3 9-134 read_clock 4 9-135 sbaq &1 5 9-136 adaq &2 6 9-137 staq &2 7 9-138 &end 9-139 9-140 " END INCLUDE FILE page_info.incl.alm 188 include apte 10-1 " BEGIN INCLUDE FILE apte.incl.alm 10-2 " 10-3 " 10-4 " HISTORY COMMENTS: 10-5 " 1) change(86-08-09,Kissel), approve(86-08-12,MCR7479), 10-6 " audit(86-10-08,Fawcett), install(86-11-03,MR12.0-1206): 10-7 " Added the ipc_r_offset, ipc_r_factor, and apad fields from the pl1 10-8 " include file to support async event channel wakeups. 10-9 " END HISTORY COMMENTS 10-10 000000 10-11 equ apte.thread,0 000000 10-12 equ apte.fp,0 "UPPER 000000 10-13 equ apte.bp,0 "LOWER 10-14 000001 10-15 equ apte.flags,1 000001 10-16 equ apte.sentinel,1 400000 10-17 bool apte.mbz,400000 "DU 200000 10-18 bool apte.wakeup_waiting,200000 "DU 100000 10-19 bool apte.stop_pending,100000 "DU 040000 10-20 bool apte.pre_empted,040000 "DU 020000 10-21 bool apte.hproc,020000 "DU 010000 10-22 bool apte.loaded,010000 "DU 004000 10-23 bool apte.eligible,004000 "DU 002000 10-24 bool apte.idle,002000 "DU 001000 10-25 bool apte.interaction,001000 "DU 000400 10-26 bool apte.pre_empt_pending,000400 "DU 000200 10-27 bool apte.default_procs_required,000200 "DU 000100 10-28 bool apte.realtime_burst,000100 "DU 000040 10-29 bool apte.always_loaded,000040 "DU 000020 10-30 bool apte.dbr_loaded,000020 "DU 000010 10-31 bool apte.being_loaded,000010 "DU 000004 10-32 bool apte.shared_stack_0,000004 "DU 000002 10-33 bool apte.page_wait_flag,000002 "DU 000001 10-34 bool apte.firstsw,000001 "DU 000001 10-35 equ apte.state,1 "LOWER 10-36 000002 10-37 equ apte.page_faults,2 10-38 000003 10-39 equ apte.processid,3 10-40 000004 10-41 equ apte.te,4 10-42 000005 10-43 equ apte.ts,5 10-44 000006 10-45 equ apte.ti,6 10-46 000007 10-47 equ apte.timax,7 10-48 000010 10-49 equ apte.ipc_pointers,8 000010 10-50 equ apte.event_thread,8 "UPPER 10-51 000011 10-52 equ apte.ips_message,9 10-53 000012 10-54 equ apte.asteps,10 000012 10-55 equ apte.pds,10 "UPPER 000012 10-56 equ apte.dseg,10 "LOWER 10-57 000013 10-58 equ apte.prds,11 "UPPER 000013 10-59 equ apte.savex7,11 "LOWER 10-60 000014 10-61 equ apte.term_processid,12 10-62 000015 10-63 equ apte.lock_id,13 000016 10-64 equ apte.time_used_clock,14 10-65 000020 10-66 equ apte.wait_event,16 10-67 000021 10-68 equ apte.wct_index,17 "UPPER 000021 10-69 equ apte.flags2,17 "LOWER 400000 10-70 bool apte.prior_sched,400000 "DL 000023 10-71 equ apte.chans_offset,19 374000 10-72 bool apte.special_chans,374000 "DL 000021 10-73 equ apte.batch_word,17 000010 10-74 bool apte.batch,000010 "DL 000007 10-75 bool apte.pr_tag_mask,000007 10-76 000022 10-77 equ apte.state_change_time,18 10-78 000024 10-79 equ apte.alarm_event,20 10-80 000026 10-81 equ apte.alarm_time_thread,22 "UPPER 000026 10-82 equ apte.alarm_time,22 10-83 000030 10-84 equ apte.term_channel,24 10-85 000032 10-86 equ apte.ws_size,26 10-87 000033 10-88 equ apte.temax,27 10-89 000034 10-90 equ apte.deadline,28 10-91 000036 10-92 equ apte.lock,30 10-93 000037 10-94 equ apte.cpu_monitor,31 units = 1/1024 sec 10-95 000040 10-96 equ apte.paging_measure,32 10-97 000042 10-98 equ apte.access_authorization,34 "DOUBLE WORD 400000 10-99 bool apte.no_ipc_check,400000 "DL 10-100 000044 10-101 equ apte.dbr,36 10-102 000046 10-103 equ apte.virtual_cpu_time,38 10-104 000050 10-105 equ apte.ittes_sent,40 000051 10-106 equ apte.ittes_got,41 10-107 000052 10-108 equ apte.current_response_state,42 " DU 000053 10-109 equ apte.number_processing,43 000054 10-110 equ apte.last_response_state_time,44 000056 10-111 equ apte.total_processing_time,46 000060 10-112 equ apte.begin_interaction_vcpu,48 10-113 000062 10-114 equ apte.saved_temax,50 000063 10-115 equ apte.procs_required,51 776000 10-116 bool apte.procs_required_mask,776000 " DU 10-117 000064 10-118 equ apte.ipc_r_offset,52 000065 10-119 equ apte.ipc_r_factor,53 000066 10-120 equ apte.apad,54 10-121 000100 10-122 equ size_of_apt_entry,64 10-123 10-124 " MISC OLD DCLS. 10-125 000013 10-126 equ apte.le_shift,11 000175 10-127 bool apte.timer_factor,175 10-128 10-129 10-130 " 10-131 " END INCLUDE FILE apte.incl.alm 10-132 " 189 include sst 11-1 11-2 11-3 "BEGIN INCLUDE FILE sst.incl.alm 11-4 11-5 11-6 "Created 01/14/85 1523.7 est Mon by convert_include_file, 11-7 " Version of 01/09/85 0954.4 est Wed. 11-8 11-9 "Made from >Pool>m>loe>incl>sst.incl.pl1, 11-10 " modified 01/09/85 1148.3 est Wed 11-11 11-12 " 11-13 " Structure sst 11-14 " 001000 11-15 equ sst_size,512 11-16 11-17 000000 11-18 equ sst.space,0 000010 11-19 equ sst.pre_page_time,8 " DOUBLE 000012 11-20 equ sst.post_purge_time,10 " DOUBLE 000014 11-21 equ sst.post_in_core,12 000015 11-22 equ sst.thrashing,13 000016 11-23 equ sst.npfs_misses,14 000017 11-24 equ sst.salv,15 000020 11-25 equ sst.ptl,16 000021 11-26 equ sst.astl,17 000022 11-27 equ sst.astl_event,18 11-28 000023 11-29 equ sst.astl_notify_requested_word,19 400000 11-30 bool sst.astl_notify_requested,400000 " DU 11-31 000024 11-32 equ sst.nused,20 000025 11-33 equ sst.ptwbase,21 000026 11-34 equ sst.tfreep,22 000030 11-35 equ sst.astap,24 000032 11-36 equ sst.ptl_wait_ct,26 000033 11-37 equ sst.astsize,27 000034 11-38 equ sst.cmesize,28 000036 11-39 equ sst.root_astep,30 000040 11-40 equ sst.pts,32 000044 11-41 equ sst.level,36 " LEVEL 2 11-42 000044 11-43 equ sst.ausedp,36 " UPPER 000044 11-44 equ sst.no_aste,36 " LOWER 11-45 000050 11-46 equ sst.atempp,40 " UPPER 000050 11-47 equ sst.atempp1,40 " LOWER 11-48 000051 11-49 equ sst.dm_enabled_word,41 400000 11-50 bool sst.dm_enabled,400000 " DU 11-51 000052 11-52 equ sst.ainitp,42 " UPPER 000052 11-53 equ sst.ainitp1,42 " LOWER 11-54 000053 11-55 equ sst.strsize,43 000054 11-56 equ sst.cmp,44 11-57 000056 11-58 equ sst.usedp,46 " UPPER 11-59 000057 11-60 equ sst.wtct,47 11-61 000060 11-62 equ sst.startp,48 " UPPER 11-63 000061 11-64 equ sst.removep,49 " UPPER 11-65 000062 11-66 equ sst.double_write,50 000063 11-67 equ sst.temp_w_event,51 000064 11-68 equ sst.root_pvtx,52 11-69 000065 11-70 equ sst.nolock_word,53 400000 11-71 bool sst.nolock,400000 " DU 11-72 000066 11-73 equ sst.fc_skips_pinned,54 000067 11-74 equ sst.cl_skips_pinned,55 000070 11-75 equ sst.ast_ht_ptr,56 000072 11-76 equ sst.ast_ht_n_buckets,58 000073 11-77 equ sst.ast_ht_uid_mask,59 000074 11-78 equ sst.meter_ast_locking,60 000075 11-79 equ sst.checksum_filemap,61 000076 11-80 equ sst.page_read_errors,62 000077 11-81 equ sst.page_write_errors,63 000100 11-82 equ sst.cycle_pv_allocation,64 000101 11-83 equ sst.n_trailers,65 000102 11-84 equ sst.synch_activations,66 000103 11-85 equ sst.synch_skips,67 000104 11-86 equ sst.lock_waits,68 000105 11-87 equ sst.total_locks_set,69 000106 11-88 equ sst.pdir_page_faults,70 000107 11-89 equ sst.level_1_page_faults,71 000110 11-90 equ sst.dir_page_faults,72 000111 11-91 equ sst.ring_0_page_faults,73 000112 11-92 equ sst.rqover,74 000113 11-93 equ sst.pc_io_waits,75 000114 11-94 equ sst.steps,76 000115 11-95 equ sst.needc,77 000116 11-96 equ sst.ceiling,78 000117 11-97 equ sst.ctwait,79 000120 11-98 equ sst.wired,80 000121 11-99 equ sst.laps,81 000122 11-100 equ sst.skipw,82 000123 11-101 equ sst.skipu,83 000124 11-102 equ sst.skipm,84 000125 11-103 equ sst.skipos,85 000126 11-104 equ sst.aused,86 000127 11-105 equ sst.damaged_ct,87 000130 11-106 equ sst.deact_count,88 000131 11-107 equ sst.demand_deact_attempts,89 000132 11-108 equ sst.demand_deactivations,90 000133 11-109 equ sst.reads,91 000143 11-110 equ sst.writes,99 000153 11-111 equ sst.short_pf_count,107 000154 11-112 equ sst.loop_locks,108 000156 11-113 equ sst.loop_lock_time,110 " DOUBLE 000160 11-114 equ sst.cpu_sf_time,112 " DOUBLE 000162 11-115 equ sst.total_sf_pf,114 000163 11-116 equ sst.total_sf,115 000164 11-117 equ sst.pre_page_size,116 000165 11-118 equ sst.post_list_size,117 000166 11-119 equ sst.post_purgings,118 000167 11-120 equ sst.post_purge_calls,119 000170 11-121 equ sst.pre_page_calls,120 000171 11-122 equ sst.pre_page_list_size,121 000172 11-123 equ sst.pre_page_misses,122 000173 11-124 equ sst.pre_pagings,123 000174 11-125 equ sst.wire_proc_data,124 " DOUBLE 000214 11-126 equ sst.abs_wired_count,140 000215 11-127 equ sst.system_type,141 000216 11-128 equ sst.wired_copies,142 000217 11-129 equ sst.recopies,143 000220 11-130 equ sst.first_core_block,144 000221 11-131 equ sst.last_core_block,145 000222 11-132 equ sst.fw_retries,146 000223 11-133 equ sst.pvhtp,147 000224 11-134 equ sst.askipsize,148 000230 11-135 equ sst.aneedsize,152 000234 11-136 equ sst.stepsa,156 000235 11-137 equ sst.askipsehs,157 000236 11-138 equ sst.asearches,158 000237 11-139 equ sst.askipslevel,159 000240 11-140 equ sst.askipsinit,160 000241 11-141 equ sst.acost,161 000242 11-142 equ sst.askipslock,162 000243 11-143 equ sst.askipdius,163 000244 11-144 equ sst.alaps,164 000245 11-145 equ sst.updates,165 000246 11-146 equ sst.setfaults_all,166 000247 11-147 equ sst.setfaults_acc,167 000250 11-148 equ sst.total_bf,168 000251 11-149 equ sst.total_bf_pf,169 000252 11-150 equ sst.cpu_bf_time,170 " DOUBLE 000254 11-151 equ sst.asteps,172 000260 11-152 equ sst.ast_locked_at_time,176 " DOUBLE 000262 11-153 equ sst.ast_locked_total_time,178 " DOUBLE 000264 11-154 equ sst.ast_lock_wait_time,180 " DOUBLE 000266 11-155 equ sst.ast_locking_count,182 000267 11-156 equ sst.cleanup_count,183 000270 11-157 equ sst.cleanup_real_time,184 " DOUBLE 000272 11-158 equ sst.tree_count,186 000372 11-159 equ sst.pp_meters,250 11-160 000472 11-161 equ sst.wusedp,314 " UPPER 11-162 000473 11-163 equ sst.write_hunts,315 000474 11-164 equ sst.claim_skip_cme,316 000475 11-165 equ sst.claim_skip_free,317 000476 11-166 equ sst.claim_notmod,318 000477 11-167 equ sst.claim_passed_used,319 000500 11-168 equ sst.claim_skip_ptw,320 000501 11-169 equ sst.claim_writes,321 000502 11-170 equ sst.claim_steps,322 000503 11-171 equ sst.pre_seeks_failed,323 000504 11-172 equ sst.resurrections,324 000505 11-173 equ sst.volmap_seg_page_faults,325 000506 11-174 equ sst.oopv,326 000507 11-175 equ sst.dblw_resurrections,327 000510 11-176 equ sst.sgm_time,328 " DOUBLE 000512 11-177 equ sst.sgm_pf,330 000513 11-178 equ sst.bad_sgms,331 000514 11-179 equ sst.sgm_sgft,332 000515 11-180 equ sst.good_sgms,333 000516 11-181 equ sst.claim_runs,334 000517 11-182 equ sst.activations,335 000520 11-183 equ sst.dir_activations,336 000521 11-184 equ sst.hedge_updatevs,337 000522 11-185 equ sst.hedge_writes,338 000523 11-186 equ sst.evict_recover_data,339 " LEVEL 2 11-187 000523 11-188 equ sst.evict_ptp,339 " UPPER 000523 11-189 equ sst.evict_phmbit,339 " LOWER 11-190 000524 11-191 equ sst.force_swrites,340 000525 11-192 equ sst.force_pwrites,341 000526 11-193 equ sst.fw_none,342 000527 11-194 equ sst.force_updatevs,343 000530 11-195 equ sst.pf_unlock_ptl_time,344 " DOUBLE 000532 11-196 equ sst.pf_unlock_ptl_meterings,346 000533 11-197 equ sst.makeknown_activations,347 000534 11-198 equ sst.backup_activations,348 000535 11-199 equ sst.metering_flags,349 " LEVEL 2 11-200 400000 11-201 bool sst.activate_activated,400000 " DU 11-202 000536 11-203 equ sst.seg_fault_calls,350 000537 11-204 equ sst.stk_truncate_should_didnt,351 000540 11-205 equ sst.stk_truncate_should_did,352 000541 11-206 equ sst.stk_truncate_shouldnt_didnt,353 000542 11-207 equ sst.stk_truncate_shouldnt_did,354 000543 11-208 equ sst.stk_pages_truncated,355 000544 11-209 equ sst.stk_pages_truncated_in_core,356 000545 11-210 equ sst.segmove_lock,357 " LEVEL 2 11-211 000545 11-212 equ sst.pid,357 000546 11-213 equ sst.event,358 11-214 000547 11-215 equ sst.notify_word,359 400000 11-216 bool sst.notify,400000 " DU 11-217 000550 11-218 equ sst.segmove_io_limit,360 000551 11-219 equ sst.segmove_found_synch,361 000552 11-220 equ sst.segmove_synch_disappeared,362 000553 11-221 equ sst.segmove_n_reads,363 000554 11-222 equ sst.segmove_max_tries,364 000555 11-223 equ sst.segmove_astep,365 000556 11-224 equ sst.segmove_pvtx,366 000557 11-225 equ sst.segmove_vtocx,367 000560 11-226 equ sst.segmove_old_addr_astep,368 000561 11-227 equ sst.segmove_new_addr_astep,369 000562 11-228 equ sst.mod_during_write,370 000563 11-229 equ sst.zero_pages,371 000564 11-230 equ sst.trace_sw,372 " LEVEL 2 11-231 000010 11-232 bool sst.pc_trace_pf,000010 " DL 000004 11-233 bool sst.tty_trace,000004 " DL 000002 11-234 bool sst.pc_trace,000002 " DL 000001 11-235 bool sst.sc_trace,000001 " DL 11-236 000565 11-237 equ sst.new_pages,373 11-238 000566 11-239 equ sst.ast_track_word,374 400000 11-240 bool sst.ast_track,400000 " DU 11-241 000567 11-242 equ sst.dirlock_writebehind,375 000570 11-243 equ sst.write_limit,376 11-244 000571 11-245 equ sst.crash_test_segmove_word,377 400000 11-246 bool sst.crash_test_segmove,400000 " DU 11-247 000572 11-248 equ sst.delayed_seg_state_chg,378 000573 11-249 equ sst.audit_seg_state_chg,379 000574 11-250 equ sst.seg_state_chg_delay,380 " DOUBLE 000576 11-251 equ sst.seg_state_change_limit,382 000577 11-252 equ sst.max_seg_state_change_bw,383 000600 11-253 equ sst.audit_seg_state_change_bw,384 000601 11-254 equ sst.seg_state_chg_operation,385 11-255 11-256 "END INCLUDE FILE sst.incl.alm 190 include tc_meters 12-1 " 12-2 " BEGIN INCLUDE FILE tc_meters.incl.alm 12-3 " 12-4 " BOS knows the offsets of some of these cells within tc_data 12-5 " These cells should not be moved without changing BOS: 12-6 " apt_offset - o253 - offset of first apte in upper 12-7 " apt_size - o313 - number of apte's in lower 12-8 " apt_entry_size - o327 - size of an apte in lower 12-9 " 12-10 " Modified 84.12.06 by Keith Loepere for page create delaying. 12-11 " Modified 84.11.26 by Keith Loepere for uid_array. 12-12 " Modified 84.05.21 by M. Pandolf to add tc_suspend_lock 12-13 " Modified 830913 to replace tty_polling_time with opc_polling_time... -E. A. Ranzenbach 12-14 000000 12-15 equ tc_suspend_lock,0 000003 12-16 equ cid2,3 000004 12-17 equ cid3,4 000005 12-18 equ cid4,5 000006 12-19 equ depth_count,6 000007 12-20 equ loadings,7 000010 12-21 equ blocks,8 000011 12-22 equ wakeups,9 000012 12-23 equ waits,10 000013 12-24 equ notifies,11 000014 12-25 equ schedulings,12 000015 12-26 equ interactions,13 000016 12-27 equ avequeue,14 000017 12-28 equ te_wait,15 000020 12-29 equ te_block,16 000021 12-30 equ te_i_stop,17 000022 12-31 equ te_pre_empt,18 000023 12-32 equ p_interactions,19 000024 12-33 equ idle_time,20 DOUBLE 000026 12-34 equ mp_idle,22 DOUBLE 000030 12-35 equ nmp_idle,24 DOUBLE 000032 12-36 equ zero_idle,26 DOUBLE 000034 12-37 equ last_time,28 DOUBLE 000036 12-38 equ loop_locks,30 000037 12-39 equ loop_lock_time,31 000040 12-40 equ ave_eligible,32 000041 12-41 equ sort_to_elhead,33 000042 12-42 equ processor_time,34 DOUBLE 000044 12-43 equ response_time,36 DOUBLE 000046 12-44 equ eligible_time,38 DOUBLE 000050 12-45 equ response_count,40 000051 12-46 equ eligible_count,41 000052 12-47 equ quit_counts,42 " array of buckets indexed by process state 000060 12-48 equ loading_idle,48 DOUBLE 000062 12-49 equ delta_vcpu,50 DOUBLE 000064 12-50 equ post_purge_switch,52 000065 12-51 equ time_out_severity,53 000066 12-52 equ notify_check,54 000067 12-53 equ quit_priority,55 000070 12-54 equ iobm_polling_time_loc,56 DOUBLE 000072 12-55 equ end_of_time_loc,58 DOUBLE 000074 12-56 equ gp_at_notify,60 000075 12-57 equ gp_at_ptlnotify,61 000076 12-58 equ int_q_enabled,62 000077 12-59 equ fnp_buffer_threshold,63 12-60 000010 12-61 equ max_depth,8 000100 12-62 equ depths,64 000110 12-63 equ tdepth,depths+max_depth ARRAY OF DOUBLE 000130 12-64 equ pfdepth,tdepth+2*max_depth 12-65 000140 12-66 equ ptl_not_waits,96 000141 12-67 equ gw_gp_window_count,97 000142 12-68 equ metering_lock,98 000143 12-69 equ ptl_waits,99 000144 12-70 equ gp_start_count,100 000145 12-71 equ gp_done_count,101 000146 12-72 equ nto_check_time,102 "DOUBLE 000150 12-73 equ nto_delta,104 000151 12-74 equ nto_count,105 000152 12-75 equ tcpu_scheduling,106 000153 12-76 equ nto_event,107 000154 12-77 equ page_notifies,108 000155 12-78 equ notify_nobody_count,109 000156 12-79 equ notify_nobody_event,110 000157 12-80 equ system_type,111 000160 12-81 equ statistics,112 sixteen words RESERVED for states 12-82 000200 12-83 equ waittime,128 000220 12-84 equ readytime,waittime+2*max_depth 000240 12-85 equ total_pf_time,readytime+2*max_depth DOUBLE 000242 12-86 equ total_pf_count,total_pf_time+2 000243 12-87 equ auto_tune_ws,total_pf_time+3 000244 12-88 equ ocore_delta,total_pf_time+4 000245 12-89 equ ws_sum,total_pf_time+5 000246 12-90 equ nonidle_force_count,total_pf_time+6 000247 12-91 equ itt_list_lock,total_pf_time+7 000250 12-92 equ cpu_pf_time,total_pf_time+8 000252 12-93 equ cpu_pf_count,cpu_pf_time+2 000253 12-94 equ apt_offset,cpu_pf_time+3 UPPER, BOS looks at tc_data|o253 (d171) for APT offset 000254 12-95 equ getwork_time,cpu_pf_time+4 DOUBLE 000256 12-96 equ getwork_count,cpu_pf_time+6 000257 12-97 equ short_pf_count,cpu_pf_time+7 000260 12-98 equ interrupt_time,cpu_pf_time+8 DOUBLE 000262 12-99 equ interrupt_count,interrupt_time+2 DOUBLE 000264 12-100 equ ocore,180 000265 12-101 equ pre_empt_flag,181 000266 12-102 equ cumulative_memory_usage,182 DOUBLE 000270 12-103 equ processor_time_at_define_wc,184 DOUBLE 12-104 000272 12-105 equ boost_priority,186 000273 12-106 equ lost_priority_eligibility,187 000274 12-107 equ total_clock_lag,188 DOUBLE 000276 12-108 equ clock_simulations,190 000277 12-109 equ max_clock_lag,191 12-110 12-111 12-112 "300 octal 000300 12-113 equ pdscopyl,192 000301 12-114 equ max_hproc_segno,193 000302 12-115 equ prds_length,194 000303 12-116 equ pds_length,195 000304 12-117 equ lock,196 000305 12-118 equ id,197 000306 12-119 equ system_shutdown,198 000307 12-120 equ working_set_factor,199 12-121 000310 12-122 equ ncpu,200 000311 12-123 equ last_eligible,201 000312 12-124 equ apt_lock,202 000313 12-125 equ apt_size,203 BOS looks at tc_data|o313 for number of aptes 000314 12-126 equ realtime_q,204 DBL 000316 12-127 equ aht_size,206 000317 12-128 equ itt_size,207 12-129 000320 12-130 equ dst_size,208 000321 12-131 equ itt_free_list,209 000322 12-132 equ used_itt,210 000323 12-133 equ initializer_id,211 000324 12-134 equ n_eligible,212 000325 12-135 equ max_eligible,213 000326 12-136 equ wait_enable,214 000327 12-137 equ apt_entry_size,215 BOS looks at tc_data|o327 for size of APTE 12-138 000330 12-139 equ interactive_q,216 DBL 000332 12-140 equ dst_ptr,218 DBL 000334 12-141 equ old_user,220 DBL 000336 12-142 equ initialize_time,222 DBL 12-143 000340 12-144 equ init_event,224 000341 12-145 equ oldt,225 000342 12-146 equ newt,226 000343 12-147 equ tefirst,227 000344 12-148 equ telast,228 000345 12-149 equ timax,229 000346 12-150 equ empty_q,230 000347 12-151 equ working_set_addend,231 12-152 000350 12-153 equ eligible_q_head,232 DBL 000350 12-154 equ ready_q_head,eligible_q_head OBS 000352 12-155 equ eligible_q_tail,234 DBL 000352 12-156 equ ready_q_tail,eligible_q_tail OBS 000354 12-157 equ idle_tail,236 DBL 000356 12-158 equ min_eligible,238 000357 12-159 equ alarm_timer_list,239 12-160 000360 12-161 equ guaranteed_elig_inc,240 000361 12-162 equ priority_sched_inc,241 000362 12-163 equ next_alarm_time,242 DBL 000364 12-164 equ priority_sched_time,244 DBL 000366 12-165 equ opc_polling_time_loc,246 DBL 12-166 000370 12-167 equ disk_polling_time_loc,248 DBL 000372 12-168 equ tape_polling_time_loc,250 DBL 000374 12-169 equ imp_polling_time_loc,252 DBL 000376 12-170 equ imp_polling_lock,254 000377 12-171 equ max_channels,255 12-172 12-173 "400 octal 000400 12-174 equ system_virtual_time,256 DOUBLE 000402 12-175 equ credit_bank,256+2 DOUBLE 000404 12-176 equ min_wct_index,256+4 UPPER 000405 12-177 equ max_wct_index,256+5 UPPER 000406 12-178 equ delta_vt,256+6 DBL for pxss(compute_vc) 000410 12-179 equ gross_idle_time,256+8 DOUBLE 000412 12-180 equ credits_per_scatter,256+10 000413 12-181 equ best_credit_value,256+11 000414 12-182 equ define_wc_time,256+12 DOUBLE 000416 12-183 equ max_batch_elig,256+14 000417 12-184 equ num_batch_elig,256+15 000420 12-185 equ deadline_mode,256+16 000421 12-186 equ credits_scattered,256+17 000422 12-187 equ max_max_eligible,256+18 000423 12-188 equ max_stopped_stack_0,256+19 000424 12-189 equ stopped_stack_0,256+20 000425 12-190 equ mos_polling_interval,256+21 000426 12-191 equ mos_polling_time_loc,256+22 DOUBLE 000430 12-192 equ vcpu_response_bounds,256+24 ARRAY 000433 12-193 equ vcpu_response_bounds_size,256+27 000434 12-194 equ meter_response_time_calls,256+28 000435 12-195 equ meter_response_time_invalid,256+29 000436 12-196 equ meter_response_time_overhead,256+30 DOUBLE 000440 12-197 equ init_wait_time,256+32 DOUBLE 000442 12-198 equ init_wait_timeout,256+34 DOUBLE 000444 12-199 equ init_timeout_severity,256+36 000445 12-200 equ init_timeout_recurse,256+37 000446 12-201 equ max_timer_register,256+38 DOUBLE 000450 12-202 equ pre_empt_sample_time,256+40 000451 12-203 equ governing_credit_bank,256+41 000452 12-204 equ process_initial_quantum,256+42 000453 12-205 equ default_procs_required,256+43 776000 12-206 bool all_procs_required,776000 " DU 000454 12-207 equ work_class_idle,256+44 DOUBLE 000456 12-208 equ stk_truncate,256+46 000457 12-209 equ stk_truncate_always,256+47 000460 12-210 equ stk_trunc_avg_f1,256+48 000461 12-211 equ stk_trunc_avg_f2,256+49 12-212 000462 12-213 equ lock_error_severity,256+50 12-214 000463 12-215 equ gv_integration,256+51 000464 12-216 equ gv_integration_set,256+52 000465 12-217 equ pauses,256+53 12-218 000466 12-219 equ volmap_polling_time,256+54 " DOUBLE 000470 12-220 equ next_ring0_timer,256+56 " DOUBLE 000472 12-221 equ realtime_io_priority_switch,256+58 000473 12-222 equ realtime_io_deadline,256+59 000474 12-223 equ realtime_io_quantum,256+60 000475 12-224 equ realtime_priorities,256+61 000476 12-225 equ relinquishes,256+62 000477 12-226 equ abort_ips_mask,256+63 12-227 12-228 "500 octal 000500 12-229 equ uid_array,320 12-230 " 12-231 " words thru 584 are available for general use 12-232 " 12-233 " Under present format, the wcte's begin at 1110 (octal), 12-234 " and the apte's begin at 3000 (octal). These tables should 12-235 " not be accessed by fixed offsets, but rather through offset 12-236 " cells - apt_offset (first apte), min_wct_index (first wcte) 12-237 12-238 " 12-239 " END INCLUDE FILE tc_meters.incl.alm 12-240 " 191 include wcte 13-1 " 13-2 " BEGIN INCLUDE FILE wcte.incl.alm 13-3 " 13-4 " 000000 13-5 equ wcte.thread,0 000000 13-6 equ wcte.fp,0 UPPER 000000 13-7 equ wcte.bp,0 LOWER 13-8 000001 13-9 equ wcte.flags,1 400000 13-10 bool wcte.mnbz,400000 UPPER 200000 13-11 bool wcte.defined,200000 UPPER 100000 13-12 bool wcte.io_priority,100000 UPPER 040000 13-13 bool wcte.governed,040000 UPPER 020000 13-14 bool wcte.interactive_q,020000 UPPER 000001 13-15 equ wcte.mnbz_word,wcte.flags 000001 13-16 equ wcte.defined_word,wcte.flags 000001 13-17 equ wcte.io_priority_word,wcte.flags 000001 13-18 equ wcte.governed_word,wcte.flags 000001 13-19 equ wcte.interactive_q_word,wcte.flags 13-20 000002 13-21 equ wcte.credits,2 000003 13-22 equ wcte.minf,3 000004 13-23 equ wcte.pin_weight,4 000005 13-24 equ wcte.eligibilities,5 000006 13-25 equ wcte.cpu_sum,6 DOUBLE 000010 13-26 equ wcte.resp1,8 DBL 000012 13-27 equ wcte.resp2,10 DBL 000014 13-28 equ wcte.quantum1,12 000015 13-29 equ wcte.quantum2,13 000016 13-30 equ wcte.rmeter1,14 DBL 000020 13-31 equ wcte.rmeter2,16 DBL 000022 13-32 equ wcte.rcount1,18 000023 13-33 equ wcte.rcount2,19 000024 13-34 equ wcte.realtime,20 000025 13-35 equ wcte.purging,21 000026 13-36 equ wcte.maxel,22 000027 13-37 equ wcte.nel,23 13-38 000030 13-39 equ wcte.number_thinks,24 000031 13-40 equ wcte.number_queues,25 000032 13-41 equ wcte.total_think_time,26 DOUBLE 000034 13-42 equ wcte.total_queue_time,28 DOUBLE 13-43 13-44 " The following entries are arrays which parallel tc_data$vcpu_bounds 000036 13-45 equ wcte.number_processing,30 000042 13-46 equ wcte.total_processing_time,34 DOUBLE 000052 13-47 equ wcte.total_vcpu_time,42 DOUBLE 13-48 000062 13-49 equ wcte.maxf,50 000063 13-50 equ wcte.governing_credits,51 13-51 13-52 " Words 52 - 55 are available 13-53 000070 13-54 equ size_of_wct_entry,56 13-55 13-56 " 13-57 " END INCLUDE FILE wcte.incl.alm 13-58 " 192 include sdw 14-1 " BEGIN INCLUDE FILE ... sdw.incl.alm ... 03/01/81, for ADP conversion 14-2 14-3 iftarget l68 " Include whichever seems appropriate include sdw.l68 15-1 15-2 15-3 "BEGIN INCLUDE FILE sdw.l68.incl.alm 15-4 15-5 15-6 "Created 04/05/81 1616.1 est Sun by convert_include_file, 15-7 " Version of 04/05/81 1606.8 est Sun. 15-8 15-9 "Made from >udd>Multics>hardcore_pool>new_pc>include>sdw.l68.incl.pl1, 15-10 " modified 03/20/81 2215.5 est Fri 15-11 15-12 " 15-13 " Structure sdw 15-14 " 000002 15-15 equ sdw_size,2 15-16 000000 15-17 equ sdw.add_word,0 000014 15-18 equ sdw.add_shift,12 000000 15-19 equ sdw.rings_word,0 000003 15-20 equ sdw.rings_shift,3 000777 15-21 bool sdw.rings_mask,000777 000000 15-22 equ sdw.r1_word,0 000011 15-23 equ sdw.r1_shift,9 000007 15-24 bool sdw.r1_mask,000007 000000 15-25 equ sdw.r2_word,0 000006 15-26 equ sdw.r2_shift,6 000007 15-27 bool sdw.r2_mask,000007 000000 15-28 equ sdw.r3_word,0 000003 15-29 equ sdw.r3_shift,3 000007 15-30 bool sdw.r3_mask,000007 000000 15-31 equ sdw.valid_word,0 000004 15-32 bool sdw.valid,000004 " DL 000000 15-33 equ sdw.df_no_word,0 000000 15-34 equ sdw.df_no_shift,0 000003 15-35 bool sdw.df_no_mask,000003 15-36 000001 15-37 equ sdw.bound_word,1 000025 15-38 equ sdw.bound_shift,21 037777 15-39 bool sdw.bound_mask,037777 000001 15-40 equ sdw.access_word,1 000021 15-41 equ sdw.access_shift,17 000017 15-42 bool sdw.access_mask,000017 000001 15-43 equ sdw.read_word,1 000004 15-44 bool sdw.read,000004 " DU 000001 15-45 equ sdw.execute_word,1 000002 15-46 bool sdw.execute,000002 " DU 000001 15-47 equ sdw.write_word,1 000001 15-48 bool sdw.write,000001 " DU 000001 15-49 equ sdw.privileged_word,1 400000 15-50 bool sdw.privileged,400000 " DL 000001 15-51 equ sdw.unpaged_word,1 200000 15-52 bool sdw.unpaged,200000 " DL 000001 15-53 equ sdw.not_a_gate_word,1 100000 15-54 bool sdw.not_a_gate,100000 " DL 000001 15-55 equ sdw.cache_word,1 040000 15-56 bool sdw.cache,040000 " DL 000001 15-57 equ sdw.entry_bound_word,1 000000 15-58 equ sdw.entry_bound_shift,0 037777 15-59 bool sdw.entry_bound_mask,037777 15-60 15-61 "END INCLUDE FILE sdw.l68.incl.alm " ifend 14-6 14-7 iftarget adp " include sdw.adp " ifend 14-10 14-11 " END INCLUDE FILE ... sdw.incl.alm 193 include ptw 16-1 " BEGIN INCLUDE FILE ... ptw.incl.alm ... 03/01/81, for ADP conversion 16-2 16-3 iftarget l68 " Include whichever seems appropriate include ptw.l68 17-1 17-2 17-3 "BEGIN INCLUDE FILE ptw.l68.incl.alm 17-4 17-5 17-6 "Created 04/05/81 1616.0 est Sun by convert_include_file, 17-7 " Version of 04/05/81 1606.8 est Sun. 17-8 17-9 "Made from >udd>Multics>hardcore_pool>new_pc>include>ptw.l68.incl.pl1, 17-10 " modified 03/20/81 1815.9 est Fri 17-11 17-12 " 17-13 " Structure core_ptw 17-14 " 000026 17-15 equ core_ptw.frame_shift,22 037777 17-16 bool core_ptw.frame_mask,037777 000000 17-17 equ core_ptw.flags,0 " LOWER 000016 17-18 equ core_ptw.add_type_shift,14 000017 17-19 bool core_ptw.add_type_mask,000017 020000 17-20 bool core_ptw.first,020000 " DL 010000 17-21 bool core_ptw.er,010000 " DL 002000 17-22 bool core_ptw.unusable1,002000 " DL 001000 17-23 bool core_ptw.phu,001000 " DL 000400 17-24 bool core_ptw.phm1,000400 " DL 000200 17-25 bool core_ptw.nypd,000200 " DL 000100 17-26 bool core_ptw.phm,000100 " DL 000040 17-27 bool core_ptw.phu1,000040 " DL 000020 17-28 bool core_ptw.wired,000020 " DL 000010 17-29 bool core_ptw.os,000010 " DL 000004 17-30 bool core_ptw.valid,000004 " DL 000000 17-31 equ core_ptw.df_no_shift,0 000003 17-32 bool core_ptw.df_no_mask,000003 17-33 17-34 " 17-35 " Structure ptw 17-36 " 000000 17-37 equ ptw.add,0 " UPPER 000000 17-38 equ ptw.flags,0 " LOWER 000016 17-39 equ ptw.add_type_shift,14 000017 17-40 bool ptw.add_type_mask,000017 020000 17-41 bool ptw.first,020000 " DL 010000 17-42 bool ptw.er,010000 " DL 002000 17-43 bool ptw.unusable1,002000 " DL 001000 17-44 bool ptw.phu,001000 " DL 000400 17-45 bool ptw.phm1,000400 " DL 000200 17-46 bool ptw.nypd,000200 " DL 000100 17-47 bool ptw.phm,000100 " DL 000040 17-48 bool ptw.phu1,000040 " DL 000020 17-49 bool ptw.wired,000020 " DL 000010 17-50 bool ptw.os,000010 " DL 000004 17-51 bool ptw.valid,000004 " DL 000000 17-52 equ ptw.df_no_shift,0 000003 17-53 bool ptw.df_no_mask,000003 17-54 17-55 "END INCLUDE FILE ptw.l68.incl.alm " ifend 16-6 16-7 iftarget adp " include ptw.adp " ifend 16-10 16-11 " END INCLUDE FILE ... ptw.incl.alm 194 include add_type 18-1 " 18-2 " BEGIN INCLUDE FILE add_type.incl.alm 02/14/75 18-3 " 18-4 18-5 " This file defines the interpretation of the add_type 18-6 " field of a ptw or cme. 18-7 400000 18-8 bool add_type.core,400000 "DL core address - S/B only in PTW 200000 18-9 bool add_type.disk,200000 "DL disk address 100000 18-10 bool add_type.pd,100000 "DL paging device record number 040000 18-11 bool add_type.reserved,040000 "DL reserved for future use 18-12 740000 18-13 bool add_type.non_null,740000 "DL not a null address 18-14 18-15 " 18-16 " END INCLUDE FILE add_type.incl.alm 18-17 " 195 include aste 19-1 19-2 19-3 "BEGIN INCLUDE FILE aste.incl.alm 19-4 19-5 19-6 "Created 01/14/85 1523.3 est Mon by convert_include_file, 19-7 " Version of 01/09/85 0954.4 est Wed. 19-8 19-9 "Made from >Pool>m>loe>incl>aste.incl.pl1, 19-10 " modified 01/08/85 1115.0 est Tue 19-11 19-12 " 19-13 " Structure aste 19-14 " 000014 19-15 equ aste_size,12 19-16 000000 19-17 equ aste.fp,0 " UPPER 000000 19-18 equ aste.bp,0 " LOWER 19-19 000001 19-20 equ aste.infl,1 " UPPER 000001 19-21 equ aste.infp,1 " LOWER 19-22 000002 19-23 equ aste.strp,2 " UPPER 000002 19-24 equ aste.par_astep,2 " LOWER 19-25 000003 19-26 equ aste.uid,3 19-27 000004 19-28 equ aste.msl_word,4 000033 19-29 equ aste.msl_shift,27 000777 19-30 bool aste.msl_mask,000777 000004 19-31 equ aste.pvtx_word,4 000022 19-32 equ aste.pvtx_shift,18 000777 19-33 bool aste.pvtx_mask,000777 000004 19-34 equ aste.vtocx,4 " LOWER 19-35 000005 19-36 equ aste.usedf_word,5 400000 19-37 bool aste.usedf,400000 " DU 000005 19-38 equ aste.init_word,5 200000 19-39 bool aste.init,200000 " DU 000005 19-40 equ aste.gtus_word,5 100000 19-41 bool aste.gtus,100000 " DU 000005 19-42 equ aste.gtms_word,5 040000 19-43 bool aste.gtms,040000 " DU 000005 19-44 equ aste.hc_word,5 020000 19-45 bool aste.hc,020000 " DU 000005 19-46 equ aste.hc_sdw_word,5 010000 19-47 bool aste.hc_sdw,010000 " DU 000005 19-48 equ aste.any_access_on_word,5 004000 19-49 bool aste.any_access_on,004000 " DU 000005 19-50 equ aste.write_access_on_word,5 002000 19-51 bool aste.write_access_on,002000 " DU 000005 19-52 equ aste.inhibit_cache_word,5 001000 19-53 bool aste.inhibit_cache,001000 " DU 000005 19-54 equ aste.explicit_deact_ok_word,5 000400 19-55 bool aste.explicit_deact_ok,000400 " DU 000005 19-56 equ aste.deact_error_word,5 000200 19-57 bool aste.deact_error,000200 " DU 000005 19-58 equ aste.hc_part_word,5 000100 19-59 bool aste.hc_part,000100 " DU 000005 19-60 equ aste.fm_damaged_word,5 000040 19-61 bool aste.fm_damaged,000040 " DU 000005 19-62 equ aste.multi_class_word,5 000020 19-63 bool aste.multi_class,000020 " DU 000005 19-64 equ aste.dius_word,5 000002 19-65 bool aste.dius,000002 " DU 000005 19-66 equ aste.nid_word,5 000001 19-67 bool aste.nid,000001 " DU 000005 19-68 equ aste.dmpr_pad_word,5 400000 19-69 bool aste.dmpr_pad,400000 " DL 000005 19-70 equ aste.ehs_word,5 200000 19-71 bool aste.ehs,200000 " DL 000005 19-72 equ aste.nqsw_word,5 100000 19-73 bool aste.nqsw,100000 " DL 000005 19-74 equ aste.dirsw_word,5 040000 19-75 bool aste.dirsw,040000 " DL 000005 19-76 equ aste.master_dir_word,5 020000 19-77 bool aste.master_dir,020000 " DL 000005 19-78 equ aste.volmap_seg_word,5 010000 19-79 bool aste.volmap_seg,010000 " DL 000005 19-80 equ aste.tqsw_word,5 004000 19-81 bool aste.tqsw,004000 " DL 19-82 000006 19-83 equ aste.dtu,6 000007 19-84 equ aste.dtm,7 19-85 000010 19-86 equ aste.quota,8 " UPPER 19-87 000011 19-88 equ aste.used,9 " UPPER 19-89 000012 19-90 equ aste.csl_word,10 000033 19-91 equ aste.csl_shift,27 000777 19-92 bool aste.csl_mask,000777 000012 19-93 equ aste.fmchanged_word,10 000400 19-94 bool aste.fmchanged,000400 " DU 000012 19-95 equ aste.fms_word,10 000200 19-96 bool aste.fms,000200 " DU 000012 19-97 equ aste.npfs_word,10 000100 19-98 bool aste.npfs,000100 " DU 000012 19-99 equ aste.gtpd_word,10 000040 19-100 bool aste.gtpd,000040 " DU 000012 19-101 equ aste.dnzp_word,10 000020 19-102 bool aste.dnzp,000020 " DU 000012 19-103 equ aste.per_process_word,10 000010 19-104 bool aste.per_process,000010 " DU 000012 19-105 equ aste.ddnp_word,10 000004 19-106 bool aste.ddnp,000004 " DU 000012 19-107 equ aste.records_word,10 000011 19-108 equ aste.records_shift,9 000777 19-109 bool aste.records_mask,000777 000012 19-110 equ aste.np_word,10 000000 19-111 equ aste.np_shift,0 000777 19-112 bool aste.np_mask,000777 19-113 000013 19-114 equ aste.ht_fp,11 " UPPER 000013 19-115 equ aste.fmchanged1_word,11 400000 19-116 bool aste.fmchanged1,400000 " DL 000013 19-117 equ aste.damaged_word,11 200000 19-118 bool aste.damaged,200000 " DL 000013 19-119 equ aste.pack_ovfl_word,11 100000 19-120 bool aste.pack_ovfl,100000 " DL 000013 19-121 equ aste.synchronized_word,11 040000 19-122 bool aste.synchronized,040000 " DL 000013 19-123 equ aste.ptsi_word,11 000006 19-124 equ aste.ptsi_shift,6 000003 19-125 bool aste.ptsi_mask,000003 000013 19-126 equ aste.marker_word,11 000000 19-127 equ aste.marker_shift,0 000077 19-128 bool aste.marker_mask,000077 19-129 19-130 " 19-131 " Structure aste_part 19-132 " 000014 19-133 equ aste_part_size,12 19-134 19-135 000000 19-136 equ aste_part.one,0 000001 19-137 equ aste_part.two,1 " DOUBLE 19-138 000013 19-139 equ aste_part.three_word,11 000000 19-140 equ aste_part.three_shift,0 000377 19-141 bool aste_part.three_mask,000377 19-142 19-143 " 19-144 " Structure seg_aste 19-145 " 000014 19-146 equ seg_aste_size,12 19-147 19-148 000010 19-149 equ seg_aste.usage,8 19-150 19-151 "END INCLUDE FILE aste.incl.alm 196 include cmp 20-1 " 20-2 " BEGIN INCLUDE FILE cmp.incl.alm October 1982 20-3 " 000004 20-4 equ cme_size,4 Size of a CME 20-5 000000 20-6 equ cme.fp,0 forward pointer to next core map entry (DU) 000000 20-7 equ cme.bp,0 backward pointer to previous core map entry (DL) 20-8 000001 20-9 equ cme.devadd,1 device address of page in the core block 000001 20-10 equ cme.flags,1 word containing various flags 740000 20-11 bool cme.did_mask,740000 mask for extracting device ID from core map entry 010000 20-12 bool cme.synch_held,010000 page of synch seg held in mem (DL) 004000 20-13 bool cme.io,004000 read/write bit (DL) 001000 20-14 bool cme.er,001000 error on previous I/O 000400 20-15 bool cme.removing,000400 page is being removed 000200 20-16 bool cme.abs_w,000200 page may not be moved 000100 20-17 bool cme.abs_usable,000100 page may be assigned with fixed abs addr 000040 20-18 bool cme.notify_requested,000040 ptw event must be notified on completion 000010 20-19 bool cme.phm_hedge,000010 periodic write scheduler 000007 20-20 bool cme.contr,000007 port number of controller in which core block is located 20-21 000002 20-22 equ cme.ptwp,2 page table word pointer (DU) 000002 20-23 equ cme.astep,2 AST entry ptr (DL) 20-24 000003 20-25 equ cme.pin_counter,3 number times to skip eviction (DU) 000003 20-26 equ cme.synch_page_entryp,3 rel ptr to synch page entry 20-27 20-28 " END INCLUDE FILE cmp.incl.alm 197 include mc 21-1 " 21-2 " BEGIN INCLUDE FILE mc.incl.alm 6/72 SHW 21-3 " Modified 8/80 by J. A. Bush for dps8/70M CPU 21-4 " 21-5 21-6 " General layout of data items. 21-7 000000 21-8 equ mc.prs,0 pointer registers 000020 21-9 equ mc.regs,16 registers 000030 21-10 equ mc.scu,24 SCU data 000050 21-11 equ mc.eis_info,40 pointers and lengths for EIS 21-12 21-13 " Temporary storage for software 21-14 000040 21-15 equ mc.mask,32 system controller mask at time of fault 000042 21-16 equ mc.ips_temp,34 temporary storage for IPS info 000043 21-17 equ mc.errcode,35 error code 000044 21-18 equ mc.fim_temp,36 temporary to hold fault index and unique index 000045 21-19 equ mc.fault_reg,37 fault register 000046 21-20 equ mc.fault_time,38 time of fault 000046 21-21 equ mc.cpu_type_word,38 CPU type from rsw (2). overlays part of time word 300000 21-22 bool mc.cpu_type_mask,300000 DU 000046 21-23 equ mc.ext_fault_reg,38 ext fault reg for dps8. overlays part of time word 077774 21-24 bool mc.ext_fault_reg_mask,77774 DU 000003 21-25 equ mc.cpu_type_shift,3 positions to shift right or left 21-26 21-27 21-28 21-29 " SCU DATA 21-30 21-31 " WORD (0) PROCEDURE POINTER REGISTER 21-32 000030 21-33 equ mc.scu.ppr.prr_word,24 Procedure Ring Register 000000 21-34 equ scu.ppr.prr_word,0 700000 21-35 bool scu.ppr.prr_mask,700000 DU 000041 21-36 equ scu.ppr.prr_shift,33 21-37 000030 21-38 equ mc.scu.ppr.psr_word,24 Procedure Segment Register 000000 21-39 equ scu.ppr.psr_word,0 077777 21-40 bool scu.ppr.psr_mask,077777 DU 000022 21-41 equ scu.ppr.psr_shift,18 21-42 000030 21-43 equ mc.scu.ppr.p_word,24 Procedure Privileged Bit 000000 21-44 equ scu.ppr.p_word,0 400000 21-45 bool scu.ppr.p,400000 DL 21-46 21-47 " APPENDING UNIT STATUS 000030 21-48 equ mc.scu.apu_stat_word,24 APPENDING UNIT STATUS 000000 21-49 equ scu.apu_stat_word,0 21-50 200000 21-51 bool scu.apu.xsf,200000 DL - Ext Seg Flag - IT mod. 100000 21-52 bool scu.apu.sdwm,100000 DL - Match in SDW Ass. Mem. 040000 21-53 bool scu.apu.sd_on,040000 DL - SDW Ass. Mem. ON 020000 21-54 bool scu.apu.ptwm,020000 DL - Match in PTW Ass. Mem. 010000 21-55 bool scu.apu.pt_on,010000 DL - PTW Ass. Mem. ON 004000 21-56 bool scu.apu.pi_ap,004000 DL - Instr fetch or Append cycle 002000 21-57 bool scu.apu.dsptw,002000 DL - Fetch of DSPTW 001000 21-58 bool scu.apu.sdwnp,001000 DL - Fetch of SDW non-paged 000400 21-59 bool scu.apu.sdwp,000400 DL - Fetch of SDW paged 000200 21-60 bool scu.apu.ptw,000200 DL - Fetch of PTW 000100 21-61 bool scu.apu.ptw2,000100 DL - Fetch of pre-paged PTW 000040 21-62 bool scu.apu.fap,000040 DL - Fetch of final address paged 000020 21-63 bool scu.apu.fanp,000020 DL - Fetch final address non-paged 000010 21-64 bool scu.apu.fabs,000010 DL - Fetch of final address absolute 21-65 000030 21-66 equ mc.scu.fault_cntr_word,24 Num of retrys of EIS instructions. 000000 21-67 equ scu.fault_cntr_word,0 21-68 000007 21-69 bool scu.fault_cntr_mask,000007 21-70 21-71 21-72 " WORD (1) FAULT DATA 21-73 000031 21-74 equ mc.scu.fault_data_word,25 FAULT DATA 000001 21-75 equ scu.fault_data_word,1 21-76 400000 21-77 bool scu.fd.iro,400000 DU - Illegal Ring Order 200000 21-78 bool scu.fd.oeb,200000 DU - Not In Execute Bracket 100000 21-79 bool scu.fd.e_off,100000 DU - No Execute 040000 21-80 bool scu.fd.orb,040000 DU - Not In Read Bracket 020000 21-81 bool scu.fd.r_off,020000 DU - No Read 010000 21-82 bool scu.fd.owb,010000 DU - Not In Write Bracket 004000 21-83 bool scu.fd.w_off,004000 DU - No Write 002000 21-84 bool scu.fd.no_ga,002000 DU - Not A Gate 001000 21-85 bool scu.fd.ocb,001000 DU - Not in Call Bracket 000400 21-86 bool scu.fd.ocall,000400 DU - Outward Call 000200 21-87 bool scu.fd.boc,000200 DU - Bad Outward Call 000100 21-88 bool scu.fd.inret,000100 DU - Inward Return 000040 21-89 bool scu.fd.crt,000040 DU - Cross Ring Transfer 000020 21-90 bool scu.fd.ralr,000020 DU - Ring Alarm 000010 21-91 bool scu.fd.am_er,000010 DU - Assoc. Mem. Fault 000004 21-92 bool scu.fd.oosb,000004 DU - Out Of Bounds 000002 21-93 bool scu.fd.paru,000002 DU - Parity Upper 000001 21-94 bool scu.fd.parl,000001 DU - Parity Lower 21-95 400000 21-96 bool scu.fd.onc_1,400000 DL - Op Not Complete 200000 21-97 bool scu.fd.onc_2,200000 DL - Op Not Complete 21-98 21-99 " GROUP II FAULT DATA 400000 21-100 bool scu.fd.isn,400000 DU - Illegal Segment Number 200000 21-101 bool scu.fd.ioc,200000 DU - Illegal Op Code 100000 21-102 bool scu.fd.ia_im,100000 DU - Illegal Addr - Modifier 040000 21-103 bool scu.fd.isp,040000 DU - Illegal Slave Procedure 020000 21-104 bool scu.fd.ipr,020000 DU - Illegal Procedure 010000 21-105 bool scu.fd.nea,010000 DU - Non Existent Address 004000 21-106 bool scu.fd.oobb,004000 DU - Out Of Bounds 21-107 000031 21-108 equ mc.scu.port_stat_word,25 PORT STATUS 000001 21-109 equ scu.port_stat_word,1 21-110 170000 21-111 bool scu.ial_mask,170000 DL - Illegal Action Lines 000014 21-112 equ scu.ial_shift,12 21-113 007000 21-114 bool scu.iac_mask,007000 DL - Illegal Action Channel 000011 21-115 equ scu.iac_shift,9 21-116 000700 21-117 bool scu.con_chan_mask,000700 DL - Connect Channel 000006 21-118 equ scu.con_chan_shift,6 21-119 000076 21-120 bool scu.fi_num_mask,000076 DL - Fault / Interrupt Number 000001 21-121 equ scu.fi_num_shift,1 21-122 000001 21-123 bool scu.fi_flag_mask,000001 DL - Fault / Interrupt Flag 21-124 21-125 21-126 " WORD (2) TEMPORARY POINTER REGISTER 21-127 000032 21-128 equ mc.scu.tpr.trr_word,26 Temporary Ring Register 000002 21-129 equ scu.tpr.trr_word,2 700000 21-130 bool scu.tpr.trr_mask,700000 DU 000041 21-131 equ scu.tpr.trr_shift,33 21-132 000032 21-133 equ mc.scu.tpr.tsr_word,26 Temporary Segment Register 000002 21-134 equ scu.tpr.tsr_word,2 077777 21-135 bool scu.tpr.tsr_mask,077777 DU 000022 21-136 equ scu.tpr.tsr_shift,18 21-137 000032 21-138 equ mc.scu.cpu_no_word,26 CPU Number 000002 21-139 equ scu.cpu_no_word,2 21-140 000700 21-141 bool scu.cpu_no_mask,000700 DL 000006 21-142 equ scu.cpu_shift,6 21-143 000032 21-144 equ mc.scu.delta_word,26 Tally Modification DELTA 000002 21-145 equ scu.delta_word,2 21-146 000077 21-147 bool scu.delta_mask,000077 DL 21-148 21-149 21-150 " WORD (3) TSR STATUS 21-151 000033 21-152 equ mc.scu.tsr_stat_word,27 TSR STATUS for 1,2, and 3 000003 21-153 equ scu.tsr_stat_word,3 Word Instructions 21-154 777700 21-155 bool scu.tsr_stat_mask,777700 DL - All of Status 000006 21-156 equ scu.tsr_stat_shift,6 21-157 740000 21-158 bool scu.tsna_mask,740000 DL - Word 1 Status 700000 21-159 bool scu.tsna.prn_mask,700000 DL - Word 1 PR num 000017 21-160 equ scu.tsna.prn_shift,15 040000 21-161 bool scu.tsna.prv,040000 DL - Word 1 PR valid bit 21-162 036000 21-163 bool scu.tsnb_mask,036000 DL - Word 2 Status 034000 21-164 bool scu.tsnb.prn_mask,034000 DL - Word 2 PR num 000013 21-165 equ scu.tsnb.prn_shift,11 002000 21-166 bool scu.tsnb.prv,002000 DL - Word 2 PR valid bit 21-167 000013 21-168 bool scu.tsnc_mask,0013 DL - Word 3 Status 001600 21-169 bool scu.tsnc.prn_mask,001600 DL - Word 3 PR num 000007 21-170 equ scu.tsnc.prn_shift,7 000100 21-171 bool scu.tsnc.prv,000100 DL - Word 3 PR valid bit 21-172 21-173 000033 21-174 equ mc.scu.tpr.tbr_word,27 TPR.TBR Field 000003 21-175 equ scu.tpr.tbr_word,3 21-176 000077 21-177 bool scu.tpr.tbr_mask,000077 DL 21-178 21-179 21-180 " WORD (4) INSTRUCTION COUNTER 21-181 000034 21-182 equ mc.scu.ilc_word,28 INSTRUCTION COUNTER 000004 21-183 equ scu.ilc_word,4 000022 21-184 equ scu.ilc_shift,18 21-185 000034 21-186 equ mc.scu.indicators_word,28 INDICATOR REGISTERS 000004 21-187 equ scu.indicators_word,4 21-188 400000 21-189 bool scu.ir.zero,400000 DL - Zero Indicator 200000 21-190 bool scu.ir.neg,200000 DL - Negative Indicator 100000 21-191 bool scu.ir.carry,100000 DL - Carry Indicator 040000 21-192 bool scu.ir.ovfl,040000 DL - Overflow Indicator 020000 21-193 bool scu.ir.eovf,020000 DL - Exponent Overflow Ind 010000 21-194 bool scu.ir.eufl,010000 DL - Exponent Underflow Ind 004000 21-195 bool scu.ir.oflm,004000 DL - Overflow Mask Indicator 002000 21-196 bool scu.ir.tro,002000 DL - Tally Runout Indicator 001000 21-197 bool scu.ir.par,001000 DL - Parity Indicator 000400 21-198 bool scu.ir.parm,000400 DL - Parity Mask Indicator 000200 21-199 bool scu.ir.bm,000200 DL - Bar Mode Indicator 000100 21-200 bool scu.ir.tru,000100 DL - Truncation Indicator 000040 21-201 bool scu.ir.mif,000040 DL - Multiword Indicator 000020 21-202 bool scu.ir.abs,000020 DL - Absolute Indicator 000010 21-203 bool scu.ir.hex,000010 DL - Hexadecimal Indicator 21-204 21-205 " WORD (5) COMPUTED ADDRESS 21-206 000035 21-207 equ mc.scu.ca_word,29 COMPUTED ADDRESS 000005 21-208 equ scu.ca_word,5 000022 21-209 equ scu.ca_shift,18 21-210 000035 21-211 equ mc.scu.cu_stat_word,29 CONTROL UNIT STATUS 000005 21-212 equ scu.cu_stat_word,5 21-213 400000 21-214 bool scu.cu.rf,400000 DL - Repeat First 21-215 " On First Cycle of Repeat Inst. 200000 21-216 bool scu.cu.rpt,200000 DL - Repeat Instruction 100000 21-217 bool scu.cu.rd,100000 DL - Repeat Double Instr. 040000 21-218 bool scu.cu.rl,040000 DL - Repeat Link Instr. 21-219 020000 21-220 bool scu.cu.pot,020000 DL - IT Modification 010000 21-221 bool scu.cu.pon,010000 DL - Return Type Instruction 21-222 004000 21-223 bool scu.cu.xde,004000 DL - XDE from Even Location 002000 21-224 bool scu.cu.xdo,002000 DL - XDE from Odd Location 21-225 001000 21-226 bool scu.cu.poa,001000 DL - Operand Preparation 000400 21-227 bool scu.cu.rfi,000400 DL - Tells CPU to refetch instruction 21-228 " This Bit Not Used (000200) 000100 21-229 bool scu.cu.if,000100 DL - Fault occurred during instruction fetch 21-230 000035 21-231 equ mc.scu.cpu_tag_word,29 Computed Tag Field 000005 21-232 equ scu.cpu_tag_word,5 21-233 000007 21-234 bool scu.cpu_tag_mask,000007 DL 21-235 21-236 21-237 " WORDS (6,7) INSTRUCTIONS 21-238 000036 21-239 equ scu.even_inst_word,30 Even Instruction 21-240 000037 21-241 equ scu.odd_inst_word,31 Odd Instruction 21-242 21-243 21-244 " END INCLUDE FILE incl.alm 198 include null_addresses 22-1 " BEGIN INCLUDE FILE null_addresses.incl.alm 22-2 " Added segmove values, Benson Margulies, 84-01. 22-3 " 377007 22-4 bool pc_move_page_table_1_null,377007 377010 22-5 bool pc_move_page_table_2_null,377010 377011 22-6 bool get_aste_null,377011 377012 22-7 bool make_sdw_null,377012 377013 22-8 bool deactivate_null,377013 377015 22-9 bool page_bad_pd_null,377015 377016 22-10 bool list_deposit_null,377016 377017 22-11 bool get_file_map_null,377017 377020 22-12 bool fill_page_table_null,377020 377021 22-13 bool init_sst_null,377021 377022 22-14 bool get_file_map_vt_null,377022 377023 22-15 bool unprotected_null,377023 377024 22-16 bool page_bad_null,377024 377025 22-17 bool page_problem_null,377025 377026 22-18 bool page_parity_null,377026 377027 22-19 bool page_devparity_null,377027 377030 22-20 bool segmove_old_addr_null,377030 377031 22-21 bool segmove_new_addr_null,377031 377772 22-22 bool get_file_map_dumper_non_null,377772 377777 22-23 bool append_null,377777 22-24 22-25 " END INCLUDE FILE null_addresses.incl.alm 199 include static_handlers 23-1 " BEGIN INCLUDE FILE static_handlers.incl.alm 6/20/75 SHW 23-2 000000 23-3 equ shutdown_sct_index,0 000001 23-4 equ store_sct_index,1 000002 23-5 equ mme1_sct_index,2 000003 23-6 equ fault_tag_1_sct_index,3 000004 23-7 equ timer_runout_sct_index,4 000005 23-8 equ command_sct_index,5 000006 23-9 equ derail_sct_index,6 000007 23-10 equ lockup_sct_index,7 000010 23-11 equ connect_sct_index,8 000011 23-12 equ parity_sct_index,9 000012 23-13 equ illegal_procedure_sct_index,10 000013 23-14 equ op_not_complete_sct_index,11 000014 23-15 equ startup_sct_index,12 000015 23-16 equ ovrflo_sct_index,13 000016 23-17 equ zerodivide_sct_index,14 000017 23-18 equ execute_sct_index,15 000020 23-19 equ seg_fault_error_sct_index,16 000021 23-20 equ page_fault_error_sct_index,17 000022 23-21 equ directed_fault_2_sct_index,18 000023 23-22 equ directed_fault_3_sct_index,19 000024 23-23 equ accessviolation_sct_index,20 000025 23-24 equ mme2_sct_index,21 000026 23-25 equ mme3_sct_index,22 000027 23-26 equ mme4_sct_index,23 000030 23-27 equ linkage_error_sct_index,24 000031 23-28 equ fault_tag_3_sct_index,25 000032 23-29 equ undefined_fault_sct_index,26 000037 23-30 equ trouble_sct_index,31 000040 23-31 equ illegal_opcode_sct_index,32 000041 23-32 equ simfault_000000_sct_index,33 000042 23-33 equ illegal_modifier_sct_index,34 000043 23-34 equ illegal_ring_order_sct_index,35 000044 23-35 equ not_in_execute_bracket_sct_indx,36 000045 23-36 equ no_execute_permission_sct_index,37 000046 23-37 equ not_in_read_bracket_sct_index,38 000047 23-38 equ no_read_permission_sct_index,39 000050 23-39 equ not_in_write_bracket_sct_index,40 000051 23-40 equ no_write_permission_sct_index,41 000052 23-41 equ not_a_gate_sct_index,42 000053 23-42 equ not_in_call_bracket_sct_index,43 000054 23-43 equ outward_call_sct_index,44 000055 23-44 equ bad_outward_call_sct_index,45 000056 23-45 equ inward_return_sct_index,46 000057 23-46 equ cross_ring_transfer_sct_index,47 000060 23-47 equ ring_alarm_fault_sct_index,48 000061 23-48 equ am_fault_sct_index,49 000062 23-49 equ out_of_bounds_sct_index,50 000063 23-50 equ fixedoverflow_sct_index,51 000064 23-51 equ overflow_sct_index,52 000065 23-52 equ underflow_sct_index,53 000066 23-53 equ stringsize_sct_index,54 000067 23-54 equ other_illegal_proc_sct_index,55 000070 23-55 equ storage_sct_index,56 000071 23-56 equ packed_pointer_fault_sct_index,57 000072 23-57 equ lot_fault_sct_index,58 000073 23-58 equ isot_fault_sct_index,59 000074 23-59 equ system_packed_pointer_sct_index,60 000075 23-60 equ quit_sct_index,61 000076 23-61 equ alrm_sct_index,62 000077 23-62 equ cput_sct_index,63 000100 23-63 equ record_quota_overflow_sct_index,64 000101 23-64 equ size_sct_index,65 000102 23-65 equ neti_sct_index,66 23-66 23-67 " END INCLUDE FILE static_handlers.incl.alm 200 include device_error 24-1 "BEGIN INCLUDE FILE device_error.incl.alm 24-2 24-3 "Last modified 1/8/76 24-4 " 24-5 " HISTORY COMMENTS: 24-6 " 1) change(88-02-23,Farley), approve(88-02-23,MCR7759), 24-7 " audit(88-02-24,Fawcett), install(88-03-01,12.2-1029): 24-8 " Added all_paths_bad flag. 24-9 " END HISTORY COMMENTS 24-10 000100 24-11 bool errflags.all_paths_bad,000100 " DL 000040 24-12 bool errflags.memory_unusable,000040 " DL 000020 24-13 bool errflags.device_inoperative,000020 " DL 000010 24-14 bool errflags.reassign_address,000010 " DL 000004 24-15 bool errflags.seg_unusable,000004 " DL 000002 24-16 bool errflags.please_repeat_call,000002 " DL 000001 24-17 bool errflags.fatal_error,000001 " DL 24-18 24-19 "END INCLUDE FILE device_error.incl.alm 201 include mctseg 25-1 " 25-2 " BEGIN INCLUDE FILE mctseg.incl.alm 25-3 " 25-4 " defines the wired segment layout for machine condition trace 25-5 " created 3/3/77 by James A. Bush 25-6 " 000000 25-7 equ mctseg.mc_lim,0 du - the end of the wired trace buffer 000000 25-8 equ mctseg.mc_nxtad,0 dl - address of next storage area for M. C. 000001 25-9 equ mctseg.mc_strt,1 du - beginning of M. C. storage mc_strt 000001 25-10 equ mctseg.mc_cnt,1 dl - number of M. C.s that can be stored 000002 25-11 equ mctseg.hr_lim,2 du - the end of history register storage area 000002 25-12 equ mctseg.hr_nxtad,2 dl - address of nxt storage area for history regs 000003 25-13 equ mctseg.hr_strt,3 du - beginning of history register storage 000003 25-14 equ mctseg.hr_cnt,3 dl - number of history regs that can be stored 000004 25-15 equ mctseg.x0save,4 du - safe storage for x0 000060 25-16 equ mctseg.mc_size,48 size of machine condition block - 48 words 000200 25-17 equ mctseg.hr_size,128 size of history register block - 128 words 25-18 " 25-19 " END INCLUDE FILE mctseg.incl.alm 25-20 " 202 include fault_vector 26-1 26-2 26-3 "BEGIN INCLUDE FILE fault_vector.incl.alm 26-4 26-5 " Modified February 1981 by J. Bongiovanni to add fault types 26-6 26-7 " 26-8 " Structure fv 26-9 " 000600 26-10 equ fv_size,384 26-11 26-12 000000 26-13 equ fv.ipair,0 "LEVEL 2 26-14 000000 26-15 equ fv.ipair.scu,0 000001 26-16 equ fv.ipair.tra,1 000100 26-17 equ fv.fpair,64 "LEVEL 2 26-18 000100 26-19 equ fv.fpair.scu,64 000101 26-20 equ fv.fpair.tra,65 000200 26-21 equ fv.i_tra_ptr,128 000300 26-22 equ fv.i_scu_ptr,192 000400 26-23 equ fv.f_tra_ptr,256 000500 26-24 equ fv.f_scu_ptr,320 26-25 000000 26-26 equ FAULT_NO_SDF,0 " Shutdown 000001 26-27 equ FAULT_NO_STR,1 " Store 000002 26-28 equ FAULT_NO_MME,2 " Master Mode Entry 1 000003 26-29 equ FAULT_NO_F1,3 " Fault Tag 1 000004 26-30 equ FAULT_NO_TRO,4 " Timer Runout 000005 26-31 equ FAULT_NO_CMD,5 " Command 000006 26-32 equ FAULT_NO_DRL,6 " Derail 000007 26-33 equ FAULT_NO_LUF,7 " Lockup 000010 26-34 equ FAULT_NO_CON,8 " Connect 000011 26-35 equ FAULT_NO_PAR,9 " Parity 000012 26-36 equ FAULT_NO_IPR,10 " Illegal Procedure 000013 26-37 equ FAULT_NO_ONC,11 " Operation Not Complete 000014 26-38 equ FAULT_NO_SUF,12 " Startup 000015 26-39 equ FAULT_NO_OFL,13 " Overflow 000016 26-40 equ FAULT_NO_DIV,14 " Divide Check 000017 26-41 equ FAULT_NO_EXF,15 " Execute 000020 26-42 equ FAULT_NO_DF0,16 " Directed Fault 0 (Segment Fault) 000021 26-43 equ FAULT_NO_DF1,17 " Directed FAult 1 (Page Fault) 000022 26-44 equ FAULT_NO_DF2,18 " Directed Fault 2 000023 26-45 equ FAULT_NO_DF3,19 " Directed Fault 3 000024 26-46 equ FAULT_NO_ACV,20 " Access Violation 000025 26-47 equ FAULT_NO_MME2,21 " Master Mode Entry 2 000026 26-48 equ FAULT_NO_MME3,22 " Master Mode Entry 3 000027 26-49 equ FAULT_NO_MME4,23 " Master Mode Entry 4 000030 26-50 equ FAULT_NO_F2,24 " Fault Tag 2 (Linkage Fault) 000031 26-51 equ FAULT_NO_F3,25 " Fault Tag 3 26-52 " Fault No. 26-30 are Undefined 000037 26-53 equ FAULT_NO_TRB,31 " Trouble 26-54 26-55 "END INCLUDE FILE fault_vector.incl.alm 203 include unpaged_page_tables 27-1 27-2 27-3 "BEGIN INCLUDE FILE unpaged_page_tables.incl.alm 27-4 27-5 27-6 "Created 03/01/84 1645.1 est Thu by convert_include_file, 27-7 " Version of 11/07/82 1445.1 est Sun. 27-8 27-9 "Made from >bootload>update>incl>unpaged_page_tables.incl.pl1, 27-10 " modified 03/01/84 1645.1 est Thu 27-11 27-12 " 27-13 " Structure upt 27-14 " 27-15 000000 27-16 equ upt.sst_absloc,0 000001 27-17 equ upt.sst_last_loc,1 000002 27-18 equ upt.upt_absloc,2 000003 27-19 equ upt.upt_last_loc,3 000004 27-20 equ upt.iupt_absloc,4 000005 27-21 equ upt.iupt_last_loc,5 000006 27-22 equ upt.current_length,6 000007 27-23 equ upt.max_length,7 000010 27-24 equ upt.first_entry,8 " LEVEL 2 27-25 27-26 27-27 " 27-28 " Structure upt_entry 27-29 " 000000 27-30 equ upt_entry.size,0 000001 27-31 equ upt_entry.segno,1 000002 27-32 equ upt_entry.ptws,2 27-33 27-34 "END INCLUDE FILE unpaged_page_tables.incl.alm 204 " 205 " check for wild transfers to bound_page_control|0 206 000000 0a 000127 7050 00 207 tsx5 page_fault_error "ERROR - TRA TO PAGE|0" 000001 0a 000127 7050 00 208 tsx5 page_fault_error "ERROR - TRA TO PAGE|1" 209 " 210 " 211 " The following code (located at bound_page_control|2) is used for 212 " hardware debugging to make it easy to restart the last page 213 " fault via restoring the machine conditions and doing an RCU. 214 " 000002 0a 000014 3700 20 215 epplp my_lp,* restore page's linkage 000003 4a 4 00020 3501 20 216 eppap pds$page_fault_data 000004 0a 001402 7100 00 217 tra restart_fault 218 000005 aa 000000 000000 219 dec 0 " (bpc|5) -- address_mask used to be here 220 221 " This location (bound_page_control|6) is left unused so that 222 " obsolete patches of run limit (write_limit) will not crash system. 000006 223 obsolete_wlim: 000006 aa 000000 000000 224 dec 0 225 000007 aa 000000 0110 03 226 even 000010 aa 077777 000043 227 pf_prs: its -1,1 000011 aa 000001 000000 000012 228 pf_scuinfo: 000012 aa 077777 000043 229 its -1,1 000013 aa 000001 000000 000014 230 my_lp: 000014 aa 077777 000043 231 its -1,1 000015 aa 000001 000000 232 000016 233 cme_offsets: " set up by initialize_faults. 000016 234 cme_0: 000016 235 cme_bp: 000016 aa 077777 000043 236 cme_fp: its -1,0 000017 aa 000000 000000 237 000020 238 cme_1: 000020 239 cme_devadd: 000020 240 cme_flags: 000020 aa 077777 000043 241 its -1,1 000021 aa 000001 000000 242 000022 243 cme_2: 000022 244 cme_ptwp: 000022 245 cme_astep: 000022 aa 077777 000043 246 its -1,2 000023 aa 000002 000000 247 000024 248 cme_3: 000024 249 cme_pin_counter: 000024 250 cme_synch_page_entryp: 000024 aa 077777 000043 251 its -1,3 000025 aa 000003 000000 252 000026 253 sdw_bits: " Bits for abs-seg SDW -- it is 254 " Address 0, read/write, one unpaged page 255 256 iftarget L68 " SDW is different format for each 000026 aa 000000 000004 vfd 18/0,18/sdw.valid 000027 aa 000775 200000 vfd 1/0,14/(1024/16)-1,3/sdw.read+sdw.write,18/sdw.unpaged " ifend 260 261 iftarget ADP " vfd 18/0,18/sdw.valid " vfd 14/(1024/16)-1,4/0,18/sdw.read+sdw.write+sdw.unpaged " ifend 265 000030 266 channel_mask_set: 000030 aa 000000 000017 267 oct 17,17 000031 aa 000000 000017 268 000032 269 unnull_mask: 000032 aa 377777 777777 270 zero -1-ptw.nulled,-1 mask to resurrect an address 271 000033 aa 000000 0110 03 272 even 000034 aa 077777 000043 273 null: its -1,1 000035 aa 000001 000000 000036 274 pc_signal_arglist: 000036 aa 000006 000004 275 vfd 18/6,18/4,18/0,18/0 000037 aa 000000 000000 276 277 "********************************************************************* 278 "********************************************************************* 279 "********************************************************************* 280 "********* ********** 281 "********* HERE ARE THE CONSTANTS ... AND ********** 282 "********* HERE BEGINS THE CODE OF PAGE_FAULT. ********** 283 "********* ********** 284 "********************************************************************* 285 "********************************************************************* 286 "********************************************************************* 287 " 288 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 289 " 290 " Subroutines: 291 " 292 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 293 000040 294 lock_ptl: 000040 aa 6 00030 6501 00 295 sprilp sp|stack_frame.lp_ptr we don't do a normal 'entry' so ... 000041 296 lock_ptl_no_lp: 000041 4a 4 00022 3531 20 297 epbpbb sst$ bb -> SST through out page 000042 4a 4 00024 2351 20 298 lda pds$processid lock the page table lock 000043 aa 3 00020 3541 00 299 stac sst|sst.ptl 000044 0a 000063 6000 00 300 tze ptl_ok branch if we think locked it 301 read_clock meter time waiting for lock 000045 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 000046 aa 3 00020 1151 00 302 cmpa sst|sst.ptl check for mylock on page table lock 000047 4a 4 00030 6001 20 303 tze page_error$ptl_mylock complain if lock already set 000050 4a 4 00032 7571 20 304 staq pds$arg_1 000051 4a 4 00024 2351 20 305 lda pds$processid get set to lock again 000052 306 ptl_repeat: 000052 aa 3 00020 3541 00 307 stac sst|sst.ptl hurry up and wait 000053 aa 000000 0110 00 308 nop 000054 aa 000000 0110 00 309 nop 000055 0a 000070 6010 00 310 tnz ptlfail locked, see if wait needed 311 read_clock 000056 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 000057 4a 4 00032 1771 20 312 sbaq pds$arg_1 000060 aa 3 00156 0771 00 313 adaq sst|sst.loop_lock_time 000061 aa 3 00156 7571 00 314 staq sst|sst.loop_lock_time 315 increment sst|sst.loop_locks meter times we had to loop lock missing increment,sst|sst.loop_locks 000062 aa 3 00154 0541 00 aos sst|sst.loop_locks 000063 316 ptl_ok: 000063 4a 4 00024 2351 20 317 lda pds$processid did we lock ok? 000064 aa 3 00020 1151 00 318 cmpa sst|sst.ptl 000065 0a 000067 6000 00 319 tze *+2 000066 0a 000127 7050 00 320 tsx5 page_fault_error "ERROR - PTL STAC FAILED" 000067 aa 000000 7100 17 321 tra 0,.ret 322 000070 323 ptlfail: 000070 0a 001131 1070 03 324 cmpx .ret,pft_lret,du locking for page fault? 000071 0a 000052 6010 00 325 tnz ptl_repeat no, loop some more 326 read_clock account for partial pf time 000072 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 000073 4a 4 00034 1771 20 327 sbaq pds$time_1 account for partial pf time 000074 4a 4 00036 0771 20 328 adaq tc_data$cpu_pf_time account for partial pf time 000075 4a 4 00036 7571 20 329 staq tc_data$cpu_pf_time account for partial pf time 000076 4a 4 00040 7101 20 330 tra pxss$ptl_wait yes, wait for lock 331 000077 332 ptl_wait_return: "return location from pxss$ptl_wait 000077 4a 4 00020 3501 20 333 eppap pds$page_fault_data 334 read_clock account for rest of pf time 000100 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 000101 4a 4 00034 7571 20 335 staq pds$time_1 account for rest of pf time 000102 0a 001127 7100 00 336 tra masked_switched_legal 337 000103 338 pmut_unlock_ptl: 000103 aa 000300 6270 00 339 push 000104 aa 7 00040 2721 20 000105 0a 000131 7060 00 340 tsx .2ret,init_savex_bb 000106 0a 000120 7070 00 341 tsx .ret,unlock_ptl 000107 aa 6 00032 3501 20 342 eppap sp|stack_frame.arg_ptr,* 000110 aa 7 00024 6521 00 343 sprisp sb|stack_header.stack_end_ptr 000111 aa 6 00020 3721 20 344 eppsp sp|stack_frame.prev_sp,* 000112 4a 4 00042 7101 20 345 tra pmut$unwire_unmask 000113 346 unlock_ptl_ext: 000113 aa 000300 6270 00 347 push 000114 aa 7 00040 2721 20 000115 0a 000131 7060 00 348 tsx .2ret,init_savex_bb 000116 0a 000120 7070 00 349 tsx .ret,unlock_ptl unlock the ptl 000117 0a 000536 7100 00 350 tra return 351 352 000120 353 unlock_ptl: 000120 4a 4 00044 7101 20 354 tra core_queue_man$unlock_ptl Hoo, boy! 355 000121 356 lock_ptl_ext: 000121 0a 000123 6270 00 357 eax .ret,.rt 000122 0a 000041 7100 00 358 tra lock_ptl_no_lp 000123 aa 7 00044 7101 20 359 .rt: short_return 360 000124 361 non_fatal_error: 000124 aa 777777 6250 17 362 eax5 -1,.ret 000125 4a 4 00046 7061 20 363 tsx .2ret,page_error$non_fatal_error 000126 aa 000000 7100 17 364 tra 0,.ret 365 000127 366 page_fault_error: 000127 aa 777777 6250 15 367 eax5 -1,5 set x5 to point to actual call to subroutine 000130 4a 4 00050 7101 20 368 tra page_error$page_fault_error die 369 000131 370 init_savex_bb: 000131 4a 4 00022 3535 20 371 epp sst,sst$ 000132 372 init_savex: 000132 aa 6 00060 6351 00 373 eaa save_stack get address of save stack base 000133 aa 001500 2750 07 374 ora stack_size*64,dl set up a tally word for storing into save_stack 000134 aa 6 00075 7551 00 375 sta stackp stash this away 000135 aa 000000 7100 16 376 tra 0,.2ret return to the caller 377 378 000136 379 savex: 000136 aa 6 00075 7471 56 380 stx .ret,stackp,id store x7 in save stack using tally word 000137 aa 000000 6070 16 381 ttf 0,.2ret return to the caller if tally not runout 000140 0a 000127 7050 00 382 tsx5 page_fault_error "ERROR - SAVE STACK OVERFLOW" 383 000141 384 unsavex: 000141 aa 6 00075 2271 54 385 ldx .ret,stackp,di pop value of x7 (also updating tally word properly) 000142 aa 000000 7100 17 386 tra 0,.ret 000143 387 unsavex_1: 000143 aa 6 00075 2271 54 388 ldx .ret,stackp,di pop value of x7 (also updating tally word properly) 000144 aa 000001 7100 17 389 tra 1,.ret 390 391 " 392 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""" 393 " " 394 " Subroutines to manage used list threading " 395 " " 396 " " 397 " " 398 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 399 400 " 401 " Move an entry to least-recently-used place 402 " 000145 403 thread_to_lru: 404 405 406 " assumes .cme -> cme 407 000145 aa 3 00056 1041 00 408 cmpx .cme,sst|sst.usedp see if already at lru point 000146 aa 000000 6000 17 409 tze 0,.ret leave it if so 410 000147 0a 000016 2340 74 411 szn cme_fp,*.cme make sure threaded in (could be postpurge os) 000150 aa 000000 6044 17 412 tmoz 0,.ret 413 414 415 " 416 " Load pointers to current brothers, thread out. 417 " 000151 0a 000016 2200 74 418 ldx .nxt,cme_fp,*.cme next 000152 0a 000016 7210 74 419 lxl .lst,cme_bp,*.cme previous 420 000153 aa 3 00472 1041 00 421 cmpx .cme,sst|sst.wusedp see if write point is on .cme 000154 0a 000156 6010 00 422 tnz *+2 000155 aa 3 00472 7401 00 423 stx .nxt,sst|sst.wusedp make writes start at next 424 425 " Thread out 426 000156 0a 000016 7400 71 427 stx .nxt,cme_fp,*.lst successor(last) = successor 000157 0a 000016 4410 70 428 sxl .lst,cme_bp,*.nxt last(successor) = last 429 430 " Move to usedp 431 000160 432 mv_to_usedp: 000160 aa 3 00056 2201 00 433 ldx .nxt,sst|sst.usedp point to successor to be 434 435 " See if usedp at wusedp. If so, back up wusedp. 436 000161 aa 3 00472 1001 00 437 cmpx .nxt,sst|sst.wusedp see if wusedp = usedp 000162 0a 000164 6010 00 438 tnz *+2 no, not equal. 000163 aa 3 00472 7441 00 439 stx .cme,sst|sst.wusedp our cme is new wused 440 000164 aa 3 00056 7441 00 441 stx .cme,sst|sst.usedp in any case, our cme is new used. 442 000165 443 thread_behind: 000165 0a 000016 7210 70 444 lxl .lst,cme_bp,*.nxt point to last to be 445 446 " Thread to .cme 447 000166 0a 000016 7440 71 448 stx .cme,cme_fp,*.lst successor (last) = cme 000167 0a 000016 4440 70 449 sxl .cme,cme_bp,*.nxt last (successor) = cme 450 451 " Thread cme to environment 452 000170 0a 000016 7400 74 453 stx .nxt,cme_fp,*.cme successor (cme) = successor 000171 0a 000016 4410 74 454 sxl .lst,cme_bp,*.cme last (cme) = last 455 000172 aa 000000 7100 17 456 tra 0,.ret 457 458 "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" " 459 " " 460 " Thread a cme out of the used list. " 461 " " 462 "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" " 463 000173 464 thread_out: 465 466 " Point to environment 467 000173 0a 000016 2200 74 468 ldx .nxt,cme_fp,*.cme successor = successor (cme) 000174 0a 000176 6054 00 469 tpnz *+2 000175 0a 000127 7050 00 470 tsx5 page_fault_error "ERROR - THREADING OUT UNTHREADED CME" 471 000176 0a 000016 7210 74 472 lxl .lst,cme_bp,*.cme last = last (cme) 473 474 " Make sure replacement and writing pointers are not 475 " looking at .cme. 476 000177 aa 3 00056 1041 00 477 cmpx .cme,sst|sst.usedp 000200 0a 000202 6010 00 478 tnz *+2 000201 aa 3 00056 7401 00 479 stx .nxt,sst|sst.usedp move usedp to successor if so 480 000202 aa 3 00472 1041 00 481 cmpx .cme,sst|sst.wusedp 000203 0a 000205 6010 00 482 tnz *+2 000204 aa 3 00472 7401 00 483 stx .nxt,sst|sst.wusedp 484 485 " Thread out 486 000205 0a 000016 4410 70 487 sxl .lst,cme_bp,*.nxt last (successor) = last 000206 0a 000016 7400 71 488 stx .nxt,cme_fp,*.lst successor (last) = successor 489 000207 0a 000016 4500 74 490 stz cme_fp,*.cme 000210 aa 000000 7100 17 491 tra 0,.ret 492 493 " 494 "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" " 495 " " 496 " Thread an unthreaded entry to lru " 497 " " 498 " " 499 "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" " 500 000211 501 thread_in: 000211 0a 000016 2340 74 502 szn cme_fp,*.cme make sure not threaded in already 000212 0a 000160 6044 00 503 tmoz mv_to_usedp 000213 0a 000127 7050 00 504 tsx5 page_fault_error "ERROR - THREADING IN THREADED CME" 505 506 "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" " 507 " 508 " Thread an unthreaded entry to MRU. " 509 " " 510 "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" " 511 000214 512 thread_in_mru: 000214 aa 3 00472 2201 00 513 ldx .nxt,sst|sst.wusedp thread in behind wusedp. 000215 0a 000016 2340 74 514 szn cme_fp,*.cme make sure not threaded in 000216 0a 000165 6044 00 515 tmoz thread_behind move behind wusedp 000217 0a 000127 7050 00 516 tsx5 page_fault_error "ERROR - MRU THREADING THREADED CME" 517 518 " 519 " External entry to thread to lru. 520 " 000220 521 thread_lru_ext: 000220 aa 0 00002 3521 20 522 eppbp ap|2,* ap -> cmep 000221 aa 2 00000 6241 20 523 eax .cme,bp|0,* 000222 4a 4 00022 3535 20 524 epp sst,sst$ set up sst ptr 000223 0a 000145 7070 00 525 tsx .ret,thread_to_lru 000224 aa 7 00044 7101 20 526 short_return 527 " 528 000225 529 inhibit on 000225 aa 000000 0112 03 530 even 000226 531 meter_virtual_time: 000226 aa 000001 3352 07 532 lca 1,dl check for recursive metering 000227 4a 4 00052 0553 20 533 asa pds$vtime_count .. 000230 aa 000000 6052 17 534 tpl 0,.ret yes, do no more 535 read_clock get current value of CPU time 000231 4a 4 00026 6333 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 000232 aa 000140 0332 07 536 adl 96,dl add in correction delta 000233 4a 4 00054 1773 20 537 sbaq pds$cpu_time .. 000234 4a 4 00056 1773 20 538 sbaq pds$time_v_temp get time used for this fault/interrupt 000235 4a 4 00056 7573 20 539 staq pds$time_v_temp 000236 4a 4 00060 0773 20 540 adaq pds$virtual_delta save as virtual time increment 000237 4a 4 00060 7573 20 541 staq pds$virtual_delta .. 000240 4a 4 00056 2373 20 542 ldaq pds$time_v_temp also calculate total vcpu 000241 4a 4 00062 0773 20 543 adaq tc_data$+delta_vcpu 000242 4a 4 00062 7573 20 544 staq tc_data$+delta_vcpu 000243 aa 000000 7102 17 545 tra 0,.ret 000244 546 inhibit off 547 000244 548 set_up_abs_seg: 000244 aa 6 00173 2351 00 549 lda core_add 000245 aa 000014 7350 00 550 als coreadd_to_sdw.ls shift core addr into sdw pos 000246 aa 000000 6360 00 551 eaq 0 clear q-reg 000247 0a 000026 2770 00 552 oraq sdw_bits turn on other interesting bits 000250 4a 4 00012 3501 20 553 eppap abs_seg1$ get pointer to core area 000251 4a 4 00012 2201 00 554 ldx .tem,lp|abs_seg1_link get segno of abs_seg1 000252 4a 4 00012 0201 00 555 adlx .tem,lp|abs_seg1_link multiply by 2 000253 4a 4 00064 7571 20 556 staq dseg$,.tem store in descriptor segment 000254 aa 000000 5320 00 557 cams 000255 aa 000000 7100 16 558 tra 0,.2ret 559 000256 560 store_pattern: 000256 0a 000244 7060 00 561 tsx .2ret,set_up_abs_seg get abs_seg1 ready 000257 0a 003026 2370 00 562 ldaq =vo36/777666333222,o36/444000111555 000260 aa 0 00000 7571 00 563 staq ap|0 and store it into the page 000261 aa 0 01776 7571 00 564 staq ap|1022 .. 000262 aa 000000 7100 17 565 tra 0,.ret 566 000263 567 check_pattern: 000263 0a 000244 7060 00 568 tsx .2ret,set_up_abs_seg 000264 0a 003026 2370 00 569 ldaq =vo36/777666333222,o36/444000111555 000265 aa 0 00000 1171 00 570 cmpaq ap|0 if the same we have trouble 000266 aa 000001 6000 17 571 tze 1,.ret take error return 000267 aa 0 01776 1171 00 572 cmpaq ap|1022 try the last 2 words 000270 aa 000000 6010 17 573 tnz 0,.ret ok if not the same 000271 aa 000001 7100 17 574 tra 1,.ret bad news if the same 575 000272 576 clear_core: 000272 0a 000244 7060 00 577 tsx .2ret,set_up_abs_seg make abs_seg1 point to core_add 000273 aa 010000 6200 00 578 eax .tem,4096 zero out 4096 characters 000274 aa 000140 1004 00 579 mlr (),(pr,rl),fill(0) 000275 aa 000000 000000 580 desc9a 0,0 000276 aa 000000 000010 581 desc9a ap|0,x0 .tem 000277 aa 000000 7100 17 582 tra 0,.ret 583 000300 584 check_for_zero: " assumes abs_seg1 setup 000300 4a 4 00012 3501 20 585 eppap abs_seg1$ 000301 aa 010000 6200 00 586 eax .tem,4096 number of characters in a page 000302 aa 000140 1064 00 587 cmpc (),(pr,rl),fill(0) 000303 aa 000000 000000 588 desc9a 0,0 000304 aa 000000 000010 589 desc9a ap|0,x0 .tem 000305 aa 000001 6000 17 590 tze 1,.ret 000306 aa 000000 7100 17 591 tra 0,.ret 592 593 594 " 595 " 596 " The following subroutine (reset_mode_reg) is called before masking down. 597 " It therefore must be inhibited. 598 " 000307 599 inhibit on 000307 600 reset_mode_reg: 000307 aa 000002 2312 00 601 rsw 2 get cpu type in a 000310 aa 000003 7352 00 602 als mc.cpu_type_shift get the CPU type 000311 aa 300000 3752 03 603 ana mc.cpu_type_mask,du 000312 aa 0 00046 7513 70 604 stca ap|mc.cpu_type_word,70 store in machine conditions 000313 aa 000017 7712 00 605 arl 18-mc.cpu_type_shift position in au lower 000314 aa 000000 6242 01 606 eax4 0,au copy to x4 000315 4a 4 00066 2343 20 607 szn pds$mc_trace_sw is this process tracing machine conditions? 000316 0a 000444 6052 00 608 tpl no_trace_mc xfer if no 000317 4a 4 00070 2343 20 609 szn pds$mc_trace_seg Does user want to trace all M. Cs? 000320 0a 000331 6002 00 610 tze cp_hregs xfer if seg number zero 000321 aa 0 00030 2353 00 611 lda ap|mc.scu.ppr.psr_word look at the psr 000322 aa 077777 3752 03 612 ana scu.ppr.psr_mask,du and out everything except psr 000323 4a 4 00070 1153 20 613 cmpa pds$mc_trace_seg compare psr to object we are tracing 000324 0a 000331 6002 00 614 tze cp_hregs xfer if psr = object we are tracing 000325 aa 0 00032 2353 00 615 lda ap|mc.scu.tpr.tsr_word look at tsr 000326 aa 077777 3752 03 616 ana scu.tpr.tsr_mask,du and out everthing except tsr 000327 4a 4 00070 1153 20 617 cmpa pds$mc_trace_seg compare tsr to object we are tracing 000330 0a 000444 6012 00 618 tnz no_trace_mc do not trace if psr and tsr don't have seg 000331 aa 0 00044 4523 01 619 cp_hregs: scpr ap|mc.fim_temp,01 save fault register 000332 aa 0 00044 2373 00 620 ldaq ap|mc.fim_temp note that scpr does D.P. store and 000333 aa 0 00045 7553 00 621 sta ap|mc.fault_reg stores zeroes in mc.fault_reg 000334 aa 000003 7722 00 622 qrl mc.cpu_type_shift make room for cpu type 000335 aa 0 00046 2763 00 623 orq ap|mc.cpu_type_word or in cpu type 000336 aa 0 00046 7523 70 624 stcq ap|mc.cpu_type_word,70 store cpu type and ext fault reg 000337 4a 4 00072 2353 20 625 lda prds$processor_tag get cpu num 000340 0a 000460 7162 05 626 xec cache_ctr_tab,al lb=> per-cpu cache err ctrs 000341 aa 0 00045 2353 00 627 lda ap|mc.fault_reg reload PFR 000342 aa 000010 3752 07 628 ana =o10,dl cache dir parity (bit 32)? 000343 0a 000345 6002 00 629 tze check_efr no, go check EFR 000344 aa 5 00001 0543 00 630 aos lb|1 yes, increment the per-cpu ctr 000345 631 check_efr: 000345 aa 077774 3762 03 632 anq mc.ext_fault_reg_mask,du mask unwanted bits OFF 000346 0a 000357 6002 00 633 tze no_efr no bits on, bypass 000347 aa 000002 7362 00 634 qls 2 get EFR bits in Q 1-17 000350 aa 000000 6352 00 635 eaa 0 set up A as incrementer 000351 636 efr_loop: 000351 aa 000001 0752 07 637 ada 1,dl increment EFR slot number 000352 aa 000001 7362 00 638 qls 1 is this bit on? 000353 0a 000351 6056 00 639 tpnz efr_loop no, but some other bit on 000354 0a 000357 6002 00 640 tze no_efr no more EFR bits 000355 aa 5 00001 0543 05 641 aos lb|1,al increment EFR counter 000356 0a 000351 7102 00 642 tra efr_loop look for nxt EFR bit 643 000357 4a 4 00074 7653 20 644 no_efr: lprplb pds$mc_trace_buf get packed ptr to wired trace buffer 000360 aa 5 00002 7253 00 645 lxl5 lb|mctseg.hr_nxtad x5 = rel ptr to next H. R. storage location 000361 aa 5 00002 1053 00 646 cmpx5 lb|mctseg.hr_lim do we have to roll over the trace? 000362 0a 000365 6042 00 647 tmi hr_roll xfer if no 000363 aa 5 00003 2253 00 648 ldx5 lb|mctseg.hr_strt yes, pick up initial storage location 000364 aa 5 00002 4453 00 649 sxl5 lb|mctseg.hr_nxtad store new location 000365 aa 000200 6252 15 650 hr_roll: eax5 mctseg.hr_size,5 increment storage location 000366 aa 5 00002 4453 00 651 sxl5 lb|mctseg.hr_nxtad set rel ptr to next H. R. storage location 000367 aa 5 77600 3717 15 652 epplb lb|-mctseg.hr_size,5 lp -> current HR storage location 000370 aa 000002 2362 03 653 ldq 2,du get a 2 for stepping address 000371 aa 000004 6262 00 654 eax6 4 4 blocks of 000372 aa 000020 6252 00 655 scpr1: eax5 16 16 history registers 000373 aa 000000 6232 00 656 eax3 0 set up for L68 CPU type initally 000374 aa 000001 1042 03 657 cmpx4 1,du is this a DPS8/70M CPU? 000375 0a 000405 6012 00 658 tnz scpr2 xfer if no, it is L68 000376 aa 000060 6232 00 659 eax3 48 yes, set up to skip first 48 hregs 000377 aa 000003 1062 03 660 cmpx6 3,du DU hreg? Don't have one on DPS8/70M 000400 0a 000405 6012 00 661 tnz scpr2 no, go execute it 000401 aa 000100 1006 00 662 mlr (),(pr),fill(0) zero out this 32 word block 000402 aa 000000 000000 663 desc9a 0,0 000403 aa 500100 000200 664 desc9a lb|64,32*4 000404 aa 777777 6262 16 665 eax6 -1,6 yes, skip it 000405 0a 000453 2352 16 666 scpr2: lda scpr-1,6 get correct instruction 000406 aa 0 00044 7553 00 667 sta ap|mc.fim_temp save in stack 000407 aa 0 00044 7163 00 668 scpr3: xec ap|mc.fim_temp execute the instruction 000410 aa 000000 1032 03 669 cmpx3 0,du are we through skipping hregs? 000411 0a 000414 6002 00 670 tze scpr4 yes, go increment address 000412 aa 777777 6232 13 671 eax3 -1,3 no, skip another 000413 0a 000407 7102 00 672 tra scpr3 and go execute scpr again 673 000414 aa 0 00044 0563 00 674 scpr4: asq ap|mc.fim_temp increment address of instruction 000415 aa 777777 6252 15 675 eax5 -1,5 count down 000416 0a 000407 6012 00 676 tnz scpr3 more of this 16 double word block 000417 aa 777777 6262 16 677 eax6 -1,6 count down 000420 0a 000372 6012 00 678 tnz scpr1 another kind of hreg 679 000421 aa 000100 6252 00 680 eax5 64 initially set clear count to 64 000422 aa 000001 1042 03 681 cmpx4 1,du is this a DPS8/70M CPU? 000423 0a 000425 6002 00 682 tze *+2 yes, clear all 64 hregs 000424 aa 000020 6252 00 683 eax5 16 no, clear only 16 hregs 000425 aa 000000 6742 03 684 lcpr 0,03 set all history regs to zero 000426 aa 777777 6252 15 685 eax5 -1,5 count down 000427 0a 000425 6056 00 686 tpnz *-2 xfer if more to do 000430 aa 000000 3316 00 687 eawplb 0 000431 688 trace_mc: 000431 aa 5 00000 7253 00 689 lxl5 lb|mctseg.mc_nxtad x5 = rel ptr to next M. C. storage loc 000432 aa 5 00000 1053 00 690 cmpx5 lb|mctseg.mc_lim do we have to roll over the trace? 000433 0a 000436 6042 00 691 tmi mc_roll xfer if no 000434 aa 5 00001 2253 00 692 ldx5 lb|mctseg.mc_strt yes, pick up initial storage location 000435 aa 5 00000 4453 00 693 sxl5 lb|mctseg.mc_nxtad store new location 000436 694 mc_roll: 000436 aa 000060 6252 15 695 eax5 mctseg.mc_size,5 increment storage location 000437 aa 5 00000 4453 00 696 sxl5 lb|mctseg.mc_nxtad set rel ptr to next M. C. storage location 000440 aa 5 77720 3717 15 697 epplb lb|-mctseg.mc_size,5 lp -> current MC storage location 000441 aa 0 00100 1007 00 698 mlr (pr),(pr) move the data to wired buffer 000442 aa 000000 000300 699 desc9a ap|0,mctseg.mc_size*4 000443 aa 500000 000300 700 desc9a lb|0,mctseg.mc_size*4 000444 701 no_trace_mc: 000444 4a 4 00076 3717 20 702 epplb prds$cache_luf_reg reset cache control reg 000445 aa 5 00000 6743 02 703 lcpr lb|0,02 lcpr to reload luf and cache control 000446 4a 4 00100 2353 20 704 lda prds$mode_reg retrieve template mode reg 000447 aa 000061 2752 07 705 ora mr.enable_mr+mr.enable_hist,dl enable mode reg and hist regs 000450 4a 4 00102 7553 20 706 sta prds$mode_reg_enabled save this mode reg value 000451 4a 4 00102 3717 20 707 epplb prds$mode_reg_enabled get pointer to temp mode reg value 000452 aa 5 00000 6743 04 708 lcpr lb|0,04 reload the mode register 000453 aa 000000 7102 17 709 tra 0,.ret return to caller 710 000454 aa 5 00000 4523 40 711 scpr: scpr lb|0,40 OU History Regs for L68, OU/DU for DPS8 000455 aa 5 00040 4523 20 712 scpr lb|32,20 CU History Regs 000456 aa 5 00100 4523 10 713 scpr lb|64,10 DU History Regs for L68, not used for DPS8 000457 aa 5 00140 4523 00 714 scpr lb|96,00 APU History Regs 715 000460 716 cache_ctr_tab: 000460 4a 4 00104 3717 20 717 epplb wired_hardcore_data$cpu_a_cache_err_ctr_array 000461 4a 4 00106 3717 20 718 epplb wired_hardcore_data$cpu_b_cache_err_ctr_array 000462 4a 4 00110 3717 20 719 epplb wired_hardcore_data$cpu_c_cache_err_ctr_array 000463 4a 4 00112 3717 20 720 epplb wired_hardcore_data$cpu_d_cache_err_ctr_array 000464 4a 4 00114 3717 20 721 epplb wired_hardcore_data$cpu_e_cache_err_ctr_array 000465 4a 4 00116 3717 20 722 epplb wired_hardcore_data$cpu_f_cache_err_ctr_array 000466 4a 4 00120 3717 20 723 epplb wired_hardcore_data$cpu_g_cache_err_ctr_array 000467 4a 4 00122 3717 20 724 epplb wired_hardcore_data$cpu_h_cache_err_ctr_array 725 000470 726 fault_ctr_table: 000470 4a 4 00124 3517 20 727 eppab wired_hardcore_data$cpu_a_flt_ctr_array 000471 4a 4 00126 3517 20 728 eppab wired_hardcore_data$cpu_b_flt_ctr_array 000472 4a 4 00130 3517 20 729 eppab wired_hardcore_data$cpu_c_flt_ctr_array 000473 4a 4 00132 3517 20 730 eppab wired_hardcore_data$cpu_d_flt_ctr_array 000474 4a 4 00134 3517 20 731 eppab wired_hardcore_data$cpu_e_flt_ctr_array 000475 4a 4 00136 3517 20 732 eppab wired_hardcore_data$cpu_f_flt_ctr_array 000476 4a 4 00140 3517 20 733 eppab wired_hardcore_data$cpu_g_flt_ctr_array 000477 4a 4 00142 3517 20 734 eppab wired_hardcore_data$cpu_h_flt_ctr_array 735 000500 736 inhibit off 737 000500 738 get_pvtx: 000500 aa 3 00004 2351 13 739 lda ast|aste.pvtx_word,.aste 000501 aa 000022 7710 00 740 arl aste.pvtx_shift 000502 aa 000777 3750 07 741 ana aste.pvtx_mask,dl 000503 aa 6 00172 7551 00 742 sta pvtx 000504 aa 000000 7100 17 743 tra 0,.ret 744 745 746 " 747 " " " " " " " " " " " " " " " 748 " 749 " enter_data -- entry to add data to the 'system trace list' 750 " Call is: 751 " 752 " call page$enter_data(data_word, type) 753 " 754 " where data_word is a word value to be 755 " entered into the next available slot in the trace 756 " list. If type = 0 (page fault type) then a return is 757 " done and the entry is not placed in the list. 758 " 759 " " " " " " " " " " " " " " " " " " " " " 760 761 include sys_trace 28-1 28-2 28-3 "BEGIN INCLUDE FILE sys_trace.incl.alm 28-4 28-5 28-6 "Created 12/03/83 1314.8 est Sat by convert_include_file, 28-7 " Version of 11/07/82 1445.1 est Sun. 28-8 28-9 "Made from >udd>m>bim>w>cpt>sys_trace.incl.pl1, 28-10 " modified 12/03/83 1314.1 est Sat 28-11 28-12 " all structures except trace removed by hand -- BIM 28-13 28-14 " 28-15 " Structure trace 28-16 " 004010 28-17 equ trace_size,2056 28-18 000000 28-19 equ trace.next_free_word,0 000023 28-20 equ trace.next_free_shift,19 377777 28-21 bool trace.next_free_mask,377777 28-22 000001 28-23 equ trace.last_available_word,1 000023 28-24 equ trace.last_available_shift,19 377777 28-25 bool trace.last_available_mask,377777 28-26 000002 28-27 equ trace.ttime,2 " DOUBLE 000004 28-28 equ trace.temp,4 28-29 000005 28-30 equ trace.index_word,5 000023 28-31 equ trace.index_shift,19 377777 28-32 bool trace.index_mask,377777 28-33 000006 28-34 equ trace.threshold_word,6 000023 28-35 equ trace.threshold_shift,19 377777 28-36 bool trace.threshold_mask,377777 000006 28-37 equ trace.flags,6 " LOWER 000006 28-38 equ trace.send_ips_word,6 400000 28-39 bool trace.send_ips,400000 " DL 28-40 000010 28-41 equ trace.data,8 " LEVEL 2 28-42 000010 28-43 equ trace.data_word,8 28-44 28-45 "END INCLUDE FILE sys_trace.incl.alm 762 000505 763 trace_signaller: 000505 0a 000014 3700 20 764 epplp my_lp,* set linkage pointer 000506 4a 4 00144 2351 20 765 lda pds$condition_name get first four characters of name 000507 4a 4 00146 2361 20 766 ldq pds$condition_name+1 000510 aa 000011 7370 00 767 lls 9 shift out ACC count field 000511 aa 100000 2360 03 768 ldq signaller_type,du get coded type 000512 0a 000577 7070 00 769 tsx .ret,enter 000513 aa 5 00000 7101 00 770 tra lb|0 return via special code 771 000514 772 trace_restart_fault: 000514 0a 000014 3700 20 773 epplp my_lp,* 000515 aa 000000 6350 00 774 eaa 0 code for restart is zero 000516 aa 110000 2360 03 775 ldq restart_fault_type,du 000517 0a 000577 7070 00 776 tsx .ret,enter 000520 aa 5 00000 7101 00 777 tra lb|0 return via special code 778 000521 779 trace_marker: 000521 aa 0 00002 2351 20 780 lda ap|2,* get char string to use as marker 000522 aa 130000 2360 03 781 ldq marker_type,du set type appropriately 000523 0a 000577 7070 00 782 tsx .ret,enter 000524 aa 7 00044 7101 20 783 short_return 784 000525 785 trace_scheduling: 000525 aa 000000 6350 00 786 eaa 0 code word is all zeros 000526 aa 120000 2360 03 787 ldq reschedule_type,du get type code 000527 0a 000577 7100 00 788 tra enter 789 000530 790 enter_data: 000530 aa 0 00002 2351 20 791 lda ap|2,* pick up the data_word 000531 aa 0 00004 2361 20 792 ldq ap|4,* make sure non-zero type given 000532 aa 000036 7360 00 793 qls 30 left justify 000533 0a 000535 6000 00 794 tze short_return return if illegal type given 000534 0a 000577 7070 00 795 tsx .ret,enter 000535 796 short_return: 000535 aa 7 00044 7101 20 797 short_return 798 000536 aa 7 00042 7101 20 799 return: return 800 801 " 802 " Subroutine to enter a page fault into the system-trace list 803 " 000537 804 page_util_enter: 000537 aa 6 00134 7431 00 805 stx .aste,temp astep 000540 aa 777764 6200 12 806 eax .tem,-aste_size,.ptw PTW addr - ASTE size 000541 aa 6 00134 1201 00 807 sblx .tem,temp page number 000542 aa 000377 3600 03 808 anx .tem,=o377,du only significant bits 809 000543 4a 4 00150 2341 20 810 szn tc_data$post_purge_switch are we post-purging? 000544 0a 000553 6000 00 811 tze extended_page_util_enter no -- we can stuff more data into trace 812 813 " We are post-purging, so we need old format trace entry 814 000545 4a 4 00152 2361 20 815 ldq pds$page_fault_data+mc.scu.tpr.tsr_word get segno in q 000546 aa 000000 6350 13 816 eaa 0,.aste get astep in a-reg 000547 aa 000022 7710 00 817 arl 18 000550 aa 000022 7370 00 818 lls 18 fabricate entire code word 000551 aa 000000 6360 10 819 eaq 0,.tem page number (low order bits) in upper 000552 0a 000577 7100 00 820 tra enter 821 000553 822 extended_page_util_enter: 000553 4a 4 00154 2351 20 823 lda pds$page_fault_data+mc.scu.ppr.psr_word PPR in AU 000554 aa 007777 3750 03 824 ana =o7777,du Low-order bits only 000555 aa 000022 7710 00 825 arl 18 PPR in AL 000556 4a 4 00156 2361 20 826 ldq pds$page_fault_data+mc.scu.ilc_word IC in QU 000557 aa 777777 3760 03 827 anq -1,du strip out garbage (indicators) 000560 aa 000030 7370 00 828 lls 18+6 1st 30 bits or first word 000561 aa 6 00134 7551 00 829 sta temp 000562 4a 4 00154 2351 20 830 lda pds$page_fault_data+mc.scu.ppr.psr_word PPR in AU 000563 4a 4 00160 2361 20 831 ldq pds$page_fault_data+mc.scu.cu_stat_word CU status bits 000564 aa 000100 3160 07 832 canq scu.cu.if,dl fault on instruction fetch 000565 0a 000567 6010 00 833 tnz *+2 yes - use PPR 000566 4a 4 00152 2351 20 834 lda pds$page_fault_data+mc.scu.tpr.tsr_word no - use TSR 000567 aa 007777 3750 03 835 ana =o7777,du Low-order bits only 000570 aa 000022 7710 00 836 arl 18 segno in AL 000571 aa 000000 6360 10 837 eaq 0,.tem pageno in QU 000572 aa 000012 7360 00 838 qls 18-8 000573 aa 000006 7730 00 839 lrl 6 000574 aa 000006 7720 00 840 qrl 6 000575 aa 6 00134 2751 00 841 ora temp 000576 aa 170000 2760 03 842 orq extended_page_fault_type,du 843 000577 4a 4 00162 3501 20 844 enter: eppap pds$trace get pointer to trace structure 000600 aa 0 00000 2201 00 845 ldx .tem,ap|trace.next_free_word get current index to next free slot 000601 aa 0 00010 7571 10 846 staq ap|trace.data,.tem save coded information 847 read_clock 000602 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 000603 aa 0 00002 1771 00 848 sbaq ap|trace.ttime get incremental time 000604 aa 0 00004 7561 00 849 stq ap|trace.temp save in temporary 000605 aa 0 00002 0771 00 850 adaq ap|trace.ttime recalculate last fault time 000606 aa 0 00002 7571 00 851 staq ap|trace.ttime 000607 aa 0 00004 2361 00 852 ldq ap|trace.temp retrieve delta-time 000610 aa 000006 7720 00 853 qrl 6 in terms of 64 micro-seconds 000611 aa 177777 1160 07 854 cmpq =o177777,dl see if time is too large 000612 0a 000614 6040 00 855 tmi *+2 no, use it 000613 aa 177777 2360 07 856 ldq =o177777,dl yes, time is too large, use standard large value 000614 aa 0 00011 2561 10 857 orsq ap|trace.data+1,.tem OR time value into trace entry 000615 aa 000002 6200 10 858 eax .tem,2,.tem bump entry index 000616 aa 0 00001 1001 00 859 cmpx .tem,ap|trace.last_available_word check for wrap-around 000617 0a 000621 6010 00 860 tnz trace.no_wrap not now, though 000620 aa 000000 6200 00 861 eax .tem,0 we wrapped. reset to beginning 000621 862 trace.no_wrap: 000621 aa 0 00006 1001 00 863 cmpx .tem,ap|trace.threshold_word signal? 000622 0a 000637 6010 00 864 tnz trace.no_signal nope 000623 aa 0 00006 2351 00 865 lda ap|trace.send_ips_word Signals enabled? 000624 aa 400000 3150 07 866 cana trace.send_ips,dl 000625 0a 000637 6000 00 867 tze trace.no_signal 000626 4a 4 00164 3521 20 868 eppbp pds$apt_ptr,* no need to lock, we use stacq 000627 869 trace.retry_ips: 000627 4a 4 00166 2351 20 870 lda sys_info$pgt_mask This cannot recurse, 000630 aa 2 00011 2751 00 871 ora bp|apte.ips_message since we only test EQUAL to 000631 aa 2 00011 2361 00 872 ldq bp|apte.ips_message threshold. The pgt_ trace 000632 aa 2 00011 6541 00 873 stacq bp|apte.ips_message will be GREATER. 000633 0a 000627 6010 00 874 tnz trace.retry_ips 000634 aa 000001 2350 07 875 lda 1,dl set ring alarm 000635 4a 4 00170 7551 20 876 sta pds$alarm_ring store in simulated spot 000636 4a 4 00170 7745 20 877 lra pds$alarm_ring set for real 000637 878 trace.no_signal: 000637 aa 0 00000 7401 00 879 stx .tem,ap|trace.next_free_word 880 000640 aa 000000 7100 17 881 tra 0,.ret 882 883 000641 884 reset_working_set: 000641 aa 7 00044 7101 20 885 short_return 886 000642 887 pre_page_info: 000642 aa 0 00004 4501 20 888 stz ap|4,* pre-page calls 000643 aa 0 00006 4501 20 889 stz ap|6,* paging device page faults 000644 aa 0 00010 4501 20 890 stz ap|8,* no pre-paging 000645 aa 7 00044 7101 20 891 short_return 892 " 893 894 " quota primitives - check for RQO, decrement quota, increment quota 895 000646 896 check_quota: 000646 aa 2 00000 2351 00 897 lda ptw|0 inspect ptw 000647 aa 740000 3150 07 898 cana add_type.non_null,dl see if not_null address 000650 0a 000653 6000 00 899 tze check_quota.real_null 000651 aa 000000 7350 00 900 als 0 000652 aa 000000 6050 17 901 tpl 0,.ret real address, return 902 000653 903 check_quota.real_null: 000653 0a 000754 7060 00 904 tsx .2ret,type_terminal_quota 000654 0a 000656 7100 00 905 tra *+2 seg quota 000655 aa 000000 7100 17 906 tra 0,.ret dir quota, skip it for now 907 000656 aa 000000 6200 13 908 eax .tem,0,.aste loop up parents 000657 aa 3 00002 7201 10 909 quota_c: lxl .tem,ast|aste.par_astep,.tem get father 000660 aa 3 00005 3151 10 910 cana ast|aste.tqsw_word,.tem see if terminal 000661 0a 000657 6000 00 911 tze quota_c no, loop up 912 000662 4a 4 00172 2341 20 913 szn pds$quota_inhib special consideration? 000663 aa 000000 6010 17 914 tnz 0,.ret yes, return 915 000664 aa 6 00175 2351 00 916 lda entry_sw don't check on read entry 000665 aa 000001 1150 07 917 cmpa read_entry,dl 000666 aa 000000 6000 17 918 tze 0,.ret read entry, don't check 919 000667 aa 0 00032 2351 00 920 lda ap|mc.scu.tpr.trr_word get ring of faulting reference 000670 aa 700000 3150 03 921 cana scu.tpr.trr_mask,du see if in ring 0 000671 aa 000000 6000 17 922 tze 0,.ret yes, don't check quota 923 000672 aa 3 00011 2261 10 924 ldx .2ret,ast|aste.used,.tem check seg quota for over 000673 aa 3 00010 1061 10 925 cmpx .2ret,ast|aste.quota,.tem 000674 aa 000000 6020 17 926 tnc 0,.ret not over quota, return 000675 aa 000000 2350 07 927 lda PAGE_ERROR_RQO,dl type of error to signal 000676 aa 3 00000 3515 10 928 eppab ast|0,.tem ASTE of quota account 000677 0a 001436 7100 00 929 tra errquit 930 931 " subtract 1 from quota cell 932 000700 933 reset_quota: 000700 aa 000000 6200 13 934 eax .tem,0,.aste start at current aste 000701 0a 000754 7060 00 935 tsx .2ret,type_terminal_quota find quota parent 000702 aa 3 00002 7201 10 936 lxl .tem,ast|aste.par_astep,.tem seg quota applies to parent 937 000703 0a 000767 7160 06 938 quota_r: xec quota.lx,ql fetch correct cell 000704 0a 000707 6000 00 939 tze *+3 don't decrement thru 0 000705 aa 000001 1260 03 940 sblx .2ret,1,du 000706 0a 000771 7160 06 941 xec quota.sx,ql save back 000707 aa 3 00005 3151 10 942 cana ast|aste.tqsw_word,.tem stop at terminal account 000710 aa 000000 6010 17 943 tnz 0,.ret 000711 aa 3 00002 7201 10 944 lxl .tem,ast|aste.par_astep,.tem parent cell 000712 0a 000703 7100 00 945 tra quota_r 946 947 " add 1 to quota cell 948 000713 949 bump_quota: 000713 aa 000400 2350 03 950 lda aste.fmchanged,du turn on fmchanged 000714 aa 3 00012 2551 13 951 orsa ast|aste.fmchanged_word,.aste 952 000715 aa 000000 6200 13 953 eax .tem,0,.aste start at current aste 000716 0a 000754 7060 00 954 tsx .2ret,type_terminal_quota find quota parent 000717 aa 3 00002 7201 10 955 lxl .tem,ast|aste.par_astep,.tem seg quota applies to parent 956 000720 0a 000767 7160 06 957 quota_b: xec quota.lx,ql fetch correct cell 000721 aa 000001 0260 03 958 adlx .2ret,1,du 000722 0a 000771 7160 06 959 xec quota.sx,ql save back 000723 aa 3 00005 3151 10 960 cana ast|aste.tqsw_word,.tem stop at terminal account 000724 aa 000000 6010 17 961 tnz 0,.ret 000725 aa 3 00002 7201 10 962 lxl .tem,ast|aste.par_astep,.tem parent cell 000726 0a 000720 7100 00 963 tra quota_b 964 000727 965 bump_quota_covert_check: 966 967 " Add 1 to quota cell, also check that there exists a terminal quota node 968 " before the first upgraded node. This should be used only for dirs, 969 " so that we don't require terminal dir quota for upgraded dirs. 970 000727 aa 000400 2350 03 971 lda aste.fmchanged,du turn on fmchanged 000730 aa 3 00012 2551 13 972 orsa ast|aste.fmchanged_word,.aste 973 000731 aa 000000 6200 13 974 eax .tem,0,.aste start at current aste 000732 0a 000754 7060 00 975 tsx .2ret,type_terminal_quota find quota parent 000733 aa 3 00002 7201 10 976 lxl .tem,ast|aste.par_astep,.tem seg quota applies to parent 000734 aa 000020 2750 03 977 ora aste.multi_class,du we will "stop" on terminal 978 " node or upgraded node 000735 aa 6 00134 4501 00 979 stz temp assume terminal-ness 980 000736 0a 000767 7160 06 981 quota_bc: xec quota.lx,ql fetch correct cell 000737 aa 000001 0260 03 982 adlx .2ret,1,du 000740 0a 000771 7160 06 983 xec quota.sx,ql save back 000741 aa 3 00005 3151 10 984 cana ast|aste.tqsw_word,.tem look at tqsw and multi_class 000742 0a 000747 6000 00 985 tze quota_bc_next neither upgraded nor terminal 986 000743 aa 3 00005 7261 10 987 lxl .2ret,ast|aste.tqsw_word,.tem terminal half-word 000744 0a 000773 3060 06 988 canx .2ret,quota.tq_mask,ql 000745 0a 000751 6010 00 989 tnz quota_bc_term terminal found 000746 aa 6 00134 7551 00 990 sta temp upgraded found first 000747 991 quota_bc_next: 000747 aa 3 00002 7201 10 992 lxl .tem,ast|aste.par_astep,.tem parent cell 000750 0a 000736 7100 00 993 tra quota_bc 994 000751 995 quota_bc_term: 000751 aa 6 00134 2351 00 996 lda temp 000752 aa 000000 6010 17 997 tnz 0,.ret upgraded found first 000753 aa 000001 7100 17 998 tra 1,.ret terminal-ness okay 999 1000 " determines type of quota (seg/dir), returns to call+(1/2) so depending 1001 " also sets a to have corresponding mask bit for tqsw, 1002 " q to have a 0/1 corresponding to (seg/dir) 1003 000754 1004 type_terminal_quota: 000754 aa 3 00005 2351 13 1005 lda ast|aste.nqsw_word,.aste special seg? 000755 aa 100000 3150 07 1006 cana aste.nqsw,dl .. 000756 aa 000000 6010 17 1007 tnz 0,.ret leave whole biz if so 1008 000757 aa 040000 3150 07 1009 cana aste.dirsw,dl dirsw_word same as nqsw_word 000760 0a 000764 6010 00 1010 tnz type.dir_quota 1011 000761 aa 004000 2350 07 1012 lda aste.tqsw,dl seg quota type 000762 aa 000000 2360 07 1013 ldq 0,dl 000763 aa 000000 7100 16 1014 tra 0,.2ret 000764 1015 type.dir_quota: 000764 aa 002000 2350 07 1016 lda aste.tqsw/2,dl 000765 aa 000001 2360 07 1017 ldq 1,dl 000766 aa 000001 7100 16 1018 tra 1,.2ret 1019 000767 aa 3 00011 2261 10 1020 quota.lx: ldx .2ret,ast|aste.used,.tem instructions to load desired 000770 aa 3 00011 7261 10 1021 lxl .2ret,ast|aste.used,.tem quota cell 1022 000771 aa 3 00011 7461 10 1023 quota.sx: stx .2ret,ast|aste.used,.tem instructions to store desired 000772 aa 3 00011 4461 10 1024 sxl .2ret,ast|aste.used,.tem quota cell 1025 000773 1026 quota.tq_mask: 000773 aa 004000 0000 00 1027 arg aste.tqsw values for checking for tqsw 000774 aa 002000 0000 00 1028 arg aste.tqsw/2 in bump_quota_covert_check 1029 " 1030 " " " " " " " " " " " " " " " " " " " " " " " " 1031 " 1032 " check_accessible subroutine to check if any processor can access 1033 " the page in question. This tells us whether to 1034 " clear all the AM's. 1035 " 1036 " " " " " " " " " " " " " " " " " " " " " " " " 1037 000775 1038 check_accessible: 000775 aa 3 00002 2201 13 1039 ldx .tem,ast|aste.strp,.aste " get aste.strp 000776 aa 000000 6010 16 1040 tnz 0,.2ret " must CAM 000777 aa 3 00005 2351 13 1041 lda ast|aste.hc_sdw_word,.aste " check for HC segment 001000 aa 010000 3150 03 1042 cana aste.hc_sdw,du " aste.hc_sdw? 001001 aa 000000 6010 16 1043 tnz 0,.2ret " yes, CAM 1044 " volmap_seg_word same as hc_sdw_word 001002 aa 010000 3150 07 1045 cana aste.volmap_seg,dl " aste.volmap_seg? 001003 aa 000000 6010 16 1046 tnz 0,.2ret " yes, CAM 001004 aa 000001 7100 16 1047 tra 1,.2ret " we save some connects! 1048 " 1049 " " " " " " " " " " " " " " " " " " " " " " " " " 1050 " 1051 " Routines to check for pages of synchronized segments 1052 " 1053 " 1054 " On evict, do housekeeping 1055 " 1056 " tsx7 check_synch_cleanup 1057 " 1058 " On write, check if page must be held 1059 " 1060 " tsx7 check_for_synch_hold 1061 " 1062 " 1063 " 1064 " " " " " " " " " " " " " " " " " " " " " " " " " 1065 1066 001005 1067 check_synch_cleanup: 001005 0a 000020 2350 74 1068 lda cme_flags,*.cme 001006 aa 010000 3150 07 1069 cana cme.synch_held,dl synchronized page 001007 aa 000000 6000 17 1070 tze 0,.ret no 001010 4a 4 00174 7101 20 1071 tra page_synch$cleanup return to 0,x7 1072 001011 1073 check_for_synch_hold: 001011 aa 3 00013 2351 13 1074 lda ast|aste.synchronized_word,.aste 001012 aa 040000 3150 07 1075 cana aste.synchronized,dl synchronized page 001013 aa 000001 6000 17 1076 tze 1,.ret no 001014 0a 000136 7060 00 1077 tsx .2ret,savex recursive use of x7 001015 4a 4 00176 7071 20 1078 tsx .ret,page_synch$write check whether we should write 001016 0a 000141 7100 00 1079 tra unsavex do not write 001017 0a 000143 7100 00 1080 tra unsavex_1 write OK 1081 1082 " 1083 " " " " " " " " " " " " " " " " " " " " " " " " 1084 " 1085 " update_csl subroutine to make sure the csl 1086 " for a segment is correct. It is called 1087 " when a page is found to be zero, 1088 " either by being modified to zeroes or 1089 " by being a non-modified null address. 1090 " 1091 " " " " " " " " " " " " " " " " " " " " " " " " " 1092 001020 1093 update_csl: 001020 aa 6 00134 4501 00 1094 stz temp zero out entire word 001021 aa 6 00135 4501 00 1095 stz temp+1 and next as well 001022 aa 000014 6200 13 1096 eax .tem,aste_size,.aste get a pointer to the page table 001023 aa 6 00134 7401 00 1097 stx .tem,temp save for now 001024 aa 6 00135 7401 00 1098 stx .tem,temp+1 001025 aa 000001 6200 12 1099 eax .tem,1,.ptw get page number by subtracting base of PT from ptp 001026 aa 6 00134 1201 00 1100 sblx .tem,temp (add 1 to get csl ) 001027 aa 6 00134 7401 00 1101 stx .tem,temp 001030 aa 3 00012 2351 13 1102 lda ast|aste.csl_word,.aste pick up csl of segment 001031 aa 777000 3750 03 1103 ana aste.csl_mask_inner,du 001032 aa 000011 7710 00 1104 arl aste.csl_shift-18 shift to upper a, right justified 001033 aa 6 00134 1151 00 1105 cmpa temp compare with page number 001034 aa 000000 6010 17 1106 tnz 0,.ret not the same, don't change csl 001035 aa 777777 6200 12 1107 eax .tem,-1,.ptw start search at previous page 001036 aa 6 00135 1001 00 1108 cmpx .tem,temp+1 end search at first page of segment 001037 0a 001053 6020 00 1109 tnc up_csl.set_csl done (at page zero) 001040 aa 000004 2360 07 1110 ldq ptw.valid,dl get in core flag for compares 001041 1111 csl_loop: 001041 aa 3 00000 3161 10 1112 canq sst|0,.tem is current page in core ? 001042 0a 001053 6010 00 1113 tnz up_csl.set_csl yes, stop and set csl here 001043 aa 3 00000 2351 10 1114 lda sst|0,.tem get ptw 001044 aa 740000 3150 07 1115 cana add_type.non_null,dl is there a real address? 001045 0a 001050 6000 00 1116 tze up_csl.dont_count 001046 aa 000000 7350 00 1117 als 0 test sign 001047 0a 001053 6050 00 1118 tpl up_csl.set_csl real disk address 001050 1119 up_csl.dont_count: 001050 aa 777777 6200 10 1120 eax .tem,-1,.tem go to previous PTW 001051 aa 6 00135 1001 00 1121 cmpx .tem,temp+1 are we passed the start ? 001052 0a 001041 6030 00 1122 trc csl_loop no, loop back and check this page 001053 1123 up_csl.set_csl: 1124 "update csl into AST entry 001053 aa 000001 6350 10 1125 eaa 1,.tem get curerrent ptp (+1 to convert to csl format) 001054 aa 6 00135 1351 00 1126 sbla temp+1 subtract out base of page table 001055 aa 000011 7350 00 1127 als aste.csl_shift-18 shift to position in AST entry 001056 aa 3 00012 6751 13 1128 era ast|aste.csl_word,.aste and store in AST entry 001057 aa 777000 3750 03 1129 ana aste.csl_mask_inner,du 001060 aa 3 00012 6551 13 1130 ersa ast|aste.csl_word,.aste 001061 aa 000000 7100 17 1131 tra 0,.ret return 1132 1133 " 1134 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 1135 " 1136 " fault 1137 " 1138 " This entry is transferred to from the fault vector when a page fault 1139 " occurs. The pointers, registers, etc. must be saved... 1140 " 1141 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 1142 1143 even 001062 1144 fault: 001062 1145 inhibit on 001062 0a 000010 2542 20 1146 spri pf_prs,* 001063 0a 000010 3502 20 1147 eppap pf_prs,* get pointer to MC 001064 aa 0 00020 7533 00 1148 sreg ap|mc.regs save registers 001065 aa 0 00050 4477 00 1149 spl ap|mc.eis_info 001066 0a 000014 3702 20 1150 epplp my_lp,* set up linkage pointer 1151 read_clock start metering 001067 4a 4 00026 6333 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 001070 aa 0 00046 7573 00 1152 staq ap|mc.fault_time save fault time in machine conditions 001071 4a 4 00034 7573 20 1153 staq pds$time_1 and in pds 001072 4a 4 00052 0543 20 1154 aos pds$vtime_count check for recursive virtual metering 001073 0a 001076 6056 00 1155 tpnz already_metering .. 001074 4a 4 00054 1773 20 1156 sbaq pds$cpu_time calculate virtual time 001075 4a 4 00056 7573 20 1157 staq pds$time_v_temp save until RCU time 001076 1158 already_metering: 001076 0a 000307 7072 00 1159 tsx .ret,reset_mode_reg reset mode register (turn on history regs) 1160 001077 aa 000000 2312 00 1161 rsw 0 get set for possible tracing 001100 4a 4 00200 7553 20 1162 sta sst$+sst.trace_sw 1163 001101 4a 4 00072 7213 20 1164 lxl1 prds$processor_tag get set for masking 001102 4a 4 00202 7613 20 1165 lprpab scs$mask_ptr,1 001103 4a 4 00204 7163 20 1166 xec scs$read_mask,1 001104 aa 0 00040 7573 00 1167 staq ap|mc.mask 001105 4a 4 00206 2373 20 1168 ldaq scs$sys_level 001106 4a 4 00210 7163 20 1169 xec scs$set_mask,1 001107 0a 000470 7162 11 1170 xec fault_ctr_table,1 AB => per-cpu fault ctr array 001110 aa 1 00021 0543 00 1171 aos ab|0+FAULT_NO_DF1 001111 1172 inhibit off 1173 001111 aa 6 00000 3515 00 1174 eppab sp|0 save sp in ab 001112 4a 4 00212 3721 20 1175 eppsp prds$+stack_header.stack_begin_ptr,* get set for push macro 001113 aa 6 00000 3731 00 1176 epbpsb sp|0 set stack base pointer 001114 aa 000300 6270 00 1177 push 001115 aa 7 00040 2721 20 1178 001116 aa 6 00020 2515 00 1179 spriab sp|stack_frame.prev_sp now save previous sp 001117 aa 000401 3350 07 1180 lca scu.ir.parm+1,dl make sure parity mask is OFF 001120 aa 0 00034 3551 00 1181 ansa ap|mc.scu.indicators_word 1182 1183 " 1184 " The following code checks to make sure we don't get a fault while 1185 " we're on the PRDS. 1186 " 001121 aa 0 00014 7271 00 1187 lxl7 ap|mc.prs+6*2 however, if were not in ring 0, OK 001122 aa 700000 3070 03 1188 canx7 =o700000,du 001123 0a 001127 6010 00 1189 tnz masked_switched_legal not in ring 0, OK 001124 aa 0 00014 2271 00 1190 ldx7 ap|mc.prs+6*2 get SP at time of fault 001125 4a 4 00010 1071 00 1191 cmpx7 lp|prds_link compare segment number to that of PRDS 001126 0a 001406 6000 00 1192 tze fault_while_on_prds bad news, return to bos 001127 1193 masked_switched_legal: 1194 001127 0a 000132 7060 00 1195 tsx .2ret,init_savex initialize save_stack for x7 001130 0a 000040 7070 00 1196 tsx .ret,lock_ptl lock the page table lock 001131 1197 pft_lret: 1198 001131 aa 6 00175 4501 00 1199 stz entry_sw fault entry, set switch 001132 aa 0 00043 4501 00 1200 stz ap|mc.errcode zero error code for later use 1201 001133 4a 4 00020 3501 20 1202 eppap pds$page_fault_data restore pointer to fault data 001134 4a 4 00214 3715 20 1203 epplb dseg$ get pointer to descriptor segment 1204 1205 " If a page fault is taken during an instruction fetch then the CU status 1206 " bit IF (instruction fetch) will be ON. 1207 001135 aa 0 00035 7211 00 1208 lxl1 ap|mc.scu.cu_stat_word Get CU status bits 001136 aa 000100 3010 03 1209 canx1 scu.cu.if,du Is IF bit ON? 001137 0a 001143 6000 00 1210 tze regular_page_fault not on, must be normal one (so use TSR) 1211 001140 aa 0 00030 2351 00 1212 lda ap|mc.scu.ppr.psr_word For an IF page fault the PSR is valid 001141 aa 0 00030 7211 00 1213 lxl1 ap|mc.scu.apu_stat_word Reset x1 to APU status bits. 001142 0a 001150 7100 00 1214 tra all_page_faults Go join normal path 001143 1215 regular_page_fault: 001143 aa 0 00030 7211 00 1216 lxl1 ap|mc.scu.apu_stat_word see what type of fault 001144 aa 002300 3010 03 1217 canx1 scu.apu.ptw+scu.apu.dsptw+scu.apu.ptw2,du is it a normal page fault? 001145 0a 001147 6010 00 1218 tnz *+2 if one of these bits is on we're OK 001146 0a 000127 7050 00 1219 tsx5 page_fault_error "ERROR - BAD SCU DATA NO APU BITS" 001147 aa 0 00032 2351 00 1220 lda ap|mc.scu.tpr.tsr_word This is the normal path. The segno is in TSR 1221 001150 1222 all_page_faults: 001150 aa 0 00035 2361 00 1223 ldq ap|mc.scu.ca_word page number is derived from CA field 001151 aa 000100 3010 03 1224 canx1 scu.apu.ptw2,du is it a pre-page (decimal instruction) 001152 0a 001154 6000 00 1225 tze *+2 no, don't increment page number 001153 aa 002000 0360 03 1226 adlq 1024,du yes, up the page number by 1 001154 aa 077777 3750 03 1227 ana scu.tpr.tsr_mask,du leave just the segno in AU 001155 aa 6 00134 7551 00 1228 sta temp save for bound comparison. 001156 aa 000001 7350 00 1229 als 1 multiply by sdw size 001157 aa 000000 6200 01 1230 eax .tem,0,au put in x0 001160 aa 5 00001 2351 00 1231 lda lb|1 get DSEG sdw bounds word (bound 377770) 001161 aa 000007 2750 03 1232 ora =o7,du convert bounds to max segno 001162 aa 6 00134 1151 00 1233 cmpa temp this is segno 377770000000 001163 0a 001433 6040 00 1234 tmi bad_segno Segno out of reason. 001164 aa 6 00134 7561 00 1235 stq temp save tsr word offset 001165 aa 5 00000 2371 00 1236 ldaq lb|0 get addr of descriptor segment from its sdw (DBR) 001166 aa 000014 7710 00 1237 arl sdw.add_shift move to fixed bin 1238 " see if dseg paged 001167 4a 4 00216 1351 20 1239 sbla unpaged_page_tables$0+upt.sst_absloc convert to page table pointer 001170 0a 001201 6040 00 1240 tmi not_dseg unpaged page tables are below sst 001171 aa 3 00000 3521 05 1241 eppbp sst|0,al make bp point to first page table word 001172 aa 000000 6350 10 1242 eaa 0,.tem get two times segno 001173 aa 000012 7710 00 1243 arl 10 get page number of dseg 1244 001174 aa 002000 3010 03 1245 canx1 scu.apu.dsptw,du Is this a page fault on the dseg? 001175 0a 001213 6010 00 1246 tnz dseg_page_fault Yes, skip the following code 1247 001176 aa 2 00000 2351 01 1248 lda ptw|0,au get correct PTW for dseg 001177 aa 000004 3150 07 1249 cana ptw.valid,dl .. 001200 0a 001360 6000 00 1250 tze quit there is fault, go take it 001201 1251 not_dseg: 001201 aa 5 00000 2371 10 1252 ldaq lb|0,.tem look for seg-fault, get sdw of segment 001202 aa 000004 3150 07 1253 cana sdw.valid,dl see if directed fault set 001203 0a 001360 6000 00 1254 tze quit go handle seg-fault 001204 aa 6 00246 7571 00 1255 staq pf_sdw save access fields 001205 aa 000014 7710 00 1256 arl 36-24 move to fixed bin 001206 aa 3 00025 1351 00 1257 sbla sst|sst.ptwbase no seg-fault, get page table index 001207 aa 3 00000 3521 05 1258 eppbp sst|0,al get the astep (+aste_size) 001210 aa 6 00134 2361 00 1259 ldq temp get back word offset 001211 aa 000012 7720 00 1260 qrl page_power convert to page number 001212 0a 001215 7100 00 1261 tra found_faulted_page skip code for dseg faults 1262 001213 1263 dseg_page_fault: 001213 aa 6 00247 7561 00 1264 stq pf_sdw+1 address word doesn't matter for dseg 001214 aa 000000 6360 01 1265 eaq 0,au copy page number into q 001215 1266 found_faulted_page: 001215 aa 2 77764 6231 00 1267 eax .aste,ptw|-aste_size get real astep into x3 001216 aa 2 00000 3521 02 1268 eppbp ptw|0,qu adjust ptwp to point to the actual PTW 001217 aa 2 00000 6221 00 1269 eax .ptw,ptw|0 and save it in x2 1270 001220 aa 2 00000 2361 00 1271 ldq ptw|0 get PTW in q-reg 001221 aa 000004 3160 07 1272 canq ptw.valid,dl see if fault still exists 001222 0a 001360 6010 00 1273 tnz quit no, return 001223 aa 000010 3160 07 1274 canq ptw.os,dl is the page out of service? 001224 0a 001420 6010 00 1275 tnz short_page_fault process short pf 001225 aa 010000 3160 07 1276 canq ptw.er,dl is page in error from earlier read? 001226 0a 001424 6010 00 1277 tnz page_read_error yes, signal an error. 1278 001227 aa 3 00012 2351 13 1279 lda ast|aste.npfs_word,.aste see if no-page-fault-switch is on 001230 aa 000100 3150 03 1280 cana aste.npfs,du .. 001231 0a 002061 6010 00 1281 tnz create_segment_fault 1282 1283 1284 " 1285 " Here the commitment has been made to actually 1286 " read in one page of virtual memory. 1287 " 1288 001232 4a 4 00220 7071 20 1289 tsx .ret,pc_trace$page_fault 1290 1291 001233 0a 001610 7070 00 1292 tsx .ret,read_page 001234 0a 001237 7100 00 1293 tra readin.goon must wait for page 001235 0a 001237 7100 00 1294 tra readin.goon 001236 0a 001347 7100 00 1295 tra wait_any_event_apte wait for volmap event (in APTE by now) 1296 001237 1297 readin.goon: 001237 4a 4 00222 7071 20 1298 tsx .ret,pc_trace$page_fault_end 001240 0a 000537 7070 00 1299 tsx .ret,page_util_enter enter the page in the trace list 1300 " 1301 " The following are various per-process meters about paging activity 1302 " as well as some system meters about where page faults are 1303 " happening. 1304 " 001241 aa 3 00012 2351 13 1305 lda ast|aste.per_process_word,.aste count pdir faults 001242 aa 000010 3150 03 1306 cana aste.per_process,du 001243 0a 001245 6000 00 1307 tze *+2 1308 increment sst|sst.pdir_page_faults missing increment,sst|sst.pdir_page_faults 001244 aa 3 00106 0541 00 aos sst|sst.pdir_page_faults 1309 001245 aa 3 00002 7201 13 1310 lxl .tem,ast|aste.par_astep,.aste count faults in segs off dirs off root 001246 aa 3 00002 7201 10 1311 lxl .tem,ast|aste.par_astep,.tem 001247 aa 3 00037 1001 00 1312 cmpx .tem,sst|sst.root_astep+1 001250 0a 001252 6010 00 1313 tnz *+2 1314 increment sst|sst.level_1_page_faults missing increment,sst|sst.level_1_page_faults 001251 aa 3 00107 0541 00 aos sst|sst.level_1_page_faults 1315 001252 aa 3 00005 2351 13 1316 lda ast|aste.dirsw_word,.aste count dir pfts 001253 aa 040000 3150 07 1317 cana aste.dirsw,dl 001254 0a 001257 6000 00 1318 tze readin.meter_ndir_pft meter in AST 1319 increment sst|sst.dir_page_faults missing increment,sst|sst.dir_page_faults 001255 aa 3 00110 0541 00 aos sst|sst.dir_page_faults 001256 0a 001264 7100 00 1320 tra readin.meter_sgdir_join 1321 001257 1322 readin.meter_ndir_pft: "count in ASTE 001257 aa 100000 3150 03 1323 cana aste.gtus,du " gtus in same word as dirsw 001260 0a 001264 6010 00 1324 tnz readin.meter_sgdir_join " if transparent, can't count faults 001261 aa 3 00010 2351 13 1325 lda ast|seg_aste.usage,.aste 001262 aa 000001 0350 07 1326 adla 1,dl LOGICAL arith, please 001263 aa 3 00010 7551 13 1327 sta ast|seg_aste.usage,.aste 1328 001264 1329 readin.meter_sgdir_join: 001264 4a 4 00152 2351 20 1330 lda pds$page_fault_data+mc.scu.tpr.trr_word count ring 0 page faults 001265 aa 700000 3150 03 1331 cana scu.tpr.trr_mask,du 001266 0a 001270 6010 00 1332 tnz *+2 1333 increment sst|sst.ring_0_page_faults missing increment,sst|sst.ring_0_page_faults 001267 aa 3 00111 0541 00 aos sst|sst.ring_0_page_faults 1334 001270 4a 4 00224 0541 20 1335 aos pds$page_waits meter page waits 001271 4a 4 00226 0541 20 1336 aos pds$number_of_pages_in_use 001272 aa 3 00024 2361 00 1337 ldq sst|sst.nused number of available pages 001273 4a 4 00164 3535 20 1338 eppbb pds$apt_ptr,* can also be used to reference tc_data 001274 aa 3 00000 3525 00 1339 epbpbp bb|0 get pointer to base of apt 001275 4a 4 00230 2351 20 1340 lda tc_data$n_eligible make sure it isn't zero (can it ever be?) 001276 0a 001315 6000 00 1341 tze no_eligible 001277 aa 6 00134 7551 00 1342 sta temp 001300 aa 6 00134 5061 00 1343 div temp divide by the eligibility 001301 aa 000000 6350 00 1344 eaa 0 clear a-reg 001302 aa 6 00134 7571 00 1345 staq temp save measurement 001303 4a 4 00226 1161 20 1346 cmpq pds$number_of_pages_in_use are we in equilibrium 001304 0a 001310 6040 00 1347 tmi in_equilibrium yes 001305 4a 4 00226 2361 20 1348 ldq pds$number_of_pages_in_use until then use this value 001306 aa 6 00134 7571 00 1349 staq temp save it as the measure 001307 aa 6 00135 0561 00 1350 asq temp+1 which is doubled when not in equilibrium 001310 1351 in_equilibrium: 001310 aa 2 00266 0771 00 1352 adaq bp|cumulative_memory_usage 001311 aa 2 00266 7571 00 1353 staq bp|cumulative_memory_usage 001312 aa 6 00134 2371 00 1354 ldaq temp reload measure for updating apte.paging_measure 001313 aa 3 00040 0771 00 1355 adaq bb|apte.paging_measure add the paging measure 001314 aa 3 00040 7571 00 1356 staq bb|apte.paging_measure and save it again 1357 001315 1358 no_eligible: 001315 aa 3 00021 2221 00 1359 ldx2 bb|apte.wct_index 001316 0a 001321 6000 00 1360 tze skip_pinning no WCTEs yet (initialization) 1361 " bp -> to base of apt (set above) 001317 aa 2 00004 7201 12 1362 lxl .tem,bp|wcte.pin_weight,2 get pin weight 001320 0a 000024 7400 74 1363 stx .tem,cme_pin_counter,*.cme 1364 001321 1365 skip_pinning: 001321 4a 4 00022 3535 20 1366 epp sst,sst$ restore sst ptr 1367 001322 aa 6 00164 4441 00 1368 sxl .cme,cmep save cmep 001323 0a 002344 7070 00 1369 tsx .ret,claim_mod_core write out mod pages 001324 aa 6 00164 7241 00 1370 lxl .cme,cmep 001325 aa 6 00176 2221 00 1371 ldx .ptw,ptp_astep reload .ptw 001326 aa 6 00176 7231 00 1372 lxl .aste,ptp_astep and .aste 1373 001327 4a 4 00232 3521 20 1374 eppbp tc_data$ restore tcd ptr 1375 read_clock meter page fault time 001330 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 001331 4a 4 00034 1771 20 1376 sbaq pds$time_1 get cpu time for this fault 001332 aa 2 00250 0771 00 1377 adaq bp|cpu_pf_time keep sum of times 001333 aa 2 00250 7571 00 1378 staq bp|cpu_pf_time 001334 aa 2 00252 0541 00 1379 aos bp|cpu_pf_count and count of faults 1380 1381 " 1382 " 1383 " Wait for the page fault as appropriate. 1384 " 001335 aa 3 00000 3521 12 1385 epp ptw,sst|0,.ptw 1386 1387 001336 1388 wait_ret: "here to wait for non/pd i/o 001336 aa 2 00000 2351 00 1389 lda ptw|0 make this check just in case.. 001337 aa 000010 3150 07 1390 cana ptw.os,dl 001340 0a 001360 6000 00 1391 tze quit 1392 1393 "tra to pxss to wait for PTW I/O. 001341 aa 000040 2360 07 1394 ldq cme.notify_requested,dl set flag for notify 001342 0a 000020 2560 74 1395 orsq cme_flags,*.cme .. 001343 aa 000000 6350 12 1396 eaa 0,.ptw create PTW event 001344 1397 wait_page_fault_event: 001344 aa 000022 7710 00 1398 arl 18 right justified 001345 1399 wait_any_event: 001345 4a 4 00164 3501 20 1400 eppap pds$apt_ptr,* get apte ptr 001346 aa 0 00020 7551 00 1401 sta ap|apte.wait_event make it where can get notified. 1402 001347 1403 wait_any_event_apte: 1404 store_clock pds$time_1 missing store_clock,pds$time_1 read_clock 001347 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 001350 4a 4 00034 7571 20 staq pds$time_1 001351 0a 000120 7070 00 1405 tsx .ret,unlock_ptl dump posting queue, possibly notifying 1406 "this event, and unlock ptl. 1407 meter_time pds$time_1,sst|sst.pf_unlock_ptl_time,sst|sst.pf_unlock_ptl_meterings missing meter_time,sst|sst.pf_unlock_ptl_meterings increment sst|sst.pf_unlock_ptl_meterings missing increment,sst|sst.pf_unlock_ptl_meterings 001352 aa 3 00532 0541 00 aos sst|sst.pf_unlock_ptl_meterings read_clock 001353 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 001354 4a 4 00034 1771 20 sbaq pds$time_1 001355 aa 3 00530 0771 00 adaq sst|sst.pf_unlock_ptl_time 001356 aa 3 00530 7571 00 staq sst|sst.pf_unlock_ptl_time 1408 001357 4a 4 00234 7101 20 1409 tra pxss$page_wait 1410 1411 1412 " 1413 " 1414 " End of page fault processing here. 1415 " These labels restart the page fault. 1416 " 001360 0a 000120 7070 00 1417 quit: tsx .ret,unlock_ptl unlock page table lock 1418 001361 1419 wait_return: "return location from pxss$page_wait 001361 4a 4 00020 3501 20 1420 eppap pds$page_fault_data get pointer to fault data 1421 1422 read_clock 001362 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 001363 4a 4 00236 1171 20 1423 cmpaq pds$first_covert_event_time 001364 0a 001370 6050 00 1424 tpl wait_return_no_delay 1425 1426 " must wait until first_covert_event_time is met- that is, until covert channel 1427 " time is up 1428 001365 4a 4 00236 2371 20 1429 ldaq pds$first_covert_event_time 001366 4a 4 00032 7571 20 1430 staq pds$arg_1 001367 4a 4 00240 7101 20 1431 tra pxss$page_pause " will return at wait_return 1432 001370 1433 wait_return_no_delay: 001370 1434 inhibit on 001370 aa 0 00040 2373 00 1435 ldaq ap|mc.mask retrieve previous mask 001371 0a 000030 2772 00 1436 oraq channel_mask_set turn on all channel mask 001372 4a 4 00242 3773 20 1437 anaq scs$open_level turn off unconfigured channel mask bits 001373 4a 4 00072 7213 20 1438 lxl1 prds$processor_tag 001374 4a 4 00202 7613 20 1439 lprpab scs$mask_ptr,1 001375 4a 4 00210 7163 20 1440 xec scs$set_mask,1 1441 001376 4a 4 00244 2373 20 1442 ldaq prds$+stack_header.stack_begin_ptr restore stack end pointer for PRDS 001377 4a 4 00246 7573 20 1443 staq prds$+stack_header.stack_end_ptr 1444 001400 aa 000000 0112 03 1445 odd 001401 0a 000226 7072 00 1446 tsx .ret,meter_virtual_time measure time to be taken out as virtual 1447 001402 1448 restart_fault: 001402 aa 0 00050 4677 00 1449 lpl ap|mc.eis_info restore EIS pointers and lengths 001403 aa 0 00020 0733 00 1450 lreg ap|mc.regs 001404 0a 000010 1732 20 1451 lpri pf_prs,* 001405 0a 000012 6132 20 1452 rcu pf_scuinfo,* 001406 1453 inhibit off 1454 1455 " 1456 1457 " 1458 " Error and unconventional cases in page fault processing. 1459 " 001406 1460 fault_while_on_prds: 001406 aa 000001 3350 07 1461 lca trbl_prds_pf,dl flag for page fault on prds 001407 4a 4 00250 7551 20 1462 sta scs$sys_trouble_pending 001410 4a 4 00024 2351 20 1463 lda pds$processid save our process ID 001411 4a 4 00252 3541 20 1464 stac scs$trouble_processid if we're the first 001412 4a 4 00072 7211 20 1465 lxl1 prds$processor_tag 001413 4a 4 00254 0151 20 1466 cioc scs$cow_ptrs,1* send connect to self 001414 aa 000000 0110 00 1467 nop 001415 aa 000000 0110 00 1468 nop 001416 aa 000000 0110 00 1469 nop 001417 0a 001406 7100 00 1470 tra fault_while_on_prds 1471 " 1472 " Come here when fault taken on page already being read. 1473 " 1474 001420 1475 short_page_fault: 1476 " Compute cme addr so that wait_ret can turn on notify_requested. 1477 " 1478 1479 increment sst|sst.short_pf_count meter missing increment,sst|sst.short_pf_count 001420 aa 3 00153 0541 00 aos sst|sst.short_pf_count 1480 1481 iftarget l68 " Shift different on L68/ADP 001421 aa 000002 7720 00 qrl ptw_to_cmep.rl " ifend 1484 iftarget adp " anq ptw_add_mask,du " Must mask off all but page number " qls ptw_to_cmep.ls " ifend 1488 001422 aa 3 00054 6241 62 1489 eax .cme,sst|sst.cmp,*qu point to cme. 001423 0a 001336 7100 00 1490 tra wait_ret and wait for the page 1491 1492 " 1493 " Error bit set by done_ (done_read). Signal in 1494 " faulting process. 1495 " 001424 1496 page_read_error: 1497 001424 0a 002100 7070 00 1498 tsx .ret,disk_offlinep is disk down as per pvt? 001425 0a 001345 7100 00 1499 tra wait_any_event yes, wait for it, event in A 1500 001426 aa 010001 3350 07 1501 lca ptw.er+1,dl turn off error flag 001427 aa 2 00000 3551 00 1502 ansa ptw|0 in PTW 1503 001430 aa 000001 2350 07 1504 lda PAGE_ERROR_IOERR,dl 001431 aa 3 00000 3515 13 1505 eppab ast|0,.aste ASTE 001432 0a 001436 7100 00 1506 tra errquit 1507 001433 1508 bad_segno: 001433 aa 000002 2350 07 1509 lda PAGE_ERROR_BADFAULT,dl 001434 0a 000034 3514 20 1510 eppab null,* 001435 0a 001436 7100 00 1511 tra errquit 1512 001436 aa 6 00243 7551 00 1513 errquit: sta pc_err_type 001437 aa 6 00245 5411 00 1514 sprpab pc_err_astep 001440 aa 6 00244 5421 00 1515 sprp ptw,pc_err_ptwp 1516 001441 0a 000120 7070 00 1517 tsx .ret,unlock_ptl 1518 1519 " 1520 " Call pc_signal to copy machine conditions, and otherwise set 1521 " up for the signaller 1522 001442 0a 000036 2370 00 1523 ldaq pc_signal_arglist 001443 aa 6 00106 7571 00 1524 staq arg 001444 aa 6 00243 3501 00 1525 eppap pc_err_type 001445 aa 6 00110 2501 00 1526 spriap arg+2 001446 aa 6 00245 3501 00 1527 eppap pc_err_astep 001447 aa 6 00112 2501 00 1528 spriap arg+4 001450 aa 6 00244 3501 00 1529 eppap pc_err_ptwp 001451 aa 6 00114 2501 00 1530 spriap arg+6 001452 aa 6 00000 2541 00 1531 call pc_signal$pc_signal(arg) 001453 aa 6 00106 3501 00 001454 4a 4 00014 3521 20 001455 aa 6 00040 7531 00 001456 aa 7 00036 6701 20 001457 aa 6 00000 1731 00 001460 aa 6 00040 0731 00 1532 1533 " 1534 " Now change the stack pointer so that if a process takes a page 1535 " fault while signalling which also gets an error (RQO possibly) 1536 " that we don't crash the system because our sp will still point 1537 " to the PRDS. 1538 " 001461 4a 4 00244 2371 20 1539 ldaq prds$+stack_header.stack_begin_ptr 001462 4a 4 00246 7571 20 1540 staq prds$+stack_header.stack_end_ptr reset stack end pointer 001463 4a 4 00256 3501 20 1541 eppap pds$signal_data 001464 aa 0 00014 3721 20 1542 eppsp ap|mc.prs+6*2,* change sp to that at time of the fault 1543 1544 " 1545 " Now complete the virtual time calculation that were by-passed because we did 1546 " not do an RCU. 1547 " 001465 0a 000226 7070 00 1548 tsx .ret,meter_virtual_time 001466 4a 4 00260 7101 20 1549 tra signaller$signaller now let the signaller do the work 1550 1551 " data for signal call. 1552 1553 1554 " 1555 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 1556 " 1557 " pread 1558 " 1559 " Entry to read a page into core. 1560 " 1561 " Call is: 1562 " call page$pread(astep,pageno,waitev) 1563 " 1564 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 1565 001467 1566 pread: 001467 aa 000300 6270 00 1567 push 001470 aa 7 00040 2721 20 001471 aa 0 00006 4501 20 1568 stz ap|6,* 001472 aa 000001 2350 07 1569 lda read_entry,dl set entry switch 001473 aa 6 00175 7551 00 1570 sta entry_sw 001474 0a 000132 7060 00 1571 tsx .2ret,init_savex set up stack 1572 001475 1573 pread.loop: "may have paged in 2 or more stages, tho. 001475 aa 6 00032 3501 20 1574 eppap sp|stack_frame.arg_ptr,* 001476 aa 0 00002 3521 20 1575 eppbp ap|2,* 001477 4a 4 00022 3535 20 1576 epp sst,sst$ 001500 aa 2 00000 3521 20 1577 eppbp bp|0,* 001501 aa 2 00000 6231 00 1578 eax .aste,bp|0 001502 aa 0 00004 2351 20 1579 lda ap|4,* 001503 aa 2 00014 6221 05 1580 eax .ptw,bp|aste_size,al point to ptw 001504 aa 3 00000 3521 12 1581 epp ptw,sst|0,.ptw 1582 001505 aa 2 00000 2351 00 1583 lda ptw|0 is page in? 001506 aa 000004 3150 07 1584 cana ptw.valid,dl 001507 0a 000536 6010 00 1585 tnz return yes, no problem. 1586 001510 aa 010000 3150 07 1587 cana ptw.er,dl error from previous read? 001511 0a 001514 6000 00 1588 tze pread.read_page no, just read 1589 001512 0a 002100 7070 00 1590 tsx .ret,disk_offlinep 001513 0a 001523 7100 00 1591 tra pread.wait_any go wait global event if needed 1592 001514 1593 pread.read_page: 001514 0a 001610 7070 00 1594 tsx .ret,read_page do some work. 001515 0a 001522 7100 00 1595 tra pread.wait must wait, indicate or loop 001516 0a 001475 7100 00 1596 tra pread.loop must check again. 1597 001517 4a 4 00164 3501 20 1598 eppap pds$apt_ptr,* retrieve wait event 001520 aa 0 00020 2351 00 1599 lda ap|apte.wait_event 001521 0a 001523 7100 00 1600 tra pread.wait_any volmap event 001522 1601 pread.wait: 1602 1603 001522 1604 pread.wait_ret: 001522 aa 000022 7710 00 1605 arl 18 convert to wait event 001523 1606 pread.wait_any: 001523 aa 6 00032 3501 20 1607 eppap sp|stack_frame.arg_ptr,* retrieve arg pointer 001524 aa 0 00006 7551 20 1608 sta ap|6,* return wait event 001525 0a 000536 7100 00 1609 tra return 1610 " 1611 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 1612 " 1613 " pwrite 1614 " 1615 " Entry to write a page out. 1616 " 1617 " Call is: 1618 " call page$pwrite(astep,pageno) 1619 " 1620 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 1621 001526 1622 pwrite: 001526 aa 000300 6270 00 1623 push 001527 aa 7 00040 2721 20 001530 aa 000002 2350 07 1624 lda write_entry,dl set up entry switch 001531 aa 6 00175 7551 00 1625 sta entry_sw 001532 aa 0 00002 3521 20 1626 eppbp ap|2,* get pointer to APT 001533 aa 2 00000 3521 20 1627 eppbp bp|0,* 001534 aa 2 00000 3531 00 1628 epbpbb bp|0 let bb point to base of sst 001535 aa 2 00000 6231 00 1629 eax .aste,bp|0 001536 aa 0 00004 2351 20 1630 lda ap|4,* get page number 001537 aa 2 00014 6221 05 1631 eax2 bp|aste_size,al 001540 aa 3 00000 3521 12 1632 eppbp sst|0,.ptw make sure bp points to PTW 001541 aa 2 00000 2351 00 1633 lda ptw|0 pick up page table word 1634 1635 iftarget l68 " Shift different on L68/ADP 001542 aa 000002 7710 00 arl ptw_to_cmep.rl " ifend 1638 iftarget adp " ana ptw_add_mask,du " Must mask off all but page number " als ptw_to_cmep.ls " ifend 1642 001543 aa 3 00054 6241 61 1643 eax .cme,sst|sst.cmp,*au 001544 0a 000132 7060 00 1644 tsx .2ret,init_savex initialize save stack for x7 001545 0a 002426 7070 00 1645 tsx .ret,write_page 1646 1647 001546 0a 000536 7100 00 1648 tra return 1649 " 1650 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 1651 " 1652 " pcleanup 1653 " 1654 " Entry to get a page out of core. 1655 " 1656 " Call is: 1657 " call page$pcleanup (astep, pageno) 1658 " 1659 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 1660 001547 1661 pcleanup: 001547 aa 000300 6270 00 1662 push 001550 aa 7 00040 2721 20 001551 aa 000010 2350 07 1663 lda cleanup_entry,dl 001552 aa 6 00175 7551 00 1664 sta entry_sw 1665 001553 0a 000131 7060 00 1666 tsx .2ret,init_savex_bb 1667 001554 aa 0 00002 3521 20 1668 epp ptw,ap|2,* 001555 aa 2 00000 3521 20 1669 epp ptw,ptw|0,* get astep 001556 aa 2 00000 6231 00 1670 eax .aste,ptw|0 001557 aa 0 00004 2351 20 1671 lda ap|4,* get pageno 001560 aa 2 00014 6221 05 1672 eax .ptw,ptw|aste_size,al 001561 aa 3 00000 3521 12 1673 epp ptw,sst|0,.ptw 1674 001562 aa 2 00000 2351 00 1675 lda ptw|0 get ptw 001563 aa 200010 3150 07 1676 cana add_type.disk+ptw.os,dl 001564 0a 001566 6000 00 1677 tze *+2 001565 0a 000127 7050 00 1678 tsx5 page_fault_error "ERROR - PCLEANUP: CALLED ON BAD-STATE PAGE 1679 1680 iftarget l68 " Shift different on L68/ADP 001566 aa 000002 7710 00 arl ptw_to_cmep.rl " ifend 1683 iftarget adp " ana ptw_add_mask,du " Must mask off all but page number " als ptw_to_cmep.ls " ifend 1687 001567 aa 3 00054 6241 61 1688 eax .cme,sst|sst.cmp,*au 001570 aa 000012 7710 00 1689 arl cmep_to_coreadd.rl 001571 aa 6 00173 7551 00 1690 sta core_add 1691 001572 aa 000005 3350 07 1692 lca ptw.valid+1,dl 001573 aa 2 00000 3551 00 1693 ansa ptw|0 turn off ptw access 1694 001574 0a 000775 7060 00 1695 tsx .2ret,check_accessible " only CAM if needed 001575 4a 4 00262 7071 20 1696 tsx .ret,cam_cache$cam_cache make sure it takes 1697 001576 0a 002265 7070 00 1698 tsx .ret,cleanup_page do the work. 001577 aa 7 00042 7101 20 1699 return 1700 " 1701 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 1702 " 1703 " read_page, read_page_abs 1704 " 1705 " Subroutine called by tsx7 to read a page into core (or if 1706 " the page has never beeen referenced it will zero the core). 1707 " A free block of core is found and possibly several 'writes' are 1708 " queued in searching for the free core for the read_page entry. 1709 " For the read_page_abs entry the free block of core 1710 " specified by the caller is used. 1711 " 1712 " tsx7 read_page 1713 " 1714 " 1715 " 1716 " 1717 " The subroutine expects 1718 " 1719 " x2 = pointer to PTW 1720 " x3 = pointer to AST entry 1721 " bp = pointer somewhere into SST 1722 " bb = pointer to base of SST 1723 " 1724 " In addition, the read_page_abs entry expects 1725 " 1726 " x4 = pointer to core map entry of free block 1727 " " " " " " " " "" " " " " " " " " " " " " " " " " " " " " " " " " 1728 001600 1729 read_page_abs: 001600 0a 000136 7060 00 1730 tsx .2ret,savex recursive use of index 7 1731 001601 0a 002112 7070 00 1732 tsx .ret,check_allocation make sure we have disk. 001602 0a 000127 7050 00 1733 tsx5 page_fault_error "ERROR - OOPV ON EHS SEG" 001603 0a 001605 7100 00 1734 tra read_page_abs.apte_event volmap event 1735 001604 0a 001623 7100 00 1736 tra read_page_join 1737 001605 1738 read_page_abs.apte_event: 001605 4a 4 00164 3501 20 1739 eppap pds$apt_ptr,* event is in APTE 001606 aa 0 00020 2351 00 1740 lda ap|apte.wait_event 001607 0a 002144 7100 00 1741 tra unsavex_2 return to caller 1742 001610 1743 read_page: 001610 0a 000136 7060 00 1744 tsx .2ret,savex recursive use of index 7 1745 001611 0a 000646 7070 00 1746 tsx .ret,check_quota check for quota overflow 001612 0a 002112 7070 00 1747 tsx .ret,check_allocation is there disk available? 001613 0a 002053 7100 00 1748 tra read_page.oodev no disk on this PV 001614 0a 002144 7100 00 1749 tra unsavex_2 must wait for volmap event 1750 001615 aa 6 00176 7421 00 1751 stx .ptw,ptp_astep save x2 and x3 for now 001616 aa 6 00176 4431 00 1752 sxl .aste,ptp_astep .. 001617 0a 002146 7070 00 1753 tsx .ret,find_core find a free block of core 001620 aa 6 00176 2221 00 1754 ldx .ptw,ptp_astep restore x2 and x3 001621 aa 3 00000 3521 12 1755 eppbp sst|0,.ptw make sure bp points to PTW as well 001622 aa 6 00176 7231 00 1756 lxl .aste,ptp_astep .. 1757 " 001623 1758 read_page_join: 1759 1760 " At this point, a cme to ptw binding is established. To validate the 1761 " assumptions of pc_recover_sst, it must be done in following order: 1762 " Auxiliary info into CME 1763 " cme.ptwp <= ptwp 1764 " ptw.add <= CORE 1765 001623 aa 010501 3350 07 1766 lca ptw.phm+ptw.phm1+ptw.er+1,dl " turn off bad bits. 001624 aa 2 00000 3551 00 1767 ansa ptw|0 001625 aa 2 00000 2351 00 1768 lda ptw|0 copy device address to core map entry 1769 staddra cme_devadd,*.cme store address from ptw into cme missing staddra,cme_devadd 001626 0a 000020 6750 74 era cme_devadd,*.cme 001627 0a 003030 3750 00 ana =v36/address_mask 001630 0a 000020 6550 74 ersa cme_devadd,*.cme 001631 aa 004451 3350 07 1770 lca cme.io+cme.phm_hedge+cme.removing+cme.notify_requested+1,dl 001632 0a 000020 3550 74 1771 ansa cme_flags,*.cme clear random flags 1772 001633 0a 000022 4430 74 1773 sxl .aste,cme_astep,*.cme Associate astep with cme, not ptp yet. 1774 " Do not store ptwp in cme until cme is ready, core clear, or ptw os. 1775 1776 001634 aa 000000 6350 14 1777 eaa 0,.cme copy rel(cmep) to a-reg 001635 aa 3 00055 1351 00 1778 sbla sst|sst.cmp+1 to get core address 001636 aa 000012 7710 00 1779 arl cmep_to_coreadd.rl 001637 aa 6 00173 7551 00 1780 sta core_add save core address 1781 001640 aa 200000 2360 03 1782 ldq aste.init,du turn off init bit in aste 001641 aa 3 00005 2561 13 1783 orsq ast|aste.init_word,.aste .. 001642 aa 3 00005 6561 13 1784 ersq ast|aste.init_word,.aste .. 001643 aa 3 00012 2361 13 1785 ldq ast|aste.np_word,.aste increment number of pages in core 001644 aa 000777 3760 07 1786 anq aste.np_mask,dl 001645 0a 001667 6010 00 1787 tnz read.incr_np 1788 " 1789 " Reading in the first page causes dtu to advance. Also, the dtm may be 1790 " advanced. Lets see. 1791 " 001646 aa 000001 2360 07 1792 ldq 1,dl this will advance to 1 page 001647 4a 4 00264 2341 20 1793 szn pds$throttle_segment_state_changes 001650 0a 001672 6000 00 1794 tze read.set_np don't count events 001651 aa 6 00175 2341 00 1795 szn entry_sw 001652 0a 001672 6010 00 1796 tnz read.set_np only count on fault side 1797 1798 " Count this event. Our assumptions: 1799 " dtm - w access implies that we can (and must assume we will) advance dtm. 1800 " Advancing dtm is always lower class visible since it propogates up 1801 " the hierarchy. However, we know that dirs advance dtm only when 1802 " they want to (in sum$dirmod), so we don't count dirs as setting 1803 " dtm here. 1804 " 1805 " dtu - w access implies that our authorization equals the access class 1806 " of the object, hence our setting dtu is not lower class visible. 1807 " However, multi-class and directories violate this rule. 1808 " 1809 " Hence: a non-directory, multi-class writable object advances dtu and dtm 1810 " in a lower class visible way. All other cases advance either dtu or dtm 1811 " but not both. 1812 001653 aa 6 00247 2351 00 1813 lda pf_sdw+1 001654 aa 000001 3150 03 1814 cana sdw.write,du check for write 001655 0a 001664 6000 00 1815 tze read.covert_1 no write 001656 aa 3 00005 2351 13 1816 lda ast|aste.dirsw_word,.aste " (also multi_class word) 001657 aa 000020 3150 03 1817 cana aste.multi_class,du 001660 0a 001664 6000 00 1818 tze read.covert_1 non-multi-class 001661 aa 040000 3150 07 1819 cana aste.dirsw,dl 001662 0a 001664 6010 00 1820 tnz read.covert_1 is a dir 1821 001663 0a 001760 7070 00 1822 tsx .ret,limit_covert_channel both dtu and dtm set 001664 1823 read.covert_1: 001664 0a 001760 7070 00 1824 tsx .ret,limit_covert_channel only dtu or dtm set 001665 aa 000001 2360 07 1825 ldq 1,dl advance np to 1 page 001666 0a 001672 7100 00 1826 tra read.set_np 1827 001667 1828 read.incr_np: 001667 aa 000001 0360 07 1829 adlq 1,dl 001670 aa 3 00012 6761 13 1830 erq ast|aste.np_word,.aste 001671 aa 000777 3760 07 1831 anq aste.np_mask,dl 001672 1832 read.set_np: 001672 aa 3 00012 6561 13 1833 ersq ast|aste.np_word,.aste 1834 001673 0a 000020 2350 74 1835 lda cme_devadd,*.cme pick up cme devadd 001674 aa 740000 3150 07 1836 cana add_type.non_null,dl is there an address? 001675 0a 001677 6010 00 1837 tnz *+2 must have real allocation here 001676 0a 000127 7050 00 1838 tsx5 page_fault_error "ERROR - NO ALLOCATION IN PTW: READ_PAGE" 001677 aa 000000 7350 00 1839 als 0 is it a real address? 001700 0a 002026 6050 00 1840 tpl must_read yes, actually read it 1841 1842 " 1843 "Make zeroes for a predeposited address. 1844 " 1845 "tra read.create_zeros is right on the next page 1846 " 1847 " 1848 " Page had either a null or nulled address in PTW. 1849 " Create a fresh page of zeroes. 1850 " 1851 001701 1852 read.create_zeros: 001701 aa 3 00012 2351 13 1853 lda ast|aste.records_word,.aste 001702 aa 001000 0350 07 1854 adla =o001000,dl increment records used 001703 aa 3 00012 6751 13 1855 era ast|aste.records_word,.aste 001704 aa 777000 3750 07 1856 ana aste.records_mask_inner,dl 001705 aa 3 00012 6551 13 1857 ersa ast|aste.records_word,.aste 1858 1859 " Adding a page can be a covert event, if this is a multi-class object 1860 " (records used, etc. lower class visible) or if this is a dir without 1861 " terminal quota between it and the nearest upgraded node. 1862 " We don't have to worry about questions of setting csl/ru since the only 1863 " cases where page creations are covert events are cases where the page 1864 " creations are performed by trusted code themselves, and in which we know 1865 " that pages are created serially. The user cannot create any random page 1866 " in these segments, only the next. Thus, csl and ru contain the same 1867 " information, even though ru may later become less than csl if some of 1868 " these new pages end up zero. 1869 001706 4a 4 00264 2341 20 1870 szn pds$throttle_segment_state_changes 001707 0a 001724 6000 00 1871 tze read.bump_quota don't count events 001710 aa 6 00175 2341 00 1872 szn entry_sw 001711 0a 001724 6010 00 1873 tnz read.bump_quota only on fault side 1874 001712 aa 3 00005 2351 13 1875 lda ast|aste.multi_class_word,.aste 001713 aa 000020 3150 03 1876 cana aste.multi_class,du 001714 0a 001717 6000 00 1877 tze read.create_check_dir 001715 0a 001760 7070 00 1878 tsx .ret,limit_covert_channel multi-class 001716 0a 001724 7100 00 1879 tra read.bump_quota 1880 001717 1881 read.create_check_dir: 001717 aa 040000 3150 07 1882 cana aste.dirsw,dl 001720 0a 001724 6000 00 1883 tze read.bump_quota non-dir 1884 1885 " We have a dir. We shall do a special bump quota which checks for 1886 " terminal-ness. 1887 001721 0a 000727 7070 00 1888 tsx .ret,bump_quota_covert_check increment used 001722 0a 001760 7070 00 1889 tsx .ret,limit_covert_channel upgraded found first 001723 0a 001725 7100 00 1890 tra read.quota_bumped 1891 001724 1892 read.bump_quota: 001724 0a 000713 7070 00 1893 tsx .ret,bump_quota increment used 001725 1894 read.quota_bumped: 1895 increment sst|sst.new_pages meter new pages created missing increment,sst|sst.new_pages 001725 aa 3 00565 0541 00 aos sst|sst.new_pages 001726 0a 000272 7070 00 1896 tsx .ret,clear_core zero out the core 1897 " 1898 " Now it is safe to store .ptw in cme 1899 " 001727 0a 000022 7420 74 1900 stx .ptw,cme_ptwp,*.cme 001730 aa 6 00173 2351 00 1901 lda core_add pick up core address again 001731 aa 000014 7350 00 1902 als coreadd_to_ptw.ls 001732 aa 400000 2750 07 1903 ora add_type.core,dl 1904 staddra ptw|0 store in ptw missing staddra,ptw|0 001733 aa 2 00000 6751 00 era ptw|0 001734 0a 003030 3750 00 ana =v36/address_mask 001735 aa 2 00000 6551 00 ersa ptw|0 1905 001736 aa 001005 2350 07 1906 lda ptw.phu+ptw.valid+df1,dl make used, accessible, refresh bit 001737 aa 2 00000 2551 00 1907 orsa ptw|0 1908 001740 aa 6 00134 7431 00 1909 stx .aste,temp calculate page number 001741 aa 777765 6200 12 1910 eax .tem,1-aste_size,.ptw by subtracting astep from (ptwp-aste_size+1) 001742 aa 6 00134 1201 00 1911 sblx .tem,temp 001743 aa 6 00134 4501 00 1912 stz temp 001744 aa 6 00134 4401 00 1913 sxl .tem,temp save in temp 001745 aa 3 00012 2351 13 1914 lda ast|aste.csl_word,.aste pick up current csl 001746 aa 777000 3750 03 1915 ana aste.csl_mask_inner,du 001747 aa 000033 7710 00 1916 arl aste.csl_shift 001750 aa 6 00134 1151 00 1917 cmpa temp compare ... 001751 0a 000143 6050 00 1918 tpl unsavex_1 csl already larger than this 001752 aa 6 00134 2361 00 1919 ldq temp retrieve new csl value 001753 aa 000033 7360 00 1920 qls aste.csl_shift position for store into ASTE 001754 aa 3 00012 6761 13 1921 erq ast|aste.csl_word,.aste 001755 aa 777000 3760 03 1922 anq aste.csl_mask_inner,du 001756 aa 3 00012 6561 13 1923 ersq ast|aste.csl_word,.aste 001757 0a 000143 7100 00 1924 tra unsavex_1 1925 " 1926 " covert channel test - update covert channel event count, test bandwidth 1927 " 001760 1928 limit_covert_channel: 001760 4a 4 00266 0541 20 1929 aos pds$covert_event_count 001761 aa 000000 6040 17 1930 tmi 0,.ret not enough events to monitor, yet 1931 1932 " arriving here, we need to determine the bandwidth of these covert channel 1933 " events and possible audit or delay 1934 1935 read_clock 001762 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 001763 4a 4 00236 1771 20 1936 sbaq pds$first_covert_event_time 001764 0a 002022 1170 00 1937 cmpaq covert.big_time 001765 0a 002014 6050 00 1938 tpl covert.reset_clock time too great to count 001766 aa 3 00576 5061 00 1939 div sst|sst.seg_state_change_limit usecs/bit in q 001767 aa 6 00134 7561 00 1940 stq temp and temp 001770 aa 3 00600 4021 00 1941 mpy sst|sst.audit_seg_state_change_bw 001771 0a 002024 1170 00 1942 cmpaq covert.million 001772 0a 001775 6050 00 1943 tpl covert.test_delay usecs/bit*max_bps<1000000 1944 1945 " audit here 1946 1947 increment sst|sst.audit_seg_state_chg missing increment,sst|sst.audit_seg_state_chg 001773 aa 3 00573 0541 00 aos sst|sst.audit_seg_state_chg 001774 4a 4 00270 7061 20 1948 tsx .2ret,page_error$excessive_seg_state_chg 1949 001775 1950 covert.test_delay: 001775 aa 6 00134 2361 00 1951 ldq temp 001776 aa 3 00577 4021 00 1952 mpy sst|sst.max_seg_state_change_bw 001777 0a 002024 1170 00 1953 cmpaq covert.million 002000 0a 002014 6050 00 1954 tpl covert.reset_clock usecs/bit*max_bps<1000000 1955 1956 " delay process 1957 1958 increment sst|sst.delayed_seg_state_chg missing increment,sst|sst.delayed_seg_state_chg 002001 aa 3 00572 0541 00 aos sst|sst.delayed_seg_state_chg 1959 002002 0a 002024 2370 00 1960 ldaq covert.million 002003 aa 3 00577 5061 00 1961 div sst|sst.max_seg_state_change_bw desired usecs/bit 002004 aa 6 00134 1761 00 1962 sbq temp delay as usecs/bit 002005 aa 3 00576 4021 00 1963 mpy sst|sst.seg_state_change_limit delay in aq 002006 4a 4 00236 7571 20 1964 staq pds$first_covert_event_time temp storage 002007 aa 3 00574 0371 00 1965 adlaq sst|sst.seg_state_chg_delay " this isn't really correct, 1966 " this is how long we want to delay, 1967 " not how long we will - but it's not 1968 " worth metering the real delay 002010 aa 3 00574 7571 00 1969 staq sst|sst.seg_state_chg_delay 1970 1971 read_clock set time to delay until 002011 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 002012 4a 4 00236 0771 20 1972 adaq pds$first_covert_event_time see wait_return for use of time 002013 0a 002015 7100 00 1973 tra covert.reset 1974 002014 1975 covert.reset_clock: 1976 read_clock 002014 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 002015 1977 covert.reset: 002015 4a 4 00236 7571 20 1978 staq pds$first_covert_event_time 002016 aa 3 00576 3351 00 1979 lca sst|sst.seg_state_change_limit 002017 4a 4 00266 7551 20 1980 sta pds$covert_event_count 002020 aa 000000 7100 17 1981 tra 0,.ret 1982 002021 aa 000000 0110 03 1983 even 002022 1984 covert.big_time: 002022 aa 000000 000000 1985 oct 0,377777777777 002023 aa 377777 777777 002024 1986 covert.million: 002024 aa 000000 000000 1987 dec 0,1000000 002025 aa 000003 641100 1988 " 1989 " 1990 " Page had non-null add type. Must actually read page in. 1991 " PTW is in A register. 1992 " 1993 002026 1994 must_read: 002026 aa 6 00200 7551 00 1995 sta devadd save device address in stack 1996 1997 002027 0a 000500 7070 00 1998 tsx .ret,get_pvtx get segment pvtx for fault 1999 002030 2000 read.must_rd.merge: 002030 4a 4 00272 7071 20 2001 tsx .ret,device_control$check_ckdv see if checking device incomplete 002031 0a 000256 7070 00 2002 tsx .ret,store_pattern if so, store pattern 2003 2004 " 2005 " Set up os bit before storing ptwp in cme, so page goes back in pc_r_sst. 2006 " 002032 aa 004001 3350 07 2007 lca cme.io+1,dl set io flag to "read" 002033 0a 000020 3550 74 2008 ansa cme_flags,*.cme 2009 002034 aa 000010 2350 07 2010 lda ptw.os,dl turn it on 002035 aa 2 00000 2551 00 2011 orsa ptw|0 2012 002036 0a 000022 7420 74 2013 stx .ptw,cme_ptwp,*.cme 2014 2015 002037 aa 6 00173 2351 00 2016 lda core_add set up ptw afresh 002040 aa 000014 7350 00 2017 als coreadd_to_ptw.ls 002041 aa 400000 2750 07 2018 ora add_type.core,dl 2019 staddra ptw|0 put in coreadd missing staddra,ptw|0 002042 aa 2 00000 6751 00 era ptw|0 002043 0a 003030 3750 00 ana =v36/address_mask 002044 aa 2 00000 6551 00 ersa ptw|0 2020 002045 0a 000173 7070 00 2021 tsx .ret,thread_out OS out of list 2022 002046 aa 100020 2350 07 2023 lda int+pri,dl (almost) always interrupt on reads 002047 aa 6 00177 7551 00 2024 sta inter 002050 4a 4 00274 7071 20 2025 tsx .ret,device_control$dev_read read the page into core 002051 aa 000000 6350 12 2026 eaa 0,.ptw ptw is he wait event 002052 0a 000141 7100 00 2027 tra unsavex wait this event 2028 " 2029 " 2030 " Peculiar exits of read_page 2031 " 2032 002053 2033 read_page.oodev: "out of physical volume. 2034 "Signal a segfault. 2035 increment sst|sst.oopv meter missing increment,sst|sst.oopv 002053 aa 3 00506 0541 00 aos sst|sst.oopv 2036 002054 aa 100000 2350 07 2037 lda aste.pack_ovfl,dl turn on aste bit 002055 aa 3 00013 2551 13 2038 orsa ast|aste.pack_ovfl_word,.aste in AST 2039 002056 aa 6 00175 2341 00 2040 szn entry_sw better be a page_fault 002057 0a 002061 6000 00 2041 tze *+2 002060 0a 000127 7050 00 2042 tsx5 page_fault_error "ERROR - OOPV ON READ_PAGE CALL" 002061 2043 create_segment_fault: 002061 4a 4 00020 3501 20 2044 eppap pds$page_fault_data address mc 002062 aa 0 00030 2351 00 2045 lda ap|mc.scu.apu_stat_word 002063 aa 002000 3150 07 2046 cana scu.apu.dsptw,dl is this ds fault? 002064 0a 002066 6000 00 2047 tze *+2 002065 0a 000127 7050 00 2048 tsx5 page_fault_error "ERROR - SETFAULT DESCRIPTOR SEGMENT" 2049 002066 aa 0 00035 7201 00 2050 lxl .tem,ap|mc.scu.cu_stat_word was it IF? 002067 aa 000100 3000 03 2051 canx .tem,scu.cu.if,du 002070 0a 002072 6010 00 2052 tnz *+2 002071 aa 0 00032 2351 00 2053 lda ap|mc.scu.tpr.tsr_word get TSR if not IF 002072 aa 000001 7350 00 2054 als 1 double segno 002073 aa 177776 3750 03 2055 ana =o177776,du 2056 2057 iftarget l68 " On Level 68 only, must also set df_no to zero 002074 aa 000010 3360 07 lcq sdw.valid+sdw.df_no_mask+1,dl " ifend 2060 iftarget adp " lcq sdw.valid+1,dl " ifend 2063 002075 4a 4 00276 3561 20 2064 ansq dseg$,au 002076 4a 4 00300 7071 20 2065 tsx .ret,cam_cache$cam 002077 0a 001360 7100 00 2066 tra quit seg mover will handle 2067 2068 " 2069 " " " " " " " " " " " " " " " " " " " " " " " " " " " 2070 " " 2071 " disk_offlinep " 2072 " " 2073 " Is the seg's disk offline? " 2074 " " 2075 " tsx .ret,disk_offlinep " 2076 " tra yes, event in A " 2077 " null no " 2078 " " 2079 " " " " " " " " " " " " " " " " " " " " " " " " " " " 2080 002100 2081 disk_offlinep: 002100 0a 000136 7060 00 2082 tsx .2ret,savex 002101 0a 000500 7070 00 2083 tsx .ret,get_pvtx 002102 4a 4 00302 7071 20 2084 tsx .ret,device_control$disk_offlinep 002103 0a 002105 7100 00 2085 tra *+2 offline 002104 0a 000143 7100 00 2086 tra unsavex_1 not offline 2087 002105 aa 010001 3350 07 2088 lca ptw.er+1,dl turn OFF the error bit. This is 002106 aa 2 00000 3551 00 2089 ansa ptw|0 so that when the guy tries again 2090 "when the disk finally comes back, 2091 "the next call to disk_offlinep 2092 "doesnt cause a signal. 002107 0a 002111 2350 00 2093 lda disk_offline_event 002110 0a 000141 7100 00 2094 tra unsavex 2095 002111 2096 disk_offline_event: 002111 aa 144 163 153 167 2097 aci "dskw" 2098 " 2099 " 2100 " Check to see if page has allocation. Give one 2101 " if needed. 2102 " 2103 " tsx7 check_allocation 2104 " 2105 " 2106 " 2107 002112 2108 check_allocation: 002112 aa 2 00000 2351 00 2109 lda ptw|0 grab ptw 002113 aa 400000 3150 07 2110 cana add_type.core,dl 002114 0a 002116 6000 00 2111 tze *+2 make sure we're doing this right 002115 0a 000127 7050 00 2112 tsx5 page_fault_error "ERROR - CORE ADDR IN PTW: READ_PAGE" 002116 aa 200000 3150 07 2113 cana add_type.disk,dl " real devadd? 002117 aa 000002 6010 17 2114 tnz 2,.ret yes, that's fine. 2115 002120 aa 6 00235 7431 00 2116 stx .aste,pageno ASTE offset 002121 aa 777764 6200 12 2117 eax .tem,-aste_size,.ptw 002122 aa 6 00235 1201 00 2118 sblx .tem,pageno Page number 002123 aa 000000 6360 10 2119 eaq 0,.tem 002124 aa 000022 7720 00 2120 qrl 18 002125 aa 6 00235 7561 00 2121 stq pageno 002126 aa 3 00004 2361 13 2122 ldq ast|aste.vtocx,.aste 002127 aa 777777 3760 07 2123 anq -1,dl VTOCE Index 002130 aa 6 00234 7561 00 2124 stq vtocx 2125 002131 0a 000136 7060 00 2126 tsx .2ret,savex enter free_store 002132 0a 000500 7070 00 2127 tsx .ret,get_pvtx get pvtx 002133 4a 4 00304 7071 20 2128 tsx .ret,free_store$withdraw get an address 002134 0a 000141 7100 00 2129 tra unsavex OOPV 002135 0a 000143 7100 00 2130 tra unsavex_1 volmap wait event 2131 2132 " 2133 " Put nulled address where null one was. With respect to pc_recover_sst, 2134 " this is all the same. 2135 " 002136 aa 6 00200 2351 00 2136 lda devadd 002137 aa 400000 2750 03 2137 ora ptw.nulled,du this is semikilled address 002140 aa 6 00200 7551 00 2138 sta devadd 2139 2140 staddra ptw|0 put in new address missing staddra,ptw|0 002141 aa 2 00000 6751 00 era ptw|0 002142 0a 003030 3750 00 ana =v36/address_mask 002143 aa 2 00000 6551 00 ersa ptw|0 002144 2141 unsavex_2: 002144 aa 6 00075 2271 54 2142 ldx .ret,stackp,di 002145 aa 000002 7100 17 2143 tra 2,.ret return 2144 " 2145 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 2146 " 2147 " find_core_ 2148 " 2149 " Subroutine to find a block of free core. 2150 " 2151 " Call is: 2152 " tsx7 page_fault$find_core_ 2153 " 2154 " tsx7 find_core 2155 " 2156 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 2157 000017 2158 equ pre_seek_limit,15 " Mod failure detection 2159 002146 2160 find_core_: " Externally available to ALM PC 2161 002146 2162 find_core: 002146 0a 000136 7060 00 2163 tsx .2ret,savex save index 7 2164 increment sst|sst.needc meter times core was needed missing increment,sst|sst.needc 002147 aa 3 00115 0541 00 aos sst|sst.needc 002150 aa 000001 3350 03 2165 lca 1,du init ctr for out-of-core to -2**18 002151 aa 6 00165 7551 00 2166 sta total_steps 002152 2167 fploop: 002152 aa 6 00174 4501 00 2168 stz count zero count of steps 002153 aa 000017 3350 07 2169 lca pre_seek_limit,dl initialize mod failure ctr 002154 aa 6 00166 7551 00 2170 sta temp1 002155 aa 3 00056 2241 00 2171 ldx .cme,sst|sst.usedp set cmep 2172 2173 " re-entry from find_core.ptw_ng and find_core.skip_meter_mod 2174 002156 2175 fc1: 002156 0a 000020 2350 74 2176 lda cme_flags,*.cme check for total acceptability 002157 aa 000600 3150 07 2177 cana cme.removing+cme.abs_w,dl 002160 0a 002255 6010 00 2178 tnz find_core.cme_ng something unusable- meter & skip 2179 002161 0a 000022 2220 74 2180 ldx .ptw,cme_ptwp,*.cme Is core free? Set ptp. 002162 0a 002207 6000 00 2181 tze found_core yes, take it. 002163 aa 3 00000 3521 12 2182 epp ptw,sst|0,.ptw point at ptw 002164 aa 2 00000 2351 00 2183 lda ptw|0 let's examine the ptw... 2184 002165 aa 001530 3150 07 2185 cana ptw.phu+ptw.wired+ptw.os+ptw.phm+ptw.phm1,dl " make quick check 002166 0a 002213 6010 00 2186 tnz find_core.ptw_ng something in ptw is unacceptable. 2187 002167 0a 000024 2200 74 2188 ldx .tem,cme_pin_counter,*.cme 002170 0a 002247 6054 00 2189 tpnz find_core.skip_pinned do not evict if still pinned 2190 2191 " 2192 " Now attempt to evict the page. 2193 " 2194 " 2195 " 2196 " Here is where access is taken off for a potential eviction. 2197 " If we lose timing window, access comes back. Note that core address 2198 " in PTW stays valid until cleanup_page has run, and contents of 2199 " core page can be ignored (we are sure page is pure). 2200 002171 aa 000005 3350 07 2201 lca ptw.valid+1,dl set directed fault 1 in ptw 002172 aa 2 00000 3551 00 2202 ansa ptw|0 .. 002173 aa 2 00000 2351 00 2203 lda ptw|0 make sure coreadd gets set 002174 aa 777760 3750 03 2204 ana ptw_add_mask,du " Mask off all but the page address bits 002175 aa 000014 7710 00 2205 arl ptw_to_coreadd.rl " Clear the right place in the cache 002176 aa 6 00173 7551 00 2206 sta core_add .. 2207 002177 0a 000022 7230 74 2208 lxl .aste,cme_astep,*.cme " get astep 002200 0a 000775 7060 00 2209 tsx .2ret,check_accessible " CAM if needed 002201 4a 4 00262 7071 20 2210 tsx .ret,cam_cache$cam_cache " make sure the access gets turned off 2211 002202 aa 2 00000 2351 00 2212 lda ptw|0 retrieve ptw for modified bit test 002203 aa 000520 3150 07 2213 cana ptw.phm+ptw.phm1+ptw.wired,dl has the page been modified now? or wired? 002204 0a 002234 6010 00 2214 tnz restore_ptw_access appear to have lost race 2215 002205 aa 3 00056 7441 00 2216 stx .cme,sst|sst.usedp this frame now LRU 002206 0a 002265 7070 00 2217 tsx .ret,cleanup_page evict the page 2218 002207 2219 found_core: 2220 increment sst|sst.steps meter missing increment,sst|sst.steps 002207 aa 3 00114 0541 00 aos sst|sst.steps 002210 0a 000016 2200 74 2221 ldx .tem,cme_fp,*.cme move to MRU 002211 aa 3 00056 7401 00 2222 stx .tem,sst|sst.usedp 002212 0a 000141 7100 00 2223 tra unsavex find_core returns 2224 " 2225 " 2226 " PTW has some kind of unacceptable state: possibilities: 2227 " 2228 " 1. out of service- illegal- crash system 2229 " 2. wired- skip and meter 2230 " 3. modified- leave alone for claim_m_c to evict/unuse. 2231 " 4. nypd- leave alone for c_m_c to write to pd if unused. 2232 " 5. used- "unuse" for replacement algorithm. 2233 002213 2234 find_core.ptw_ng: 002213 aa 000010 3150 07 2235 cana ptw.os,dl this ought not be.. 002214 0a 002216 6000 00 2236 tze *+2 002215 0a 000127 7050 00 2237 tsx5 page_fault_error "ERROR - FINDCORE FINDS OS ON LIST 2238 002216 aa 000500 3150 07 2239 cana ptw.phm+ptw.phm1,dl has it been modified? 002217 0a 002236 6010 00 2240 tnz find_core.skip_meter_mod must be written, can't take. 2241 "don't care whether used or not -must leave 2242 "both bits for c_m_c, who will off them. 2243 002220 aa 000020 3150 07 2244 cana ptw.wired,dl is it wired? 002221 0a 002257 6010 00 2245 tnz find_core.skip_wired 2246 " 2247 " Must be used, skip and meter, impl. replacement algorithm 2248 " by turning bit off. 2249 " 2250 increment sst|sst.skipu count used. missing increment,sst|sst.skipu 002222 aa 3 00123 0541 00 aos sst|sst.skipu 002223 aa 001001 3350 07 2251 lca ptw.phu+1,dl turn off phu bit in PTW 002224 aa 2 00000 3551 00 2252 ansa ptw|0 002225 aa 000040 2350 07 2253 lda ptw.phu1,dl turn PHU1 ON in PTW 002226 aa 2 00000 2551 00 2254 orsa ptw|0 2255 002227 2256 skip: 002227 0a 000016 2240 74 2257 ldx .cme,cme_fp,*.cme go to next core map entry in list 2258 increment sst|sst.steps count step missing increment,sst|sst.steps 002230 aa 3 00114 0541 00 aos sst|sst.steps 002231 aa 6 00165 0541 00 2259 aos total_steps up count of steps taken looking for core 002232 0a 002156 6040 00 2260 tmi fc1 if still neg, loop on. 002233 4a 4 00306 7101 20 2261 tra page_error$out_of_core Multics not in operation. 2262 2263 002234 2264 restore_ptw_access: "come here when 2nd cpu mod in window 002234 aa 000004 2350 07 2265 lda ptw.valid,dl remove directed fault from ptw 002235 aa 2 00000 2551 00 2266 orsa ptw|0 .. 002236 2267 find_core.skip_meter_mod: 2268 increment sst|sst.skipm count skip mod missing increment,sst|sst.skipm 002236 aa 3 00124 0541 00 aos sst|sst.skipm 2269 cmod1: increment sst|sst.steps missing increment,sst|sst.steps 002237 aa 3 00114 0541 00 aos sst|sst.steps 002240 0a 000016 2200 74 2270 ldx .tem,cme_fp,*.cme pt at next cme 002241 aa 3 00056 1001 00 2271 cmpx .tem,sst|sst.usedp have we walked whole queue? 002242 0a 002261 6000 00 2272 tze mods_excessive will run claim_mod_core on whole mem 002243 aa 000000 6240 10 2273 eax .cme,0,.tem go to next cme 002244 aa 6 00166 0541 00 2274 aos temp1 see if too many skipmods 002245 0a 002261 6050 00 2275 tpl mods_excessive too many 002246 0a 002156 7100 00 2276 tra fc1 2277 002247 2278 find_core.skip_pinned: 2279 increment sst|sst.fc_skips_pinned no. of pin skips in find_core missing increment,sst|sst.fc_skips_pinned 002247 aa 3 00066 0541 00 aos sst|sst.fc_skips_pinned 002250 0a 000024 2200 74 2280 ldx .tem,cme_pin_counter,*.cme 002251 aa 000001 1200 03 2281 sblx .tem,1,du 002252 0a 002227 6040 00 2282 tmi skip never happen 002253 0a 000024 7400 74 2283 stx .tem,cme_pin_counter,*.cme 002254 0a 002227 7100 00 2284 tra skip 2285 2286 2287 " 2288 " 2289 " cme is unacceptable- following may be the case: 2290 " 2291 " 1. removing can't page in, must not be used. skip. 2292 " 2. abs_w IN PROCESS of being abs-wired.. may not 2293 " page in evict_page will do it by special means, 2294 " must avoid getting vol map in here by accident. 2295 002255 2296 find_core.cme_ng: 2297 002255 aa 000200 3150 07 2298 cana cme.abs_w,dl abs wiring? 002256 0a 002227 6000 00 2299 tze skip no, just skip. 2300 002257 2301 find_core.skip_wired: 2302 increment sst|sst.skipw missing increment,sst|sst.skipw 002257 aa 3 00122 0541 00 aos sst|sst.skipw 002260 0a 002227 7100 00 2303 tra skip .. 2304 2305 " 2306 " We arrive here when an excess of skips-mod have been made. 2307 " Potentially, every page in core can be mod and used. Hence, 2308 " tentatively, the fast find_core has failed. Do it the old way. 2309 " 002261 2310 mods_excessive: 002261 aa 3 00056 7441 00 2311 stx .cme,sst|sst.usedp save ptr to NEXT cme 2312 increment sst|sst.pre_seeks_failed meter missing increment,sst|sst.pre_seeks_failed 002262 aa 3 00503 0541 00 aos sst|sst.pre_seeks_failed 002263 0a 002344 7070 00 2313 tsx .ret,claim_mod_core do writes, may even post. 002264 0a 002152 7100 00 2314 tra fploop restart find_core_ 2315 2316 " 2317 """""""""""""""""""""""""""""""""""""""""""""""""" 2318 " " 2319 " Subroutine to evict one " 2320 " page from core. " 2321 " " 2322 """""""""""""""""""""""""""""""""""""""""""""""""" 2323 002265 2324 cleanup_page: 002265 0a 000136 7060 00 2325 tsx .2ret,savex 002266 0a 000022 7230 74 2326 lxl .aste,cme_astep,*.cme get astep 2327 2328 " 2329 " Unbind core from ptw here. For validity of pc_recover_sst, this 2330 " must be done in the following order: 2331 " Put non-core address back in ptw 2332 " cme.ptwp <= 000000 2333 " Clean up cme 2334 " 002267 0a 000020 2350 74 2335 lda cme_devadd,*.cme clear out ptw 2336 staddra ptw|0 missing staddra,ptw|0 002270 aa 2 00000 6751 00 era ptw|0 002271 0a 003030 3750 00 ana =v36/address_mask 002272 aa 2 00000 6551 00 ersa ptw|0 2337 002273 aa 3 00012 2351 13 2338 lda ast|aste.np_word,.aste subtract from count of pages in core 002274 aa 000001 1350 07 2339 sbla 1,dl 002275 aa 3 00012 6751 13 2340 era ast|aste.np_word,.aste 002276 aa 000777 3750 07 2341 ana aste.np_mask,dl 002277 aa 3 00012 6551 13 2342 ersa ast|aste.np_word,.aste 002300 aa 3 00012 2351 13 2343 lda ast|aste.np_word,.aste 002301 aa 000777 3150 07 2344 cana aste.np_mask,dl see if any pages left in core 002302 0a 002313 6010 00 2345 tnz cleanup.np_nonzero yes, continue 2346 002303 aa 200000 2350 03 2347 lda aste.init,du no, turn init bit ON in ASTE 002304 aa 3 00005 2751 13 2348 ora ast|aste.init_word,.aste .. 002305 aa 3 00005 7551 13 2349 sta ast|aste.init_word,.aste gtus is in same word, so... 002306 aa 100000 3150 03 2350 cana aste.gtus,du check gtus. If on, leave dtu alone 002307 0a 002313 6010 00 2351 tnz cleanup.np_nonzero nothing to do 2352 2353 read_clock get time 002310 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 002311 aa 000024 7370 00 2354 lls 20 convert to fstime in A 002312 aa 3 00006 7551 13 2355 sta ast|aste.dtu,.aste and drop it in 2356 002313 2357 cleanup.np_nonzero: 002313 0a 001005 7070 00 2358 tsx .ret,check_synch_cleanup do housekeeping for synchronized page 002314 aa 2 00000 2351 00 2359 lda ptw|0 if not live address, must adjust quota... 002315 aa 740000 3150 07 2360 cana add_type.non_null,dl and records_used. 002316 0a 002321 6000 00 2361 tze cleanup.rsq null, reset recs. 002317 aa 400000 3150 03 2362 cana ptw.nulled,du is it nulled? 002320 0a 002335 6000 00 2363 tze cleanup.nrsq1 not nulled, don't reset. 002321 2364 cleanup.rsq: 002321 0a 001020 7070 00 2365 tsx .ret,update_csl make sure csl is correct 002322 aa 3 00012 2351 13 2366 lda ast|aste.records_word,.aste 002323 aa 777000 3750 07 2367 ana aste.records_mask_inner,dl 002324 aa 001000 1350 07 2368 sbla =o001000,dl decrement records used 002325 0a 002331 6050 00 2369 tpl cleanup.recused_okay 002326 4a 4 00310 2341 20 2370 szn pvt$esd_state 002327 0a 002331 6010 00 2371 tnz cleanup.recused_okay 002330 0a 000127 7050 00 2372 tsx5 page_fault_error "ERROR - RECUSED WENT NEG: CLEANUP" 002331 2373 cleanup.recused_okay: 002331 aa 3 00012 6751 13 2374 era ast|aste.records_word,.aste 002332 aa 777000 3750 07 2375 ana aste.records_mask_inner,dl 002333 aa 3 00012 6551 13 2376 ersa ast|aste.records_word,.aste 002334 0a 000700 7070 00 2377 tsx .ret,reset_quota deduct a quotum used 002335 2378 cleanup.nrsq1: 002335 aa 000000 6200 00 2379 eax .tem,0 zero ptw correspondence 002336 0a 000022 7400 74 2380 stx .tem,cme_ptwp,*.cme .. 002337 0a 000022 4400 74 2381 sxl .tem,cme_astep,*.cme zero astep correspondence too 002340 0a 000145 7070 00 2382 tsx .ret,thread_to_lru move to head of list 002341 aa 000501 3350 07 2383 lca ptw.phm+ptw.phm1+1,dl " turn off mod 002342 aa 2 00000 3551 00 2384 ansa ptw|0 002343 0a 000141 7100 00 2385 tra unsavex 2386 " 2387 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 2388 " " 2389 " " 2390 " claim_mod_core " 2391 " " 2392 " Tsx .ret,claim_mod_core to sweep " 2393 " up all the writes that " 2394 " find_core chose not to do. " 2395 " " 2396 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 2397 002344 2398 claim_mod_core: 002344 0a 000136 7060 00 2399 tsx .2ret,savex save return 2400 increment sst|sst.write_hunts meter missing increment,sst|sst.write_hunts 002345 aa 3 00473 0541 00 aos sst|sst.write_hunts 2401 002346 2402 mc_continue: 002346 aa 3 00472 2241 00 2403 ldx .cme,sst|sst.wusedp start at last point 2404 002347 aa 3 00056 1041 00 2405 mclp: cmpx .cme,sst|sst.usedp are we up to find_core? 002350 0a 002424 6000 00 2406 tze cl_done 2407 increment sst|sst.claim_steps meter steps missing increment,sst|sst.claim_steps 002351 aa 3 00502 0541 00 aos sst|sst.claim_steps 2408 002352 0a 000020 2350 74 2409 lda cme_flags,*.cme look at cme 002353 aa 000600 3150 07 2410 cana cme.removing+cme.abs_w,dl " check unacceptable states 002354 0a 002401 6010 00 2411 tnz cl_bad 2412 002355 0a 000022 2220 74 2413 ldx .ptw,cme_ptwp,*.cme point to ptw 002356 0a 002405 6000 00 2414 tze cl_free this is really bad, for 2415 "this cme should be 2416 "in front of usedp. 002357 aa 3 00000 3521 12 2417 epp ptw,sst|0,.ptw point to ptw 2418 002360 aa 2 00000 2351 00 2419 lda ptw|0 consider ptw 002361 aa 000030 3150 07 2420 cana ptw.os+ptw.wired,dl 002362 0a 002403 6010 00 2421 tnz cl_ptwbad 002363 aa 000500 3150 07 2422 cana ptw.phm+ptw.phm1,dl " we only care about those f_c_ skipped 002364 0a 002407 6000 00 2423 tze cl_notmod 2424 002365 aa 001000 3150 07 2425 cana ptw.phu,dl see if used 002366 0a 002411 6010 00 2426 tnz cl_used turn off used if on 2427 002367 0a 000024 2200 74 2428 ldx .tem,cme_pin_counter,*.cme see if page is pinned 002370 0a 002417 6054 00 2429 tpnz cl_pinned 2430 2431 increment sst|sst.claim_writes meters missing increment,sst|sst.claim_writes 002371 aa 3 00501 0541 00 aos sst|sst.claim_writes 002372 0a 000016 2200 74 2432 ldx .tem,cme_fp,*.cme peek ahead to next cme 002373 aa 3 00472 7401 00 2433 stx .tem,sst|sst.wusedp save pointer 2434 002374 0a 000022 7230 74 2435 lxl .aste,cme_astep,*.cme pick up astep 002375 0a 002426 7070 00 2436 tsx .ret,write_page write_page will do all necessary 002376 0a 002346 7100 00 2437 tra mc_continue 2438 002377 0a 000016 2240 74 2439 mc_end: ldx .cme,cme_fp,*.cme scan on into map 002400 0a 002347 7100 00 2440 tra mclp 2441 002401 2442 cl_bad: 2443 increment sst|sst.claim_skip_cme A CME had permanent unacceptable state, or RWS missing increment,sst|sst.claim_skip_cme 002401 aa 3 00474 0541 00 aos sst|sst.claim_skip_cme 002402 0a 002377 7100 00 2444 tra mc_end 2445 002403 2446 cl_ptwbad: 2447 increment sst|sst.claim_skip_ptw PTW wired missing increment,sst|sst.claim_skip_ptw 002403 aa 3 00500 0541 00 aos sst|sst.claim_skip_ptw 002404 0a 002377 7100 00 2448 tra mc_end 2449 002405 2450 cl_free: 2451 increment sst|sst.claim_skip_free A CME was free to claim_mod_core missing increment,sst|sst.claim_skip_free 002405 aa 3 00475 0541 00 aos sst|sst.claim_skip_free 002406 0a 002377 7100 00 2452 tra mc_end 2453 002407 2454 cl_notmod: 2455 increment sst|sst.claim_notmod not modified, not interesting missing increment,sst|sst.claim_notmod 002407 aa 3 00476 0541 00 aos sst|sst.claim_notmod 002410 0a 002377 7100 00 2456 tra mc_end 2457 002411 2458 cl_used: 002411 aa 001001 3360 07 2459 lcq ptw.phu+1,dl mod, but used. 002412 aa 2 00000 3561 00 2460 ansq ptw|0 turn off used and pray for cam. 002413 aa 000040 2360 07 2461 ldq ptw.phu1,dl dont screw up working sets 002414 aa 2 00000 2561 00 2462 orsq ptw|0 2463 increment sst|sst.claim_passed_used missing increment,sst|sst.claim_passed_used 002415 aa 3 00477 0541 00 aos sst|sst.claim_passed_used 002416 0a 002377 7100 00 2464 tra mc_end 2465 002417 2466 cl_pinned: 2467 increment sst|sst.cl_skips_pinned no. of pin skips in claim_mod missing increment,sst|sst.cl_skips_pinned 002417 aa 3 00067 0541 00 aos sst|sst.cl_skips_pinned 2468 " cme_pin_counter in x0 002420 aa 000001 1200 03 2469 sblx .tem,1,du 002421 0a 002377 6040 00 2470 tmi mc_end never happen 002422 0a 000024 7400 74 2471 stx .tem,cme_pin_counter,*.cme 002423 0a 002377 7100 00 2472 tra mc_end 2473 002424 2474 cl_done: 002424 aa 3 00472 7441 00 2475 stx .cme,sst|sst.wusedp 002425 0a 000141 7100 00 2476 tra unsavex 2477 " 2478 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 2479 " 2480 " write_page 2481 " 2482 " Subroutine to check to see a page should be written out. 2483 " If so, initiate the I/O. 2484 " 2485 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 2486 002426 2487 write_page: 2488 " 2489 " Page has been modified 2490 " 002426 0a 000136 7060 00 2491 tsx .2ret,savex recursive use of .ret 002427 0a 000500 7070 00 2492 tsx .ret,get_pvtx get pvtx from AST 002430 4a 4 00312 7071 20 2493 tsx .ret,pc_trace$write_page 002431 aa 000000 6350 14 2494 eaa 0,.cme compute core_add from cmep 002432 aa 3 00055 1351 00 2495 sbla sst|sst.cmp+1 002433 aa 000012 7710 00 2496 arl cmep_to_coreadd.rl .. 002434 aa 6 00173 7551 00 2497 sta core_add 002435 0a 000020 2350 74 2498 lda cme_devadd,*.cme save devadd in stack 002436 aa 6 00200 7551 00 2499 sta devadd .. 2500 002437 aa 2 00000 2351 00 2501 lda ptw|0 inspect ptw 002440 aa 000010 3150 07 2502 cana ptw.os,dl check for o/s 002441 0a 002443 6000 00 2503 tze *+2 002442 0a 000127 7050 00 2504 tsx5 page_fault_error "ERROR - WRITE CALL ON OS PAGE" 002443 aa 000500 3150 07 2505 cana ptw.phm+ptw.phm1,dl " if neither on, obsolete call 002444 0a 000141 6000 00 2506 tze unsavex 2507 2508 002445 aa 3 00002 7201 13 2509 lxl .tem,ast|aste.par_astep,.aste dont update if no parent 002446 0a 002464 6000 00 2510 tze write.dont_set_fms 2511 002447 aa 3 00005 2361 13 2512 ldq ast|aste.gtms_word,.aste check global-transparent-modified-switch 002450 aa 040000 3160 03 2513 canq aste.gtms,du 002451 0a 002464 6010 00 2514 tnz write.dont_set_fms if on, don't set fms 2515 002452 aa 000100 3150 07 2516 cana ptw.phm,dl was fms set by pc$update_incore_fms? 002453 0a 002464 6000 00 2517 tze write.dont_set_fms yes, don't set it 2518 002454 aa 000000 6200 13 2519 eax .tem,0,.aste copy AST parent to x0 (first time is AST) 2520 read_clock get current time 002455 4a 4 00026 6331 20 rccl sys_info$clock_,* " ifend " rccl 0 " ifend 002456 aa 000020 7330 00 2521 lrs 16 convert to fstime in Q 002457 aa 000200 2350 03 2522 lda aste.fms,du get set to turn on all superior fms's 2523 002460 2524 write.set_parent_fms: 002460 aa 3 00012 2551 10 2525 orsa ast|aste.fms_word,.tem 002461 aa 3 00007 7561 10 2526 stq ast|aste.dtm,.tem set dtm as well 002462 aa 3 00002 7201 10 2527 lxl .tem,ast|aste.par_astep,.tem 002463 0a 002460 6010 00 2528 tnz write.set_parent_fms 2529 002464 2530 write.dont_set_fms: 002464 0a 000244 7060 00 2531 tsx .2ret,set_up_abs_seg abs_seg1 -> page in memory, ap -> abs_seg1 002465 0a 001011 7070 00 2532 tsx .ret,check_for_synch_hold synchronized page, not to be written 002466 0a 000141 7100 00 2533 tra unsavex yes - don't write 2534 002467 4a 4 00314 2341 20 2535 szn tc_data$system_shutdown don't null pages during shutdown 002470 0a 002521 6010 00 2536 tnz page_non_zero yes, pretend page non-zero(don't deposit anything) 002471 aa 3 00012 2361 13 2537 ldq ast|aste.dnzp_word,.aste don't null if special flag set 002472 aa 000020 3160 03 2538 canq aste.dnzp,du .. 002473 0a 002521 6010 00 2539 tnz page_non_zero 2540 002474 aa 2 00000 2351 00 2541 lda ptw|0 Don't null wired pages. 002475 aa 000020 3150 07 2542 cana ptw.wired,dl 002476 0a 002521 6010 00 2543 tnz page_non_zero 2544 002477 0a 000300 7070 00 2545 tsx .ret,check_for_zero test for a zero page 002500 0a 002521 7100 00 2546 tra page_non_zero return here if really not zero 002501 aa 000005 3350 07 2547 lca ptw.valid+1,dl set directed fault 1 in ptw 002502 aa 2 00000 3551 00 2548 ansa ptw|0 .. 2549 002503 0a 000775 7060 00 2550 tsx .2ret,check_accessible " only CAM if needed 002504 4a 4 00262 7071 20 2551 tsx .ret,cam_cache$cam_cache make sure people see it 2552 002505 0a 000300 7070 00 2553 tsx .ret,check_for_zero try again after turning off access 002506 0a 002517 7100 00 2554 tra page_non_zero_a he just modified it before we zapped access, phooey 2555 " 2556 " page was all zeroes 2557 " 2558 increment sst|sst.zero_pages missing increment,sst|sst.zero_pages 002507 aa 3 00563 0541 00 aos sst|sst.zero_pages 002510 4a 4 00316 7071 20 2559 tsx .ret,pc_trace$zero_page 2560 2561 002511 aa 400000 2350 03 2562 lda ptw.nulled,du null the disk addr in cme. 002512 0a 000020 2550 74 2563 orsa cme_devadd,*.cme 2564 002513 aa 000400 2350 03 2565 lda aste.fmchanged,du turn on map changed bit 002514 aa 3 00012 2551 13 2566 orsa ast|aste.fmchanged_word,.aste 002515 0a 002265 7070 00 2567 tsx .ret,cleanup_page evict page from core, turns off phm. 002516 0a 000141 7100 00 2568 tra unsavex 2569 " 2570 " come here because the page is non-zero and must be written out 2571 " 2572 002517 2573 page_non_zero_a: 002517 aa 000004 2350 07 2574 lda ptw.valid,dl remove directed fault from ptw 002520 aa 2 00000 2551 00 2575 orsa ptw|0 .. 002521 2576 page_non_zero: 002521 0a 000020 2350 74 2577 lda cme_devadd,*.cme 002522 aa 740000 3150 07 2578 cana add_type.non_null,dl is it real null? 002523 0a 002525 6010 00 2579 tnz write.pnz.to_disk 2580 2581 " 2582 " Was a real null address- this must not be so at this point!!! 2583 " 002524 2584 write.nz.was_real_null: 2585 " 002524 0a 000127 7050 00 2586 tsx5 page_fault_error "ERROR - NO ALLOCATION AT WRITE TIME" 2587 2588 2589 002525 2590 write.pnz.to_disk: 002525 0a 000032 2350 00 2591 lda unnull_mask unnull, but not in core map 002526 aa 6 00200 3551 00 2592 ansa devadd 2593 2594 " 2595 " 2596 " Actually set up like we're gonna write. 2597 " Recovery strategy requires cme.io set before os set. 2598 " 2599 002527 2600 do_write: 002527 0a 000173 7070 00 2601 tsx .ret,thread_out OS out of list 2602 002530 aa 004000 2350 07 2603 lda cme.io,dl turn on write bit in CME 002531 0a 000020 2550 74 2604 orsa cme_flags,*.cme .. 2605 002532 aa 000010 2350 07 2606 lda ptw.os,dl set ptw out of service 002533 aa 2 00000 2551 00 2607 orsa ptw|0 2608 002534 aa 000501 3350 07 2609 lca ptw.phm+ptw.phm1+1,dl turn it off once ptw.os is on. 002535 aa 2 00000 3551 00 2610 ansa ptw|0 2611 002536 0a 000775 7060 00 2612 tsx .2ret,check_accessible " if needed: 002537 4a 4 00320 7071 20 2613 tsx .ret,cam_cache$cam_ptws turn it off on all cpus. 2614 002540 2615 do_write.not_mod: 002540 aa 6 00177 4501 00 2616 stz inter generally don't interrupt on writes 002541 aa 6 00175 2351 00 2617 lda entry_sw see if write entry 002542 aa 000002 1150 07 2618 cmpa write_entry,dl 002543 0a 002546 6010 00 2619 tnz do_write.not_pri not, continue 2620 002544 aa 100020 2350 07 2621 lda int+pri,dl interrupt on write entry 002545 aa 6 00177 7551 00 2622 sta inter 002546 2623 do_write.not_pri: 002546 4a 4 00322 7071 20 2624 tsx .ret,device_control$dev_write initiate the write 002547 0a 000141 7100 00 2625 tra unsavex 2626 2627 " 2628 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 2629 " 2630 " done,done_ 2631 " 2632 " Entry (subroutine) to post the completion of I/O. 2633 " Call is 2634 " call done(core_add,errcode) 2635 " or 2636 " tsx7 done_ 2637 " 2638 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " 2639 002550 2640 done: 002550 4a 4 00324 7101 20 2641 tra core_queue_man$disk_post 2642 2643 002551 2644 done_: 002551 4a 4 00022 3535 20 2645 eppbb sst$ bb must point into SST for PAGE 002552 0a 000136 7060 00 2646 tsx .2ret,savex save return loc in stack 002553 aa 6 00173 2351 00 2647 lda core_add get core map entry pointer 002554 aa 000012 7350 00 2648 als coreadd_to_cmep.ls 002555 aa 3 00054 6241 61 2649 eax .cme,sst|sst.cmp,*au set up .cme 2650 002556 4a 4 00326 7071 20 2651 tsx .ret,pc_trace$done 2652 " 2653 " Flags to A-reg until we know where we're headed. 2654 " 002557 0a 000022 7200 74 2655 lxl .tem,cme_astep,*.cme save astep for later 002560 aa 6 00232 7401 00 2656 stx .tem,done_astep 2657 002561 0a 000020 2350 74 2658 lda cme_flags,*.cme see if a read/write sequence is active 2659 002562 0a 000020 2360 74 2660 ldq cme_devadd,*.cme pick up device address out of CM entry 002563 aa 6 00200 7561 00 2661 stq devadd and save in stack 2662 002564 0a 000022 2220 74 2663 ldx .ptw,cme_ptwp,*.cme get ptp 002565 4a 4 00330 6001 20 2664 tze page_error$error_in_done core must be used 002566 aa 3 00000 3521 12 2665 eppbp sst|0,.ptw 002567 aa 2 00000 7201 00 2666 lxl .tem,ptw|0 check for out of service 002570 aa 000010 3000 03 2667 canx .tem,ptw.os,du 002571 4a 4 00330 6001 20 2668 tze page_error$error_in_done 002572 0a 000022 7230 74 2669 lxl .aste,cme_astep,*.cme get astep 2670 002573 aa 004000 3150 07 2671 cana cme.io,dl Was this a write? 002574 0a 002661 6010 00 2672 tnz done_write yes, go handle it 2673 "tra done_read *** is on the next page *** 2674 " 2675 " done_read -- thread core in mru, 2676 " and turn on PTW access. 2677 " 2678 002575 2679 done_read: 002575 0a 000214 7070 00 2680 tsx .ret,thread_in_mru make most recently used 2681 002576 aa 6 00201 2341 00 2682 szn errcode check error code 002577 0a 002650 6010 00 2683 tnz error_on_read error ... 2684 " 2685 " Check for device incomplete 2686 " 002600 4a 4 00272 7071 20 2687 tsx .ret,device_control$check_ckdv 002601 0a 000263 7070 00 2688 tsx .ret,check_pattern dvctl returns here if checking on 002602 0a 002605 7100 00 2689 tra done.read.no_ckdv_error c_p comes here if no error. 2690 "also, dvctl comes here if not checking! 002603 4a 4 00332 7061 20 2691 tsx .2ret,page_error$device_error 002604 0a 002650 7100 00 2692 tra error_on_read treat as fatal error 2693 002605 2694 done.read.no_ckdv_error: 002605 aa 000005 2350 07 2695 lda ptw.valid+df1,dl turn on access 002606 aa 2 00000 2551 00 2696 orsa ptw|0 002607 aa 000011 3350 07 2697 lca ptw.os+1,dl turn off os bit 002610 aa 2 00000 3551 00 2698 ansa ptw|0 2699 2700 " tra notify_code " (Actually, just fall through to this) 2701 " 2702 " 2703 2704 " 2705 " 2706 " Post a read or write complete, with or without error. 2707 " Call handler for I/O to volmap_seg. 2708 " Cause a page faulter to restart his fault, and cause 2709 " call side to retry. 2710 " 002611 2711 notify_code: 2712 " 2713 " Check for notify_requested. If none, neither notify 2714 " nor idle pre_empt. 2715 " 002611 aa 000040 2350 07 2716 lda cme.notify_requested,dl get flag 002612 0a 000020 3150 74 2717 cana cme_flags,*.cme see if on in cme 002613 0a 002624 6000 00 2718 tze notify_end no, just return 002614 0a 000020 6550 74 2719 ersa cme_flags,*.cme was on. Turn off and 2720 "notify/preempt. 002615 2721 done.notify.uncond: 002615 4a 4 00334 2341 20 2722 szn tc_data$pre_empt_flag see if we're pre-empting (and notifying) 002616 0a 002636 6010 00 2723 tnz check_idle we're not pre-empting. are we an idle process ? 002617 aa 000000 6360 12 2724 eaq 0,.ptw get event from ptw addr 002620 aa 000022 7720 00 2725 qrl 18 002621 4a 4 00032 7561 20 2726 stq pds$arg_1 save argument 002622 4a 4 00336 7101 20 2727 tra pxss$page_notify 2728 002623 2729 entry notify_return 002623 2730 notify_return: 002623 4a 4 00022 3535 20 2731 epp sst,sst$ restore sst pr, possibly for done_ entry. 002624 2732 notify_end: 002624 aa 6 00232 2201 00 2733 ldx .tem,done_astep astep 002625 aa 3 00005 2351 10 2734 lda sst|aste.volmap_seg_word,.tem see if this is a volmap_seg 002626 aa 010000 3150 07 2735 cana aste.volmap_seg,dl 002627 0a 000141 6000 00 2736 tze unsavex no - return to the caller of done 002630 aa 3 00004 2351 10 2737 lda sst|aste.pvtx_word,.tem 002631 aa 000022 7710 00 2738 arl aste.pvtx_shift 002632 aa 000777 3750 07 2739 ana aste.pvtx_mask,dl pvtx in Areg 002633 4a 4 00340 7071 20 2740 tsx .ret,volmap_page$post_io do asynchronous stuff 002634 4a 4 00022 3535 20 2741 epp sst,sst$ restore 002635 0a 000141 7100 00 2742 tra unsavex return to caller of done 2743 002636 2744 check_idle: 002636 4a 4 00342 2371 20 2745 ldaq pds$apt_ptr see if we're an idle process 002637 4a 4 00344 1171 20 2746 cmpaq prds$idle_ptr 002640 0a 002624 6010 00 2747 tnz notify_end no, just return 002641 aa 000400 2350 03 2748 lda apte.pre_empt_pending,du 002642 4a 4 00164 3521 20 2749 eppbp pds$apt_ptr,* 002643 aa 2 00001 2551 00 2750 orsa bp|apte.flags 002644 4a 4 00072 7211 20 2751 lxl1 prds$processor_tag 002645 4a 4 00346 7501 20 2752 stc2 pds$connect_pending 002646 4a 4 00254 0151 20 2753 cioc scs$cow_ptrs,1* 002647 0a 002624 7100 00 2754 tra notify_end 2755 " 2756 " 2757 " error_on_read - put Pdisk address back in PTW 2758 " 2759 002650 2760 error_on_read: 2761 increment sst|sst.page_read_errors meter missing increment,sst|sst.page_read_errors 002650 aa 3 00076 0541 00 aos sst|sst.page_read_errors 002651 0a 002265 7070 00 2762 tsx .ret,cleanup_page out of core 2763 002652 aa 000011 3350 07 2764 lca ptw.os+1,dl Now oocore, off os. 002653 aa 2 00000 3551 00 2765 ansa ptw|0 2766 002654 aa 010000 2350 07 2767 lda ptw.er,dl mark ptw as signalable 002655 aa 2 00000 2551 00 2768 orsa ptw|0 002656 0a 000500 7070 00 2769 tsx .ret,get_pvtx 002657 0a 002773 7070 00 2770 tsx .ret,call_disk_emergency 002660 0a 002615 7100 00 2771 tra done.notify.uncond 2772 " 2773 " 2774 " done_write - remove O/S status, 2775 " and thread core in LRU. 2776 " 2777 002661 2778 done_write: 2779 002661 aa 000001 3350 07 2780 lca 1,dl decrement global count of writes. 002662 aa 3 00057 0551 00 2781 asa sst|sst.wtct 002663 0a 002665 6050 00 2782 tpl *+2 002664 aa 3 00057 4501 00 2783 stz sst|sst.wtct make sure stays +. 2784 002665 aa 001100 2350 07 2785 lda ptw.phm+ptw.phu,dl count uses of pages being written 002666 aa 2 00000 3151 00 2786 cana ptw|0 .. 002667 0a 002671 6000 00 2787 tze *+2 not used, don't count 2788 increment sst|sst.mod_during_write missing increment,sst|sst.mod_during_write 002670 aa 3 00562 0541 00 aos sst|sst.mod_during_write 002671 aa 010011 3350 07 2789 lca ptw.os+ptw.er+1,dl turn off OS and ERR flags. 002672 aa 2 00000 3551 00 2790 ansa ptw|0 002673 aa 000004 2350 07 2791 lda ptw.valid,dl turn access on - it's off for synch pages 002674 aa 2 00000 2551 00 2792 orsa ptw|0 2793 002675 aa 6 00201 2361 00 2794 ldq errcode if error, go process it, passing 002676 0a 002713 6010 00 2795 tnz error_on_write error code in Q. 2796 002677 aa 000011 3350 07 2797 lca cme.phm_hedge+1,dl turn off write 002700 0a 000020 3550 74 2798 ansa cme_flags,*.cme scheduler and pd_upflag 2799 2800 " 002701 2801 resurgo: 002701 0a 000020 2350 74 2802 lda cme_devadd,*.cme 002702 aa 400000 3150 03 2803 cana ptw.nulled,du is this null? 002703 0a 002711 6000 00 2804 tze rethread no, ordinary write. 002704 aa 400000 6750 03 2805 era ptw.nulled,du 002705 0a 000020 7550 74 2806 sta cme_devadd,*.cme 2807 increment sst|sst.resurrections meter missing increment,sst|sst.resurrections 002706 aa 3 00504 0541 00 aos sst|sst.resurrections 002707 2808 resurgo.fmchanged: 002707 aa 000400 2350 03 2809 lda aste.fmchanged,du turn on fmc bit 002710 aa 3 00012 2551 13 2810 orsa ast|aste.fmchanged_word,.aste 002711 2811 no_dblw: 002711 2812 rethread: 002711 0a 000211 7070 00 2813 tsx .ret,thread_in insert in core map at lru 002712 0a 002611 7100 00 2814 tra notify_code and notify waiting processes 2815 " 2816 " 2817 " error_on_write - Zero data if data error, 2818 " but leave in core as modified if device inop. 2819 " 2820 002713 2821 error_on_write: "errcode passed in Q. 2822 increment sst|sst.page_write_errors meter missing increment,sst|sst.page_write_errors 002713 aa 3 00077 0541 00 aos sst|sst.page_write_errors 2823 002714 aa 000040 3160 07 2824 canq errflags.memory_unusable,dl page damage or mem problem 002715 0a 002720 6010 00 2825 tnz done.werr.deverr 2826 2827 2828 " not pd case- analyze errcode 002716 aa 000020 3160 07 2829 canq errflags.device_inoperative,dl disk down? 002717 0a 002756 6010 00 2830 tnz write_device_inop yes, handle it 2831 2832 " 2833 " Must be data error on write 002720 2834 done.werr.deverr: 2835 " 002720 aa 200000 2350 07 2836 lda aste.damaged,dl 002721 aa 3 00013 2551 13 2837 orsa ast|aste.damaged_word,.aste 002722 aa 000400 2350 03 2838 lda aste.fmchanged,du cause vtoce update 002723 aa 3 00012 2551 13 2839 orsa ast|aste.fmchanged_word,.aste 2840 002724 0a 000211 7070 00 2841 tsx .ret,thread_in get core in list 002725 aa 000005 3350 07 2842 lca ptw.valid+1,dl turn off access 002726 aa 2 00000 3551 00 2843 ansa ptw|0 002727 4a 4 00262 7071 20 2844 tsx .ret,cam_cache$cam_cache 002730 0a 002265 7070 00 2845 tsx .ret,cleanup_page drive guy out of core 2846 002731 aa 010000 2350 07 2847 lda ptw.er,dl 002732 aa 2 00000 2551 00 2848 orsa ptw|0 2849 " 2850 " Try for an older copy of the page in any case. 2851 " 002733 4a 4 00350 6271 20 2852 eax .ret,page_error$reverting_page assume some stuff out there 002734 0a 000020 2350 74 2853 lda cme_devadd,*.cme get diskaddr or pdaddr 002735 aa 740000 3150 07 2854 cana add_type.non_null,dl any good stuff atall? 002736 0a 002750 6010 00 2855 tnz done.werr.deverr.printerr ptw ok 2856 002737 4a 4 00352 6271 20 2857 eax .ret,page_error$zeroing_page 002740 aa 6 00201 2361 00 2858 ldq errcode see what case 002741 aa 377024 2350 03 2859 lda page_bad_null,du assume device lossage 002742 aa 000040 3160 07 2860 canq errflags.memory_unusable,dl 002743 0a 002745 6000 00 2861 tze *+2 002744 aa 377027 2350 03 2862 lda page_devparity_null,du parity case 2863 staddra ptw|0 in the ptw missing staddra,ptw|0 002745 aa 2 00000 6751 00 era ptw|0 002746 0a 003030 3750 00 ana =v36/address_mask 002747 aa 2 00000 6551 00 ersa ptw|0 002750 2864 done.werr.deverr.printerr: 002750 aa 000000 7070 17 2865 tsx .ret,0,.ret print barfage 002751 aa 6 00201 2351 00 2866 lda errcode do we have to make main mem vanish? 002752 aa 000040 3150 07 2867 cana errflags.memory_unusable,dl 002753 0a 002615 6000 00 2868 tze done.notify.uncond exit 2869 002754 0a 002764 7070 00 2870 tsx .ret,delete_mm_frame delete this frame of main mem 002755 0a 002615 7100 00 2871 tra done.notify.uncond 2872 "cme has been freed, don't know whether 2873 "to notify or not, so do it. 2874 002756 2875 write_device_inop: 002756 0a 000500 7070 00 2876 tsx .ret,get_pvtx 002757 0a 002773 7070 00 2877 tsx .ret,call_disk_emergency 2878 002760 aa 000400 2350 07 2879 lda ptw.phm1,dl turn mod bit back on 002761 aa 2 00000 2551 00 2880 orsa ptw|0 2881 002762 2882 finish_write_error: 002762 0a 000214 7070 00 2883 tsx .ret,thread_in_mru avoid repl algorithm 002763 0a 002611 7100 00 2884 tra notify_code 2885 2886 2887 2888 " 2889 " 2890 " Clear out and deconfigure main memory frame. 2891 " 002764 2892 delete_mm_frame: 002764 0a 000136 7060 00 2893 tsx .2ret,savex 002765 0a 000173 7070 00 2894 tsx .ret,thread_out good move 002766 aa 000001 3350 07 2895 lca 1,dl just zap first word 002767 0a 000016 7550 74 2896 sta cme_0,*.cme 002770 aa 3 00024 0551 00 2897 asa sst|sst.nused it's not used. 002771 4a 4 00354 7071 20 2898 tsx .ret,page_error$deleting_mm_frame annuntio 002772 0a 000141 7100 00 2899 tra unsavex 2900 2901 " 2902 " Subroutine to call disk_emergency on disk-errors, 2903 " So that he might make assessments of system-wide 2904 " implications of disk device status. 2905 002773 2906 call_disk_emergency: 002773 aa 6 00172 7551 00 2907 sta pvtx pvtx in a-reg 002774 aa 6 00172 3501 00 2908 eppap pvtx 002775 aa 6 00110 2501 00 2909 spriap arg+2 002776 aa 6 00201 3501 00 2910 eppap errcode 002777 aa 6 00112 2501 00 2911 spriap arg+4 003000 0a 003032 2370 00 2912 ldaq =v18/4,18/4,36/0 003001 aa 6 00106 7571 00 2913 staq arg 003002 aa 6 00000 2541 00 2914 call disk_emergency$disk_emergency(sp|arg) 003003 aa 6 00106 3501 00 003004 4a 4 00016 3521 20 003005 aa 6 00040 7531 00 003006 aa 7 00036 6701 20 003007 aa 6 00000 1731 00 003010 aa 6 00040 0731 00 003011 aa 000000 7100 17 2915 tra 0,.ret 2916 2917 2918 end ENTRY SEQUENCES 003012 5a 000570 0000 00 003013 aa 7 00046 2721 20 003014 0a 001361 7100 00 003015 5a 000561 0000 00 003016 aa 7 00046 2721 20 003017 0a 000103 7100 00 003020 5a 000552 0000 00 003021 aa 7 00046 2721 20 003022 0a 000077 7100 00 003023 5a 000011 0000 00 003024 aa 7 00046 2721 20 003025 0a 002623 7100 00 LITERALS 003026 aa 777666 333222 003027 aa 444000 111555 003030 aa 777777 740000 003032 aa 000004 000004 003033 aa 000000 000000 NAME DEFINITIONS FOR ENTRY POINTS AND SEGDEFS 003034 5a 000003 000000 003035 5a 000605 600000 003036 aa 000000 000000 003037 55 000011 000002 003040 5a 000002 400003 003041 55 000006 000011 003042 aa 012 160 141 147 003043 aa 145 137 146 141 003044 aa 165 154 164 000 003045 55 000020 000003 003046 0a 003024 500000 003047 55 000014 000003 003050 aa 015 156 157 164 notify_return 003051 aa 151 146 171 137 003052 aa 162 145 164 165 003053 aa 162 156 000 000 003054 55 000026 000011 003055 0a 002426 400000 003056 55 000023 000003 003057 aa 012 167 162 151 write_page 003060 aa 164 145 137 160 003061 aa 141 147 145 000 003062 55 000034 000020 003063 0a 002144 400000 003064 55 000031 000003 003065 aa 011 165 156 163 unsavex_2 003066 aa 141 166 145 170 003067 aa 137 062 000 000 003070 55 000042 000026 003071 0a 000143 400000 003072 55 000037 000003 003073 aa 011 165 156 163 unsavex_1 003074 aa 141 166 145 170 003075 aa 137 061 000 000 003076 55 000047 000034 003077 0a 000141 400000 003100 55 000045 000003 003101 aa 007 165 156 163 unsavex 003102 aa 141 166 145 170 003103 55 000056 000042 003104 0a 000113 400000 003105 55 000052 000003 003106 aa 016 165 156 154 unlock_ptl_ext 003107 aa 157 143 153 137 003110 aa 160 164 154 137 003111 aa 145 170 164 000 003112 55 000064 000047 003113 0a 000120 400000 003114 55 000061 000003 003115 aa 012 165 156 154 unlock_ptl 003116 aa 157 143 153 137 003117 aa 160 164 154 000 003120 55 000073 000056 003121 0a 000505 400000 003122 55 000067 000003 003123 aa 017 164 162 141 trace_signaller 003124 aa 143 145 137 163 003125 aa 151 147 156 141 003126 aa 154 154 145 162 003127 55 000103 000064 003130 0a 000525 400000 003131 55 000076 000003 003132 aa 020 164 162 141 trace_scheduling 003133 aa 143 145 137 163 003134 aa 143 150 145 144 003135 aa 165 154 151 156 003136 aa 147 000 000 000 003137 55 000113 000073 003140 0a 000514 400000 003141 55 000106 000003 003142 aa 023 164 162 141 trace_restart_fault 003143 aa 143 145 137 162 003144 aa 145 163 164 141 003145 aa 162 164 137 146 003146 aa 141 165 154 164 003147 55 000122 000103 003150 0a 000521 400000 003151 55 000116 000003 003152 aa 014 164 162 141 trace_marker 003153 aa 143 145 137 155 003154 aa 141 162 153 145 003155 aa 162 000 000 000 003156 55 000131 000113 003157 0a 000145 400000 003160 55 000125 000003 003161 aa 015 164 150 162 thread_to_lru 003162 aa 145 141 144 137 003163 aa 164 157 137 154 003164 aa 162 165 000 000 003165 55 000137 000122 003166 0a 000173 400000 003167 55 000134 000003 003170 aa 012 164 150 162 thread_out 003171 aa 145 141 144 137 003172 aa 157 165 164 000 003173 55 000146 000131 003174 0a 000220 400000 003175 55 000142 000003 003176 aa 016 164 150 162 thread_lru_ext 003177 aa 145 141 144 137 003200 aa 154 162 165 137 003201 aa 145 170 164 000 003202 55 000154 000137 003203 0a 000211 400000 003204 55 000151 000003 003205 aa 011 164 150 162 thread_in 003206 aa 145 141 144 137 003207 aa 151 156 000 000 003210 55 000163 000146 003211 0a 000244 400000 003212 55 000157 000003 003213 aa 016 163 145 164 set_up_abs_seg 003214 aa 137 165 160 137 003215 aa 141 142 163 137 003216 aa 163 145 147 000 003217 55 000170 000154 003220 0a 000136 400000 003221 55 000166 000003 003222 aa 005 163 141 166 savex 003223 aa 145 170 000 000 003224 55 000200 000163 003225 0a 000641 400000 003226 55 000173 000003 003227 aa 021 162 145 163 reset_working_set 003230 aa 145 164 137 167 003231 aa 157 162 153 151 003232 aa 156 147 137 163 003233 aa 145 164 000 000 003234 55 000207 000170 003235 0a 001600 400000 003236 55 000203 000003 003237 aa 015 162 145 141 read_page_abs 003240 aa 144 137 160 141 003241 aa 147 145 137 141 003242 aa 142 163 000 000 003243 55 000214 000200 003244 0a 001526 400000 003245 55 000212 000003 003246 aa 006 160 167 162 pwrite 003247 aa 151 164 145 000 003250 55 000221 000207 003251 0a 001467 400000 003252 55 000217 000003 003253 aa 005 160 162 145 pread 003254 aa 141 144 000 000 003255 55 000230 000214 003256 0a 000642 400000 003257 55 000224 000003 003260 aa 015 160 162 145 pre_page_info 003261 aa 137 160 141 147 003262 aa 145 137 151 156 003263 aa 146 157 000 000 003264 55 000236 000221 003265 0a 000012 400000 003266 55 000233 000003 003267 aa 012 160 146 137 pf_scuinfo 003270 aa 163 143 165 151 003271 aa 156 146 157 000 003272 55 000243 000230 003273 0a 000010 400000 003274 55 000241 000003 003275 aa 006 160 146 137 pf_prs 003276 aa 160 162 163 000 003277 55 000251 000236 003300 0a 001547 400000 003301 55 000246 000003 003302 aa 010 160 143 154 pcleanup 003303 aa 145 141 156 165 003304 aa 160 000 000 000 003305 55 000261 000243 003306 0a 000127 400000 003307 55 000254 000003 003310 aa 020 160 141 147 page_fault_error 003311 aa 145 137 146 141 003312 aa 165 154 164 137 003313 aa 145 162 162 157 003314 aa 162 000 000 000 003315 55 000270 000251 003316 0a 002623 400000 003317 55 000264 000003 003320 aa 015 156 157 164 notify_return 003321 aa 151 146 171 137 003322 aa 162 145 164 165 003323 aa 162 156 000 000 003324 55 000275 000261 003325 0a 000014 400000 003326 55 000273 000003 003327 aa 005 155 171 137 my_lp 003330 aa 154 160 000 000 003331 55 000304 000270 003332 0a 000041 400000 003333 55 000300 000003 003334 aa 016 154 157 143 lock_ptl_no_lp 003335 aa 153 137 160 164 003336 aa 154 137 156 157 003337 aa 137 154 160 000 003340 55 000313 000275 003341 0a 000121 400000 003342 55 000307 000003 003343 aa 014 154 157 143 lock_ptl_ext 003344 aa 153 137 160 164 003345 aa 154 137 145 170 003346 aa 164 000 000 000 003347 55 000321 000304 003350 0a 000040 400000 003351 55 000316 000003 003352 aa 010 154 157 143 lock_ptl 003353 aa 153 137 160 164 003354 aa 154 000 000 000 003355 55 000330 000313 003356 0a 000131 400000 003357 55 000324 000003 003360 aa 015 151 156 151 init_savex_bb 003361 aa 164 137 163 141 003362 aa 166 145 170 137 003363 aa 142 142 000 000 003364 55 000336 000321 003365 0a 000132 400000 003366 55 000333 000003 003367 aa 012 151 156 151 init_savex 003370 aa 164 137 163 141 003371 aa 166 145 170 000 003372 55 000344 000330 003373 0a 002146 400000 003374 55 000341 000003 003375 aa 012 146 151 156 find_core_ 003376 aa 144 137 143 157 003377 aa 162 145 137 000 003400 55 000351 000336 003401 0a 001062 400000 003402 55 000347 000003 003403 aa 005 146 141 165 fault 003404 aa 154 164 000 000 003405 55 000357 000344 003406 0a 000530 400000 003407 55 000354 000003 003410 aa 012 145 156 164 enter_data 003411 aa 145 162 137 144 003412 aa 141 164 141 000 003413 55 000364 000351 003414 0a 002551 400000 003415 55 000362 000003 003416 aa 005 144 157 156 done_ 003417 aa 145 137 000 000 003420 55 000371 000357 003421 0a 002550 400000 003422 55 000367 000003 003423 aa 004 144 157 156 done 003424 aa 145 000 000 000 003425 55 000400 000364 003426 0a 002100 400000 003427 55 000374 000003 003430 aa 015 144 151 163 disk_offlinep 003431 aa 153 137 157 146 003432 aa 146 154 151 156 003433 aa 145 160 000 000 003434 55 000410 000371 003435 0a 002111 400000 003436 55 000403 000003 003437 aa 022 144 151 163 disk_offline_event 003440 aa 153 137 157 146 003441 aa 146 154 151 156 003442 aa 145 137 145 166 003443 aa 145 156 164 000 003444 55 000417 000400 003445 0a 002764 400000 003446 55 000413 000003 003447 aa 017 144 145 154 delete_mm_frame 003450 aa 145 164 145 137 003451 aa 155 155 137 146 003452 aa 162 141 155 145 003453 55 000430 000410 003454 0a 000024 400000 003455 55 000422 000003 003456 aa 025 143 155 145 cme_synch_page_entryp 003457 aa 137 163 171 156 003460 aa 143 150 137 160 003461 aa 141 147 145 137 003462 aa 145 156 164 162 003463 aa 171 160 000 000 003464 55 000437 000417 003465 0a 000024 400000 003466 55 000433 000003 003467 aa 017 143 155 145 cme_pin_counter 003470 aa 137 160 151 156 003471 aa 137 143 157 165 003472 aa 156 164 145 162 003473 55 000444 000430 003474 0a 000024 400000 003475 55 000442 000003 003476 aa 005 143 155 145 cme_3 003477 aa 137 063 000 000 003500 55 000452 000437 003501 0a 000022 400000 003502 55 000447 000003 003503 aa 010 143 155 145 cme_ptwp 003504 aa 137 160 164 167 003505 aa 160 000 000 000 003506 55 000460 000444 003507 0a 000022 400000 003510 55 000455 000003 003511 aa 011 143 155 145 cme_astep 003512 aa 137 141 163 164 003513 aa 145 160 000 000 003514 55 000465 000452 003515 0a 000022 400000 003516 55 000463 000003 003517 aa 005 143 155 145 cme_2 003520 aa 137 062 000 000 003521 55 000473 000460 003522 0a 000020 400000 003523 55 000470 000003 003524 aa 011 143 155 145 cme_flags 003525 aa 137 146 154 141 003526 aa 147 163 000 000 003527 55 000501 000465 003530 0a 000020 400000 003531 55 000476 000003 003532 aa 012 143 155 145 cme_devadd 003533 aa 137 144 145 166 003534 aa 141 144 144 000 003535 55 000506 000473 003536 0a 000020 400000 003537 55 000504 000003 003540 aa 005 143 155 145 cme_1 003541 aa 137 061 000 000 003542 55 000513 000501 003543 0a 000016 400000 003544 55 000511 000003 003545 aa 006 143 155 145 cme_fp 003546 aa 137 146 160 000 003547 55 000520 000506 003550 0a 000016 400000 003551 55 000516 000003 003552 aa 006 143 155 145 cme_bp 003553 aa 137 142 160 000 003554 55 000525 000513 003555 0a 000016 400000 003556 55 000523 000003 003557 aa 005 143 155 145 cme_0 003560 aa 137 060 000 000 003561 55 000533 000520 003562 0a 000016 400000 003563 55 000530 000003 003564 aa 013 143 155 145 cme_offsets 003565 aa 137 157 146 146 003566 aa 163 145 164 163 003567 55 000542 000525 003570 0a 002265 400000 003571 55 000536 000003 003572 aa 014 143 154 145 cleanup_page 003573 aa 141 156 165 160 003574 aa 137 160 141 147 003575 aa 145 000 000 000 003576 55 000552 000533 003577 0a 000775 400000 003600 55 000545 000003 003601 aa 020 143 150 145 check_accessible 003602 aa 143 153 137 141 003603 aa 143 143 145 163 003604 aa 163 151 142 154 003605 aa 145 000 000 000 003606 55 000561 000542 003607 0a 003021 500000 003610 55 000555 000003 003611 aa 017 160 164 154 ptl_wait_return 003612 aa 137 167 141 151 003613 aa 164 137 162 145 003614 aa 164 165 162 156 003615 55 000570 000552 003616 0a 003016 500000 003617 55 000564 000003 003620 aa 017 160 155 165 pmut_unlock_ptl 003621 aa 164 137 165 156 003622 aa 154 157 143 153 003623 aa 137 160 164 154 003624 55 000576 000561 003625 0a 003013 500000 003626 55 000573 000003 003627 aa 013 167 141 151 wait_return 003630 aa 164 137 162 145 003631 aa 164 165 162 156 003632 55 000002 000570 003633 6a 000000 400002 003634 55 000601 000003 003635 aa 014 163 171 155 symbol_table 003636 aa 142 157 154 137 003637 aa 164 141 142 154 003640 aa 145 000 000 000 DEFINITIONS HASH TABLE 003641 aa 000000 000131 003642 5a 000131 000000 003643 5a 000251 000000 003644 5a 000552 000000 003645 5a 000275 000000 003646 5a 000576 000000 003647 5a 000113 000000 003650 5a 000364 000000 003651 5a 000122 000000 003652 5a 000236 000000 003653 5a 000207 000000 003654 aa 000000 000000 003655 5a 000417 000000 003656 5a 000064 000000 003657 5a 000533 000000 003660 aa 000000 000000 003661 5a 000473 000000 003662 aa 000000 000000 003663 aa 000000 000000 003664 aa 000000 000000 003665 aa 000000 000000 003666 aa 000000 000000 003667 aa 000000 000000 003670 aa 000000 000000 003671 aa 000000 000000 003672 aa 000000 000000 003673 aa 000000 000000 003674 aa 000000 000000 003675 5a 000570 000000 003676 5a 000304 000000 003677 5a 000047 000000 003700 aa 000000 000000 003701 aa 000000 000000 003702 aa 000000 000000 003703 5a 000437 000000 003704 5a 000460 000000 003705 5a 000170 000000 003706 5a 000501 000000 003707 5a 000357 000000 003710 5a 000520 000000 003711 5a 000137 000000 003712 5a 000444 000000 003713 5a 000410 000000 003714 aa 000000 000000 003715 aa 000000 000000 003716 5a 000073 000000 003717 aa 000000 000000 003720 aa 000000 000000 003721 5a 000230 000000 003722 5a 000163 000000 003723 5a 000525 000000 003724 5a 000542 000000 003725 5a 000103 000000 003726 5a 000336 000000 003727 5a 000330 000000 003730 5a 000026 000000 003731 5a 000034 000000 003732 5a 000400 000000 003733 5a 000146 000000 003734 aa 000000 000000 003735 aa 000000 000000 003736 5a 000321 000000 003737 aa 000000 000000 003740 5a 000243 000000 003741 5a 000221 000000 003742 5a 000270 000000 003743 5a 000506 000000 003744 5a 000011 000000 003745 5a 000020 000000 003746 5a 000154 000000 003747 5a 000200 000000 003750 5a 000261 000000 003751 5a 000513 000000 003752 5a 000452 000000 003753 5a 000465 000000 003754 5a 000214 000000 003755 5a 000344 000000 003756 5a 000371 000000 003757 5a 000561 000000 003760 5a 000313 000000 003761 5a 000042 000000 003762 5a 000056 000000 003763 aa 000000 000000 003764 aa 000000 000000 003765 aa 000000 000000 003766 aa 000000 000000 003767 aa 000000 000000 003770 5a 000351 000000 003771 5a 000430 000000 003772 aa 000000 000000 EXTERNAL NAMES 003773 aa 021 144 145 154 deleting_mm_frame 003774 aa 145 164 151 156 003775 aa 147 137 155 155 003776 aa 137 146 162 141 003777 aa 155 145 000 000 004000 aa 014 172 145 162 zeroing_page 004001 aa 157 151 156 147 004002 aa 137 160 141 147 004003 aa 145 000 000 000 004004 aa 016 162 145 166 reverting_page 004005 aa 145 162 164 151 004006 aa 156 147 137 160 004007 aa 141 147 145 000 004010 aa 017 143 157 156 connect_pending 004011 aa 156 145 143 164 004012 aa 137 160 145 156 004013 aa 144 151 156 147 004014 aa 010 151 144 154 idle_ptr 004015 aa 145 137 160 164 004016 aa 162 000 000 000 004017 aa 007 160 157 163 post_io 004020 aa 164 137 151 157 004021 aa 013 166 157 154 volmap_page 004022 aa 155 141 160 137 004023 aa 160 141 147 145 004024 aa 013 160 141 147 page_notify 004025 aa 145 137 156 157 004026 aa 164 151 146 171 004027 aa 015 160 162 145 pre_empt_flag 004030 aa 137 145 155 160 004031 aa 164 137 146 154 004032 aa 141 147 000 000 004033 aa 014 144 145 166 device_error 004034 aa 151 143 145 137 004035 aa 145 162 162 157 004036 aa 162 000 000 000 004037 aa 015 145 162 162 error_in_done 004040 aa 157 162 137 151 004041 aa 156 137 144 157 004042 aa 156 145 000 000 004043 aa 011 144 151 163 disk_post 004044 aa 153 137 160 157 004045 aa 163 164 000 000 004046 aa 011 144 145 166 dev_write 004047 aa 137 167 162 151 004050 aa 164 145 000 000 004051 aa 010 143 141 155 cam_ptws 004052 aa 137 160 164 167 004053 aa 163 000 000 000 004054 aa 011 172 145 162 zero_page 004055 aa 157 137 160 141 004056 aa 147 145 000 000 004057 aa 017 163 171 163 system_shutdown 004060 aa 164 145 155 137 004061 aa 163 150 165 164 004062 aa 144 157 167 156 004063 aa 011 145 163 144 esd_state 004064 aa 137 163 164 141 004065 aa 164 145 000 000 004066 aa 003 160 166 164 pvt 004067 aa 013 157 165 164 out_of_core 004070 aa 137 157 146 137 004071 aa 143 157 162 145 004072 aa 010 167 151 164 withdraw 004073 aa 150 144 162 141 004074 aa 167 000 000 000 004075 aa 012 146 162 145 free_store 004076 aa 145 137 163 164 004077 aa 157 162 145 000 004100 aa 003 143 141 155 cam 004101 aa 010 144 145 166 dev_read 004102 aa 137 162 145 141 004103 aa 144 000 000 000 004104 aa 012 143 150 145 check_ckdv 004105 aa 143 153 137 143 004106 aa 153 144 166 000 004107 aa 016 144 145 166 device_control 004110 aa 151 143 145 137 004111 aa 143 157 156 164 004112 aa 162 157 154 000 004113 aa 027 145 170 143 excessive_seg_state_chg 004114 aa 145 163 163 151 004115 aa 166 145 137 163 004116 aa 145 147 137 163 004117 aa 164 141 164 145 004120 aa 137 143 150 147 004121 aa 022 143 157 166 covert_event_count 004122 aa 145 162 164 137 004123 aa 145 166 145 156 004124 aa 164 137 143 157 004125 aa 165 156 164 000 004126 aa 036 164 150 162 throttle_segment_state_changes 004127 aa 157 164 164 154 004130 aa 145 137 163 145 004131 aa 147 155 145 156 004132 aa 164 137 163 164 004133 aa 141 164 145 137 004134 aa 143 150 141 156 004135 aa 147 145 163 000 004136 aa 011 143 141 155 cam_cache 004137 aa 137 143 141 143 004140 aa 150 145 000 000 004141 aa 011 163 151 147 signaller 004142 aa 156 141 154 154 004143 aa 145 162 000 000 004144 aa 013 163 151 147 signal_data 004145 aa 156 141 154 137 004146 aa 144 141 164 141 004147 aa 010 143 157 167 cow_ptrs 004150 aa 137 160 164 162 004151 aa 163 000 000 000 004152 aa 021 164 162 157 trouble_processid 004153 aa 165 142 154 145 004154 aa 137 160 162 157 004155 aa 143 145 163 163 004156 aa 151 144 000 000 004157 aa 023 163 171 163 sys_trouble_pending 004160 aa 137 164 162 157 004161 aa 165 142 154 145 004162 aa 137 160 145 156 004163 aa 144 151 156 147 004164 aa 012 157 160 145 open_level 004165 aa 156 137 154 145 004166 aa 166 145 154 000 004167 aa 012 160 141 147 page_pause 004170 aa 145 137 160 141 004171 aa 165 163 145 000 004172 aa 027 146 151 162 first_covert_event_time 004173 aa 163 164 137 143 004174 aa 157 166 145 162 004175 aa 164 137 145 166 004176 aa 145 156 164 137 004177 aa 164 151 155 145 004200 aa 011 160 141 147 page_wait 004201 aa 145 137 167 141 004202 aa 151 164 000 000 004203 aa 012 156 137 145 n_eligible 004204 aa 154 151 147 151 004205 aa 142 154 145 000 004206 aa 026 156 165 155 number_of_pages_in_use 004207 aa 142 145 162 137 004210 aa 157 146 137 160 004211 aa 141 147 145 163 004212 aa 137 151 156 137 004213 aa 165 163 145 000 004214 aa 012 160 141 147 page_waits 004215 aa 145 137 167 141 004216 aa 151 164 163 000 004217 aa 016 160 141 147 page_fault_end 004220 aa 145 137 146 141 004221 aa 165 154 164 137 004222 aa 145 156 144 000 004223 aa 012 160 141 147 page_fault 004224 aa 145 137 146 141 004225 aa 165 154 164 000 004226 aa 010 160 143 137 pc_trace 004227 aa 164 162 141 143 004230 aa 145 000 000 000 004231 aa 023 165 156 160 unpaged_page_tables 004232 aa 141 147 145 144 004233 aa 137 160 141 147 004234 aa 145 137 164 141 004235 aa 142 154 145 163 004236 aa 010 163 145 164 set_mask 004237 aa 137 155 141 163 004240 aa 153 000 000 000 004241 aa 011 163 171 163 sys_level 004242 aa 137 154 145 166 004243 aa 145 154 000 000 004244 aa 011 162 145 141 read_mask 004245 aa 144 137 155 141 004246 aa 163 153 000 000 004247 aa 010 155 141 163 mask_ptr 004250 aa 153 137 160 164 004251 aa 162 000 000 000 004252 aa 003 163 143 163 scs 004253 aa 005 167 162 151 write 004254 aa 164 145 000 000 004255 aa 007 143 154 145 cleanup 004256 aa 141 156 165 160 004257 aa 012 160 141 147 page_synch 004260 aa 145 137 163 171 004261 aa 156 143 150 000 004262 aa 013 161 165 157 quota_inhib 004263 aa 164 141 137 151 004264 aa 156 150 151 142 004265 aa 012 141 154 141 alarm_ring 004266 aa 162 155 137 162 004267 aa 151 156 147 000 004270 aa 010 160 147 164 pgt_mask 004271 aa 137 155 141 163 004272 aa 153 000 000 000 004273 aa 007 141 160 164 apt_ptr 004274 aa 137 160 164 162 004275 aa 005 164 162 141 trace 004276 aa 143 145 000 000 004277 aa 021 160 157 163 post_purge_switch 004300 aa 164 137 160 165 004301 aa 162 147 145 137 004302 aa 163 167 151 164 004303 aa 143 150 000 000 004304 aa 016 143 157 156 condition_name 004305 aa 144 151 164 151 004306 aa 157 156 137 156 004307 aa 141 155 145 000 004310 aa 023 143 160 165 cpu_h_flt_ctr_array 004311 aa 137 150 137 146 004312 aa 154 164 137 143 004313 aa 164 162 137 141 004314 aa 162 162 141 171 004315 aa 023 143 160 165 cpu_g_flt_ctr_array 004316 aa 137 147 137 146 004317 aa 154 164 137 143 004320 aa 164 162 137 141 004321 aa 162 162 141 171 004322 aa 023 143 160 165 cpu_f_flt_ctr_array 004323 aa 137 146 137 146 004324 aa 154 164 137 143 004325 aa 164 162 137 141 004326 aa 162 162 141 171 004327 aa 023 143 160 165 cpu_e_flt_ctr_array 004330 aa 137 145 137 146 004331 aa 154 164 137 143 004332 aa 164 162 137 141 004333 aa 162 162 141 171 004334 aa 023 143 160 165 cpu_d_flt_ctr_array 004335 aa 137 144 137 146 004336 aa 154 164 137 143 004337 aa 164 162 137 141 004340 aa 162 162 141 171 004341 aa 023 143 160 165 cpu_c_flt_ctr_array 004342 aa 137 143 137 146 004343 aa 154 164 137 143 004344 aa 164 162 137 141 004345 aa 162 162 141 171 004346 aa 023 143 160 165 cpu_b_flt_ctr_array 004347 aa 137 142 137 146 004350 aa 154 164 137 143 004351 aa 164 162 137 141 004352 aa 162 162 141 171 004353 aa 023 143 160 165 cpu_a_flt_ctr_array 004354 aa 137 141 137 146 004355 aa 154 164 137 143 004356 aa 164 162 137 141 004357 aa 162 162 141 171 004360 aa 031 143 160 165 cpu_h_cache_err_ctr_array 004361 aa 137 150 137 143 004362 aa 141 143 150 145 004363 aa 137 145 162 162 004364 aa 137 143 164 162 004365 aa 137 141 162 162 004366 aa 141 171 000 000 004367 aa 031 143 160 165 cpu_g_cache_err_ctr_array 004370 aa 137 147 137 143 004371 aa 141 143 150 145 004372 aa 137 145 162 162 004373 aa 137 143 164 162 004374 aa 137 141 162 162 004375 aa 141 171 000 000 004376 aa 031 143 160 165 cpu_f_cache_err_ctr_array 004377 aa 137 146 137 143 004400 aa 141 143 150 145 004401 aa 137 145 162 162 004402 aa 137 143 164 162 004403 aa 137 141 162 162 004404 aa 141 171 000 000 004405 aa 031 143 160 165 cpu_e_cache_err_ctr_array 004406 aa 137 145 137 143 004407 aa 141 143 150 145 004410 aa 137 145 162 162 004411 aa 137 143 164 162 004412 aa 137 141 162 162 004413 aa 141 171 000 000 004414 aa 031 143 160 165 cpu_d_cache_err_ctr_array 004415 aa 137 144 137 143 004416 aa 141 143 150 145 004417 aa 137 145 162 162 004420 aa 137 143 164 162 004421 aa 137 141 162 162 004422 aa 141 171 000 000 004423 aa 031 143 160 165 cpu_c_cache_err_ctr_array 004424 aa 137 143 137 143 004425 aa 141 143 150 145 004426 aa 137 145 162 162 004427 aa 137 143 164 162 004430 aa 137 141 162 162 004431 aa 141 171 000 000 004432 aa 031 143 160 165 cpu_b_cache_err_ctr_array 004433 aa 137 142 137 143 004434 aa 141 143 150 145 004435 aa 137 145 162 162 004436 aa 137 143 164 162 004437 aa 137 141 162 162 004440 aa 141 171 000 000 004441 aa 031 143 160 165 cpu_a_cache_err_ctr_array 004442 aa 137 141 137 143 004443 aa 141 143 150 145 004444 aa 137 145 162 162 004445 aa 137 143 164 162 004446 aa 137 141 162 162 004447 aa 141 171 000 000 004450 aa 023 167 151 162 wired_hardcore_data 004451 aa 145 144 137 150 004452 aa 141 162 144 143 004453 aa 157 162 145 137 004454 aa 144 141 164 141 004455 aa 020 155 157 144 mode_reg_enabled 004456 aa 145 137 162 145 004457 aa 147 137 145 156 004460 aa 141 142 154 145 004461 aa 144 000 000 000 004462 aa 010 155 157 144 mode_reg 004463 aa 145 137 162 145 004464 aa 147 000 000 000 004465 aa 015 143 141 143 cache_luf_reg 004466 aa 150 145 137 154 004467 aa 165 146 137 162 004470 aa 145 147 000 000 004471 aa 014 155 143 137 mc_trace_buf 004472 aa 164 162 141 143 004473 aa 145 137 142 165 004474 aa 146 000 000 000 004475 aa 015 160 162 157 processor_tag 004476 aa 143 145 163 163 004477 aa 157 162 137 164 004500 aa 141 147 000 000 004501 aa 014 155 143 137 mc_trace_seg 004502 aa 164 162 141 143 004503 aa 145 137 163 145 004504 aa 147 000 000 000 004505 aa 013 155 143 137 mc_trace_sw 004506 aa 164 162 141 143 004507 aa 145 137 163 167 004510 aa 004 144 163 145 dseg 004511 aa 147 000 000 000 004512 aa 015 166 151 162 virtual_delta 004513 aa 164 165 141 154 004514 aa 137 144 145 154 004515 aa 164 141 000 000 004516 aa 013 164 151 155 time_v_temp 004517 aa 145 137 166 137 004520 aa 164 145 155 160 004521 aa 010 143 160 165 cpu_time 004522 aa 137 164 151 155 004523 aa 145 000 000 000 004524 aa 013 166 164 151 vtime_count 004525 aa 155 145 137 143 004526 aa 157 165 156 164 004527 aa 017 156 157 156 non_fatal_error 004530 aa 137 146 141 164 004531 aa 141 154 137 145 004532 aa 162 162 157 162 004533 aa 016 143 157 162 core_queue_man 004534 aa 145 137 161 165 004535 aa 145 165 145 137 004536 aa 155 141 156 000 004537 aa 015 165 156 167 unwire_unmask 004540 aa 151 162 145 137 004541 aa 165 156 155 141 004542 aa 163 153 000 000 004543 aa 004 160 155 165 pmut 004544 aa 164 000 000 000 004545 aa 010 160 164 154 ptl_wait 004546 aa 137 167 141 151 004547 aa 164 000 000 000 004550 aa 004 160 170 163 pxss 004551 aa 163 000 000 000 004552 aa 013 143 160 165 cpu_pf_time 004553 aa 137 160 146 137 004554 aa 164 151 155 145 004555 aa 007 164 143 137 tc_data 004556 aa 144 141 164 141 004557 aa 006 164 151 155 time_1 004560 aa 145 137 061 000 004561 aa 005 141 162 147 arg_1 004562 aa 137 061 000 000 004563 aa 012 160 164 154 ptl_mylock 004564 aa 137 155 171 154 004565 aa 157 143 153 000 004566 aa 012 160 141 147 page_error 004567 aa 145 137 145 162 004570 aa 162 157 162 000 004571 aa 006 143 154 157 clock_ 004572 aa 143 153 137 000 004573 aa 010 163 171 163 sys_info 004574 aa 137 151 156 146 004575 aa 157 000 000 000 004576 aa 011 160 162 157 processid 004577 aa 143 145 163 163 004600 aa 151 144 000 000 004601 aa 003 163 163 164 sst 004602 aa 017 160 141 147 page_fault_data 004603 aa 145 137 146 141 004604 aa 165 154 164 137 004605 aa 144 141 164 141 004606 aa 003 160 144 163 pds 004607 aa 016 144 151 163 disk_emergency 004610 aa 153 137 145 155 004611 aa 145 162 147 145 004612 aa 156 143 171 000 004613 aa 011 160 143 137 pc_signal 004614 aa 163 151 147 156 004615 aa 141 154 000 000 004616 aa 010 141 142 163 abs_seg1 004617 aa 137 163 145 147 004620 aa 061 000 000 000 004621 aa 004 160 162 144 prds 004622 aa 163 000 000 000 NO TRAP POINTER WORDS TYPE PAIR BLOCKS 004623 aa 000004 000000 004624 55 001532 000737 004625 aa 000004 000000 004626 55 001532 000744 004627 aa 000004 000000 004630 55 001532 000750 004631 aa 000004 000000 004632 55 001552 000754 004633 aa 000004 000000 004634 55 001565 000760 004635 aa 000004 000000 004636 55 000765 000763 004637 aa 000004 000000 004640 55 001514 000770 004641 aa 000004 000000 004642 55 001521 000773 004643 aa 000004 000000 004644 55 001532 000777 004645 aa 000004 000000 004646 55 001532 001003 004647 aa 000004 000000 004650 55 001172 000367 004651 aa 000004 000000 004652 55 001477 001007 004653 aa 000004 000000 004654 55 001053 001012 004655 aa 000004 000000 004656 55 001102 001015 004657 aa 000004 000000 004660 55 001172 001020 004661 aa 000004 000000 004662 55 001521 001023 004663 aa 000004 000000 004664 55 001172 000023 004665 aa 000004 000000 004666 55 001032 001027 004667 aa 000004 000000 004670 55 001532 001033 004671 aa 000004 000000 004672 55 001041 001036 004673 aa 000004 000000 004674 55 001053 000374 004675 aa 000004 000000 004676 55 001102 001044 004677 aa 000004 000000 004700 55 001053 001045 004701 aa 000004 000000 004702 55 001053 001050 004703 aa 000004 000000 004704 55 001532 001057 004705 aa 000004 000000 004706 55 001552 001065 004707 aa 000004 000000 004710 55 001552 001072 004711 aa 000004 000000 004712 55 001102 001102 004713 aa 000004 000000 004714 55 001105 001105 004715 aa 000004 000000 004716 55 001552 001110 004717 aa 000004 000000 004720 55 001216 001113 004721 aa 000004 000000 004722 55 001216 001116 004723 aa 000004 000000 004724 55 001216 001123 004725 aa 000004 000000 004726 55 001216 001130 004727 aa 000004 000000 004730 55 001514 001133 004731 aa 000004 000000 004732 55 001552 001136 004733 aa 000004 000000 004734 55 001514 001144 004735 aa 000004 000000 004736 55 001521 001147 004737 aa 000004 000000 004740 55 001552 001152 004741 aa 000004 000000 004742 55 001552 001160 004743 aa 000004 000000 004744 55 001172 001163 004745 aa 000004 000000 004746 55 001172 001167 004747 aa 000003 000000 004750 5a 001175 000000 004751 aa 000004 000000 004752 55 001216 001202 004753 aa 000004 000000 004754 55 001216 001205 004755 aa 000004 000000 004756 55 001216 001210 004757 aa 000004 000000 004760 55 001216 001213 004761 aa 000004 000000 004762 55 001223 001217 004763 aa 000004 000000 004764 55 001223 001221 004765 aa 000004 000000 004766 55 001552 001226 004767 aa 000004 000000 004770 55 001552 001231 004771 aa 000004 000000 004772 55 001537 001234 004773 aa 000004 000000 004774 55 001552 001237 004775 aa 000004 000000 004776 55 001552 001241 004777 aa 000004 000000 005000 55 001521 001243 005001 aa 000004 000000 005002 55 001552 001250 005003 aa 000004 000000 005004 55 001414 001254 005005 aa 000004 000000 005006 55 001414 001261 005007 aa 000004 000000 005010 55 001414 001266 005011 aa 000004 000000 005012 55 001414 001273 005013 aa 000004 000000 005014 55 001414 001300 005015 aa 000004 000000 005016 55 001414 001305 005017 aa 000004 000000 005020 55 001414 001312 005021 aa 000004 000000 005022 55 001414 001317 005023 aa 000004 000000 005024 55 001414 001324 005025 aa 000004 000000 005026 55 001414 001333 005027 aa 000004 000000 005030 55 001414 001342 005031 aa 000004 000000 005032 55 001414 001351 005033 aa 000004 000000 005034 55 001414 001360 005035 aa 000004 000000 005036 55 001414 001367 005037 aa 000004 000000 005040 55 001414 001376 005041 aa 000004 000000 005042 55 001414 001405 005043 aa 000004 000000 005044 55 001565 001421 005045 aa 000004 000000 005046 55 001565 001426 005047 aa 000004 000000 005050 55 001565 001431 005051 aa 000004 000000 005052 55 001552 001435 005053 aa 000004 000000 005054 55 001565 001441 005055 aa 000004 000000 005056 55 001552 001445 005057 aa 000004 000000 005060 55 001552 001451 005061 aa 000003 000000 005062 5a 001454 000000 005063 aa 000003 000000 005064 5a 001521 000000 005065 aa 000004 000000 005066 55 001552 001456 005067 aa 000004 000000 005070 55 001552 001462 005071 aa 000004 000000 005072 55 001552 001465 005073 aa 000004 000000 005074 55 001552 001470 005075 aa 000004 000000 005076 55 001532 000254 005077 aa 000004 000000 005100 55 001532 001473 005101 aa 000004 000000 005102 55 001477 000061 005103 aa 000004 000000 005104 55 001507 001503 005105 aa 000004 000000 005106 55 001514 001511 005107 aa 000004 000000 005110 55 001521 001516 005111 aa 000004 000000 005112 55 001552 001523 005113 aa 000004 000000 005114 55 001552 001525 005115 aa 000004 000000 005116 55 001532 001527 005117 aa 000004 000000 005120 55 001537 001535 005121 aa 000004 000000 005122 55 001552 001542 005123 aa 000003 000000 005124 5a 001545 000000 005125 aa 000004 000000 005126 55 001552 001546 005127 aa 000004 000000 005130 55 001553 001553 005131 aa 000004 000000 005132 55 001557 001557 005133 aa 000003 000000 005134 5a 001562 000000 005135 aa 000003 000000 005136 5a 001565 000000 005137 aa 000001 000000 005140 aa 000000 000000 INTERNAL EXPRESSION WORDS 005141 5a 001567 000000 005142 5a 001571 000000 005143 5a 001573 000000 005144 5a 001575 000000 005145 5a 001577 000000 005146 5a 001601 000000 005147 5a 001603 000000 005150 5a 001605 000000 005151 5a 001607 000000 005152 5a 001611 000000 005153 5a 001613 000000 005154 5a 001615 000000 005155 5a 001617 000000 005156 5a 001621 000000 005157 5a 001623 000000 005160 5a 001625 000000 005161 5a 001627 000000 005162 5a 001631 000000 005163 5a 001633 000000 005164 5a 001635 000000 005165 5a 001637 000000 005166 5a 001641 000000 005167 5a 001643 000000 005170 5a 001645 000000 005171 5a 001647 000000 005172 5a 001651 000000 005173 5a 001653 000000 005174 5a 001655 000000 005175 5a 001657 000000 005176 5a 001661 000000 005177 5a 001663 000000 005200 5a 001665 000000 005201 5a 001667 000000 005202 5a 002101 000024 005203 5a 001671 000000 005204 5a 001673 000000 005205 5a 001675 000000 005206 5a 001677 000000 005207 5a 002027 000000 005210 5a 001701 000000 005211 5a 001703 000000 005212 5a 001705 000000 005213 5a 001707 000000 005214 5a 001711 000000 005215 5a 001713 000000 005216 5a 002101 000022 005217 5a 001715 000000 005220 5a 001717 000000 005221 5a 001721 000000 005222 5a 001723 000000 005223 5a 002067 000564 005224 5a 001725 000000 005225 5a 001727 000000 005226 5a 001731 000000 005227 5a 001733 000000 005230 5a 001735 000000 005231 5a 001737 000000 005232 5a 001741 000000 005233 5a 002071 000035 005234 5a 002071 000034 005235 5a 002071 000030 005236 5a 002071 000032 005237 5a 001743 000000 005240 5a 001745 000001 005241 5a 001745 000000 005242 5a 001747 000000 005243 5a 001751 000000 005244 5a 001753 000000 005245 5a 001755 000000 005246 5a 001757 000000 005247 5a 001761 000000 005250 5a 001763 000000 005251 5a 001765 000000 005252 5a 001767 000000 005253 5a 001771 000000 005254 5a 001773 000000 005255 5a 001775 000000 005256 5a 001777 000000 005257 5a 002001 000000 005260 5a 002003 000000 005261 5a 002005 000000 005262 5a 002007 000000 005263 5a 002011 000000 005264 5a 002013 000000 005265 5a 002015 000000 005266 5a 002017 000000 005267 5a 002021 000000 005270 5a 002023 000000 005271 5a 002025 000000 005272 5a 002027 000062 005273 5a 002031 000000 005274 5a 002033 000000 005275 5a 002035 000000 005276 5a 002037 000000 005277 5a 002041 000000 005300 5a 002043 000000 005301 5a 002045 000000 005302 5a 002047 000000 005303 5a 002051 000000 005304 5a 002053 000000 005305 5a 002055 000000 005306 5a 002057 000000 005307 5a 002061 000000 005310 5a 002063 000000 005311 5a 002065 000000 005312 5a 002067 000000 005313 5a 002071 000000 005314 5a 002073 000000 005315 5a 002075 000000 005316 5a 002077 000000 005317 5a 002101 000000 LINKAGE INFORMATION 000000 aa 000000 000000 000001 0a 003034 000000 000002 aa 000000 000000 000003 aa 000000 000000 000004 aa 000000 000000 000005 aa 000000 000000 000006 22 000010 000356 000007 a2 000000 000000 000010 9a 777770 0000 46 prds| 000011 5a 002263 0000 00 000012 9a 777766 0000 46 abs_seg1| 000013 5a 002262 0000 00 000014 9a 777764 0000 46 pc_signal|pc_signal 000015 5a 002261 0000 00 000016 9a 777762 0000 46 disk_emergency|disk_emergency 000017 5a 002260 0000 00 000020 9a 777760 0000 46 pds|page_fault_data 000021 5a 002257 0000 00 000022 9a 777756 0000 46 sst| 000023 5a 002256 0000 00 000024 9a 777754 0000 46 pds|processid 000025 5a 002255 0000 00 000026 9a 777752 0000 46 sys_info|clock_ 000027 5a 002254 0000 20 000030 9a 777750 0000 46 page_error|ptl_mylock 000031 5a 002253 0000 00 000032 9a 777746 0000 46 pds|arg_1 000033 5a 002252 0000 00 000034 9a 777744 0000 46 pds|time_1 000035 5a 002251 0000 00 000036 9a 777742 0000 46 tc_data|cpu_pf_time 000037 5a 002250 0000 00 000040 9a 777740 0000 46 pxss|ptl_wait 000041 5a 002247 0000 00 000042 9a 777736 0000 46 pmut|unwire_unmask 000043 5a 002246 0000 00 000044 9a 777734 0000 46 core_queue_man|unlock_ptl 000045 5a 002245 0000 00 000046 9a 777732 0000 46 page_error|non_fatal_error 000047 5a 002244 0000 00 000050 9a 777730 0000 46 page_error|page_fault_error 000051 5a 002243 0000 00 000052 9a 777726 0000 46 pds|vtime_count 000053 5a 002242 0000 00 000054 9a 777724 0000 46 pds|cpu_time 000055 5a 002241 0000 00 000056 9a 777722 0000 46 pds|time_v_temp 000057 5a 002240 0000 00 000060 9a 777720 0000 46 pds|virtual_delta 000061 5a 002237 0000 00 000062 9a 777716 0000 46 tc_data| 000063 5a 002236 0000 00 000064 9a 777714 0000 46 dseg| 000065 5a 002235 0000 10 000066 9a 777712 0000 46 pds|mc_trace_sw 000067 5a 002234 0000 00 000070 9a 777710 0000 46 pds|mc_trace_seg 000071 5a 002233 0000 00 000072 9a 777706 0000 46 prds|processor_tag 000073 5a 002232 0000 00 000074 9a 777704 0000 46 pds|mc_trace_buf 000075 5a 002231 0000 00 000076 9a 777702 0000 46 prds|cache_luf_reg 000077 5a 002230 0000 00 000100 9a 777700 0000 46 prds|mode_reg 000101 5a 002227 0000 00 000102 9a 777676 0000 46 prds|mode_reg_enabled 000103 5a 002226 0000 00 000104 9a 777674 0000 46 wired_hardcore_data|cpu_a_cache_err_ctr_array 000105 5a 002225 0000 00 000106 9a 777672 0000 46 wired_hardcore_data|cpu_b_cache_err_ctr_array 000107 5a 002224 0000 00 000110 9a 777670 0000 46 wired_hardcore_data|cpu_c_cache_err_ctr_array 000111 5a 002223 0000 00 000112 9a 777666 0000 46 wired_hardcore_data|cpu_d_cache_err_ctr_array 000113 5a 002222 0000 00 000114 9a 777664 0000 46 wired_hardcore_data|cpu_e_cache_err_ctr_array 000115 5a 002221 0000 00 000116 9a 777662 0000 46 wired_hardcore_data|cpu_f_cache_err_ctr_array 000117 5a 002220 0000 00 000120 9a 777660 0000 46 wired_hardcore_data|cpu_g_cache_err_ctr_array 000121 5a 002217 0000 00 000122 9a 777656 0000 46 wired_hardcore_data|cpu_h_cache_err_ctr_array 000123 5a 002216 0000 00 000124 9a 777654 0000 46 wired_hardcore_data|cpu_a_flt_ctr_array 000125 5a 002215 0000 00 000126 9a 777652 0000 46 wired_hardcore_data|cpu_b_flt_ctr_array 000127 5a 002214 0000 00 000130 9a 777650 0000 46 wired_hardcore_data|cpu_c_flt_ctr_array 000131 5a 002213 0000 00 000132 9a 777646 0000 46 wired_hardcore_data|cpu_d_flt_ctr_array 000133 5a 002212 0000 00 000134 9a 777644 0000 46 wired_hardcore_data|cpu_e_flt_ctr_array 000135 5a 002211 0000 00 000136 9a 777642 0000 46 wired_hardcore_data|cpu_f_flt_ctr_array 000137 5a 002210 0000 00 000140 9a 777640 0000 46 wired_hardcore_data|cpu_g_flt_ctr_array 000141 5a 002207 0000 00 000142 9a 777636 0000 46 wired_hardcore_data|cpu_h_flt_ctr_array 000143 5a 002206 0000 00 000144 9a 777634 0000 46 pds|condition_name 000145 5a 002205 0000 00 000146 9a 777632 0000 46 pds|condition_name 000147 5a 002204 0000 00 000150 9a 777630 0000 46 tc_data|post_purge_switch 000151 5a 002203 0000 00 000152 9a 777626 0000 46 pds|page_fault_data 000153 5a 002202 0000 00 000154 9a 777624 0000 46 pds|page_fault_data 000155 5a 002201 0000 00 000156 9a 777622 0000 46 pds|page_fault_data 000157 5a 002200 0000 00 000160 9a 777620 0000 46 pds|page_fault_data 000161 5a 002177 0000 00 000162 9a 777616 0000 46 pds|trace 000163 5a 002176 0000 00 000164 9a 777614 0000 46 pds|apt_ptr 000165 5a 002175 0000 20 000166 9a 777612 0000 46 sys_info|pgt_mask 000167 5a 002174 0000 00 000170 9a 777610 0000 46 pds|alarm_ring 000171 5a 002173 0000 00 000172 9a 777606 0000 46 pds|quota_inhib 000173 5a 002172 0000 00 000174 9a 777604 0000 46 page_synch|cleanup 000175 5a 002171 0000 00 000176 9a 777602 0000 46 page_synch|write 000177 5a 002170 0000 00 000200 9a 777600 0000 46 sst| 000201 5a 002167 0000 00 000202 9a 777576 0000 46 scs|mask_ptr 000203 5a 002166 0000 11 000204 9a 777574 0000 46 scs|read_mask 000205 5a 002165 0000 11 000206 9a 777572 0000 46 scs|sys_level 000207 5a 002164 0000 00 000210 9a 777570 0000 46 scs|set_mask 000211 5a 002163 0000 11 000212 9a 777566 0000 46 prds| 000213 5a 002162 0000 20 000214 9a 777564 0000 46 dseg| 000215 5a 002235 0000 00 000216 9a 777562 0000 46 unpaged_page_tables| 000217 5a 002161 0000 00 000220 9a 777560 0000 46 pc_trace|page_fault 000221 5a 002160 0000 00 000222 9a 777556 0000 46 pc_trace|page_fault_end 000223 5a 002157 0000 00 000224 9a 777554 0000 46 pds|page_waits 000225 5a 002156 0000 00 000226 9a 777552 0000 46 pds|number_of_pages_in_use 000227 5a 002155 0000 00 000230 9a 777550 0000 46 tc_data|n_eligible 000231 5a 002154 0000 00 000232 9a 777546 0000 46 tc_data| 000233 5a 002153 0000 00 000234 9a 777544 0000 46 pxss|page_wait 000235 5a 002152 0000 00 000236 9a 777542 0000 46 pds|first_covert_event_time 000237 5a 002151 0000 00 000240 9a 777540 0000 46 pxss|page_pause 000241 5a 002150 0000 00 000242 9a 777536 0000 46 scs|open_level 000243 5a 002147 0000 00 000244 9a 777534 0000 46 prds| 000245 5a 002162 0000 00 000246 9a 777532 0000 46 prds| 000247 5a 002146 0000 00 000250 9a 777530 0000 46 scs|sys_trouble_pending 000251 5a 002145 0000 00 000252 9a 777526 0000 46 scs|trouble_processid 000253 5a 002144 0000 00 000254 9a 777524 0000 46 scs|cow_ptrs 000255 5a 002143 0000 31 000256 9a 777522 0000 46 pds|signal_data 000257 5a 002142 0000 00 000260 9a 777520 0000 46 signaller|signaller 000261 5a 002141 0000 00 000262 9a 777516 0000 46 cam_cache|cam_cache 000263 5a 002140 0000 00 000264 9a 777514 0000 46 pds|throttle_segment_state_changes 000265 5a 002137 0000 00 000266 9a 777512 0000 46 pds|covert_event_count 000267 5a 002136 0000 00 000270 9a 777510 0000 46 page_error|excessive_seg_state_chg 000271 5a 002135 0000 00 000272 9a 777506 0000 46 device_control|check_ckdv 000273 5a 002134 0000 00 000274 9a 777504 0000 46 device_control|dev_read 000275 5a 002133 0000 00 000276 9a 777502 0000 46 dseg| 000277 5a 002235 0000 01 000300 9a 777500 0000 46 cam_cache|cam 000301 5a 002132 0000 00 000302 9a 777476 0000 46 device_control|disk_offlinep 000303 5a 002131 0000 00 000304 9a 777474 0000 46 free_store|withdraw 000305 5a 002130 0000 00 000306 9a 777472 0000 46 page_error|out_of_core 000307 5a 002127 0000 00 000310 9a 777470 0000 46 pvt|esd_state 000311 5a 002126 0000 00 000312 9a 777466 0000 46 pc_trace|write_page 000313 5a 002125 0000 00 000314 9a 777464 0000 46 tc_data|system_shutdown 000315 5a 002124 0000 00 000316 9a 777462 0000 46 pc_trace|zero_page 000317 5a 002123 0000 00 000320 9a 777460 0000 46 cam_cache|cam_ptws 000321 5a 002122 0000 00 000322 9a 777456 0000 46 device_control|dev_write 000323 5a 002121 0000 00 000324 9a 777454 0000 46 core_queue_man|disk_post 000325 5a 002120 0000 00 000326 9a 777452 0000 46 pc_trace|done 000327 5a 002117 0000 00 000330 9a 777450 0000 46 page_error|error_in_done 000331 5a 002116 0000 00 000332 9a 777446 0000 46 page_error|device_error 000333 5a 002115 0000 00 000334 9a 777444 0000 46 tc_data|pre_empt_flag 000335 5a 002114 0000 00 000336 9a 777442 0000 46 pxss|page_notify 000337 5a 002113 0000 00 000340 9a 777440 0000 46 volmap_page|post_io 000341 5a 002112 0000 00 000342 9a 777436 0000 46 pds|apt_ptr 000343 5a 002175 0000 00 000344 9a 777434 0000 46 prds|idle_ptr 000345 5a 002111 0000 00 000346 9a 777432 0000 46 pds|connect_pending 000347 5a 002110 0000 00 000350 9a 777430 0000 46 page_error|reverting_page 000351 5a 002107 0000 00 000352 9a 777426 0000 46 page_error|zeroing_page 000353 5a 002106 0000 00 000354 9a 777424 0000 46 page_error|deleting_mm_frame 000355 5a 002105 0000 00 SYMBOL INFORMATION SYMBOL TABLE HEADER 000000 aa 000000 000001 000001 aa 163171 155142 000002 aa 164162 145145 000003 aa 000000 000010 000004 aa 000000 117244 000005 aa 361023 525721 000006 aa 000000 117547 000007 aa 242460 507656 000010 aa 141154 155040 000011 aa 040040 040040 000012 aa 000024 000040 000013 aa 000034 000040 000014 aa 000044 000100 000015 aa 000002 000002 000016 aa 000064 000000 000017 aa 000000 001416 000020 aa 000000 000632 000021 aa 001145 001073 000022 aa 001365 000632 000023 aa 000064 000000 000024 aa 101114 115040 000025 aa 126145 162163 000026 aa 151157 156040 000027 aa 070056 061064 000030 aa 040115 141162 000031 aa 143150 040061 000032 aa 071070 071040 000033 aa 040040 040040 000034 aa 110151 162156 000035 aa 145151 163145 000036 aa 156056 123171 000037 aa 163115 141151 000040 aa 156164 056141 000041 aa 040040 040040 000042 aa 040040 040040 000043 aa 040040 040040 000044 aa 055164 141162 000045 aa 147145 164040 000046 aa 154066 070040 000047 aa 040040 040040 000050 aa 040040 040040 000051 aa 040040 040040 000052 aa 040040 040040 000053 aa 040040 040040 000054 aa 040040 040040 000055 aa 040040 040040 000056 aa 040154 151163 000057 aa 164040 163171 000060 aa 155142 157154 000061 aa 163040 040040 000062 aa 040040 040040 000063 aa 040040 040040 000064 aa 000000 000001 000065 aa 000000 000035 000066 aa 000252 000041 000067 aa 175453 017656 000070 aa 000000 117547 000071 aa 176350 400000 000072 aa 000263 000037 000073 aa 043243 130235 000074 aa 000000 102532 000075 aa 522427 000000 000076 aa 000273 000041 000077 aa 052721 247134 000100 aa 000000 105272 000101 aa 317215 400000 000102 aa 000304 000042 000103 aa 147777 464111 000104 aa 000000 115000 000105 aa 507463 000000 000106 aa 000315 000041 000107 aa 106702 110171 000110 aa 000000 110673 000111 aa 044363 400000 000112 aa 000326 000047 000113 aa 123154 505732 000114 aa 000000 112316 000115 aa 133413 400000 000116 aa 000340 000036 000117 aa 116261 736456 000120 aa 000000 111626 000121 aa 317120 400000 000122 aa 000350 000045 000123 aa 133234 136230 000124 aa 000000 113324 000125 aa 322064 400000 000126 aa 000362 000046 000127 aa 113434 242320 000130 aa 000000 111347 000131 aa 432107 400000 000132 aa 000374 000037 000133 aa 112456 132235 000134 aa 000000 111250 000135 aa 530556 400000 000136 aa 000404 000032 000137 aa 147777 464062 000140 aa 000000 115000 000141 aa 507456 000000 000142 aa 000413 000031 000143 aa 133234 136144 000144 aa 000000 113324 000145 aa 322064 400000 000146 aa 000422 000037 000147 aa 133234 136201 000150 aa 000000 113324 000151 aa 322062 600000 000152 aa 000432 000032 000153 aa 110440 510400 000154 aa 000000 111044 000155 aa 621362 000000 000156 aa 000441 000031 000157 aa 102456 350277 000160 aa 000000 110246 000161 aa 520732 400000 000162 aa 000450 000035 000163 aa 106701 740565 000164 aa 000000 110670 000165 aa 206245 200000 000166 aa 000460 000031 000167 aa 102456 350276 000170 aa 000000 110246 000171 aa 520730 400000 000172 aa 000467 000035 000173 aa 106701 740574 000174 aa 000000 110670 000175 aa 206425 200000 000176 aa 000477 000036 000177 aa 043243 127123 000200 aa 000000 103437 000201 aa 275656 200000 000202 aa 000507 000032 000203 aa 133234 136212 000204 aa 000000 113324 000205 aa 322064 200000 000206 aa 000516 000031 000207 aa 113434 242275 000210 aa 000000 111347 000211 aa 432071 000000 000212 aa 000525 000030 000213 aa 123154 505731 000214 aa 000000 112316 000215 aa 133412 600000 000216 aa 000533 000044 000217 aa 127236 043542 000220 aa 000000 112724 000221 aa 701746 200000 000222 aa 000544 000045 000223 aa 043243 130565 000224 aa 000000 103437 000225 aa 277772 200000 000226 aa 000556 000042 000227 aa 161372 463377 000230 aa 000000 116147 000231 aa 533432 600000 000232 aa 000567 000034 000233 aa 056613 671157 000234 aa 000000 105661 000235 aa 560762 200000 000236 aa 000576 000042 000237 aa 101301 045475 000240 aa 000000 110133 000241 aa 352304 600000 000242 aa 000607 000051 000243 aa 127236 043612 000244 aa 000000 112724 000245 aa 701752 000000 000246 aa 000622 000037 000247 aa 127236 043564 000250 aa 000000 112724 000251 aa 701750 400000 000252 aa 076163 160145 >spec>install>1111>page_fault.alm 000253 aa 143076 151156 000254 aa 163164 141154 000255 aa 154076 061061 000256 aa 061061 076160 000257 aa 141147 145137 000260 aa 146141 165154 000261 aa 164056 141154 000262 aa 155040 040040 000263 aa 076154 144144 >ldd>include>page_regs.incl.alm 000264 aa 076151 156143 000265 aa 154165 144145 000266 aa 076160 141147 000267 aa 145137 162145 000270 aa 147163 056151 000271 aa 156143 154056 000272 aa 141154 155040 000273 aa 076154 144144 >ldd>include>stack_frame.incl.alm 000274 aa 076151 156143 000275 aa 154165 144145 000276 aa 076163 164141 000277 aa 143153 137146 000300 aa 162141 155145 000301 aa 056151 156143 000302 aa 154056 141154 000303 aa 155040 040040 000304 aa 076154 144144 >ldd>include>stack_header.incl.alm 000305 aa 076151 156143 000306 aa 154165 144145 000307 aa 076163 164141 000310 aa 143153 137150 000311 aa 145141 144145 000312 aa 162056 151156 000313 aa 143154 056141 000314 aa 154155 040040 000315 aa 076154 144144 >ldd>include>trace_types.incl.alm 000316 aa 076151 156143 000317 aa 154165 144145 000320 aa 076164 162141 000321 aa 143145 137164 000322 aa 171160 145163 000323 aa 056151 156143 000324 aa 154056 141154 000325 aa 155040 040040 000326 aa 076154 144144 >ldd>include>sys_trouble_codes.incl.alm 000327 aa 076151 156143 000330 aa 154165 144145 000331 aa 076163 171163 000332 aa 137164 162157 000333 aa 165142 154145 000334 aa 137143 157144 000335 aa 145163 056151 000336 aa 156143 154056 000337 aa 141154 155040 000340 aa 076154 144144 >ldd>include>mode_reg.incl.alm 000341 aa 076151 156143 000342 aa 154165 144145 000343 aa 076155 157144 000344 aa 145137 162145 000345 aa 147056 151156 000346 aa 143154 056141 000347 aa 154155 040040 000350 aa 076154 144144 >ldd>include>pxss_page_stack.incl.alm 000351 aa 076151 156143 000352 aa 154165 144145 000353 aa 076160 170163 000354 aa 163137 160141 000355 aa 147145 137163 000356 aa 164141 143153 000357 aa 056151 156143 000360 aa 154056 141154 000361 aa 155040 040040 000362 aa 076154 144144 >ldd>include>page_error_types.incl.alm 000363 aa 076151 156143 000364 aa 154165 144145 000365 aa 076160 141147 000366 aa 145137 145162 000367 aa 162157 162137 000370 aa 164171 160145 000371 aa 163056 151156 000372 aa 143154 056141 000373 aa 154155 040040 000374 aa 076154 144144 >ldd>include>page_info.incl.alm 000375 aa 076151 156143 000376 aa 154165 144145 000377 aa 076160 141147 000400 aa 145137 151156 000401 aa 146157 056151 000402 aa 156143 154056 000403 aa 141154 155040 000404 aa 076154 144144 >ldd>include>apte.incl.alm 000405 aa 076151 156143 000406 aa 154165 144145 000407 aa 076141 160164 000410 aa 145056 151156 000411 aa 143154 056141 000412 aa 154155 040040 000413 aa 076154 144144 >ldd>include>sst.incl.alm 000414 aa 076151 156143 000415 aa 154165 144145 000416 aa 076163 163164 000417 aa 056151 156143 000420 aa 154056 141154 000421 aa 155040 040040 000422 aa 076154 144144 >ldd>include>tc_meters.incl.alm 000423 aa 076151 156143 000424 aa 154165 144145 000425 aa 076164 143137 000426 aa 155145 164145 000427 aa 162163 056151 000430 aa 156143 154056 000431 aa 141154 155040 000432 aa 076154 144144 >ldd>include>wcte.incl.alm 000433 aa 076151 156143 000434 aa 154165 144145 000435 aa 076167 143164 000436 aa 145056 151156 000437 aa 143154 056141 000440 aa 154155 040040 000441 aa 076154 144144 >ldd>include>sdw.incl.alm 000442 aa 076151 156143 000443 aa 154165 144145 000444 aa 076163 144167 000445 aa 056151 156143 000446 aa 154056 141154 000447 aa 155040 040040 000450 aa 076154 144144 >ldd>include>sdw.l68.incl.alm 000451 aa 076151 156143 000452 aa 154165 144145 000453 aa 076163 144167 000454 aa 056154 066070 000455 aa 056151 156143 000456 aa 154056 141154 000457 aa 155040 040040 000460 aa 076154 144144 >ldd>include>ptw.incl.alm 000461 aa 076151 156143 000462 aa 154165 144145 000463 aa 076160 164167 000464 aa 056151 156143 000465 aa 154056 141154 000466 aa 155040 040040 000467 aa 076154 144144 >ldd>include>ptw.l68.incl.alm 000470 aa 076151 156143 000471 aa 154165 144145 000472 aa 076160 164167 000473 aa 056154 066070 000474 aa 056151 156143 000475 aa 154056 141154 000476 aa 155040 040040 000477 aa 076154 144144 >ldd>include>add_type.incl.alm 000500 aa 076151 156143 000501 aa 154165 144145 000502 aa 076141 144144 000503 aa 137164 171160 000504 aa 145056 151156 000505 aa 143154 056141 000506 aa 154155 040040 000507 aa 076154 144144 >ldd>include>aste.incl.alm 000510 aa 076151 156143 000511 aa 154165 144145 000512 aa 076141 163164 000513 aa 145056 151156 000514 aa 143154 056141 000515 aa 154155 040040 000516 aa 076154 144144 >ldd>include>cmp.incl.alm 000517 aa 076151 156143 000520 aa 154165 144145 000521 aa 076143 155160 000522 aa 056151 156143 000523 aa 154056 141154 000524 aa 155040 040040 000525 aa 076154 144144 >ldd>include>mc.incl.alm 000526 aa 076151 156143 000527 aa 154165 144145 000530 aa 076155 143056 000531 aa 151156 143154 000532 aa 056141 154155 000533 aa 076154 144144 >ldd>include>null_addresses.incl.alm 000534 aa 076151 156143 000535 aa 154165 144145 000536 aa 076156 165154 000537 aa 154137 141144 000540 aa 144162 145163 000541 aa 163145 163056 000542 aa 151156 143154 000543 aa 056141 154155 000544 aa 076154 144144 >ldd>include>static_handlers.incl.alm 000545 aa 076151 156143 000546 aa 154165 144145 000547 aa 076163 164141 000550 aa 164151 143137 000551 aa 150141 156144 000552 aa 154145 162163 000553 aa 056151 156143 000554 aa 154056 141154 000555 aa 155040 040040 000556 aa 076154 144144 >ldd>include>device_error.incl.alm 000557 aa 076151 156143 000560 aa 154165 144145 000561 aa 076144 145166 000562 aa 151143 145137 000563 aa 145162 162157 000564 aa 162056 151156 000565 aa 143154 056141 000566 aa 154155 040040 000567 aa 076154 144144 >ldd>include>mctseg.incl.alm 000570 aa 076151 156143 000571 aa 154165 144145 000572 aa 076155 143164 000573 aa 163145 147056 000574 aa 151156 143154 000575 aa 056141 154155 000576 aa 076154 144144 >ldd>include>fault_vector.incl.alm 000577 aa 076151 156143 000600 aa 154165 144145 000601 aa 076146 141165 000602 aa 154164 137166 000603 aa 145143 164157 000604 aa 162056 151156 000605 aa 143154 056141 000606 aa 154155 040040 000607 aa 076154 144144 >ldd>include>unpaged_page_tables.incl.alm 000610 aa 076151 156143 000611 aa 154165 144145 000612 aa 076165 156160 000613 aa 141147 145144 000614 aa 137160 141147 000615 aa 145137 164141 000616 aa 142154 145163 000617 aa 056151 156143 000620 aa 154056 141154 000621 aa 155040 040040 000622 aa 076154 144144 >ldd>include>sys_trace.incl.alm 000623 aa 076151 156143 000624 aa 154165 144145 000625 aa 076163 171163 000626 aa 137164 162141 000627 aa 143145 056151 000630 aa 156143 154056 000631 aa 141154 155040 MULTICS ASSEMBLY CROSS REFERENCE LISTING Value Symbol Source file Line number 6 .2ret page_fault: 340, 348, 363, 376, 381, 558, 561, 568, 577, 904, 924, 925, 935, 940, 954, 958, 975, 982, 987, 988, 1014, 1018, 1020, 1021, 1023, 1024, 1040, 1043, 1046, 1047, 1077, 1195, 1571, 1644, 1666, 1695, 1730, 1744, 1948, 2082, 2126, 2163, 2209, 2325, 2399, 2491, 2531, 2550, 2612, 2646, 2691, 2893, page_regs: 15. 3 .aste page_fault: 739, 805, 816, 908, 934, 951, 953, 972, 974, 1005, 1039, 1041, 1074, 1096, 1102, 1128, 1130, 1267, 1279, 1305, 1310, 1316, 1325, 1327, 1372, 1505, 1578, 1629, 1670, 1752, 1756, 1773, 1783, 1784, 1785, 1816, 1830, 1833, 1853, 1855, 1857, 1875, 1909, 1914, 1921, 1923, 2038, 2116, 2122, 2208, 2326, 2338, 2340, 2342, 2343, 2348, 2349, 2355, 2366, 2374, 2376, 2435, 2509, 2512, 2519, 2537, 2566, 2669, 2810, 2837, 2839, page_regs: 12. 4 .cme page_fault: 408, 411, 418, 419, 421, 439, 441, 448, 449, 453, 454, 468, 472, 477, 481, 490, 502, 514, 523, 1068, 1363, 1368, 1370, 1395, 1489, 1643, 1688, 1769, 1771, 1773, 1777, 1835, 1900, 2008, 2013, 2171, 2176, 2180, 2188, 2208, 2216, 2221, 2257, 2270, 2273, 2280, 2283, 2311, 2326, 2335, 2380, 2381, 2403, 2405, 2409, 2413, 2428, 2432, 2435, 2439, 2471, 2475, 2494, 2498, 2563, 2577, 2604, 2649, 2655, 2658, 2660, 2663, 2669, 2717, 2719, 2798, 2802, 2806, 2853, 2896, page_regs: 13. 1 .lst page_fault: 419, 427, 428, 444, 448, 454, 472, 487, 488, page_regs: 9. 0 .nxt page_fault: 418, 423, 427, 428, 433, 437, 444, 449, 453, 468, 479, 483, 487, 488, 513, page_regs: 8. 1 .pdme page_regs: 10. 2 .ptw page_fault: 806, 1099, 1107, 1269, 1371, 1385, 1396, 1580, 1581, 1632, 1672, 1673, 1751, 1754, 1755, 1900, 1910, 2013, 2026, 2117, 2180, 2182, 2413, 2417, 2663, 2665, 2724, page_regs: 11. 7 .ret page_fault: 321, 324, 341, 349, 357, 362, 364, 380, 385, 386, 388, 389, 409, 412, 456, 491, 525, 534, 545, 565, 571, 573, 574, 582, 590, 591, 709, 743, 769, 776, 782, 795, 881, 901, 906, 914, 918, 922, 926, 943, 961, 997, 998, 1007, 1070, 1076, 1078, 1106, 1131, 1159, 1196, 1289, 1292, 1298, 1299, 1369, 1405, 1417, 1446, 1498, 1517, 1548, 1590, 1594, 1645, 1696, 1698, 1732, 1746, 1747, 1753, 1822, 1824, 1878, 1888, 1889, 1893, 1896, 1930, 1981, 1998, 2001, 2002, 2021, 2025, 2065, 2083, 2084, 2114, 2127, 2128, 2142, 2143, 2210, 2217, 2313, 2358, 2365, 2377, 2382, 2436, 2492, 2493, 2532, 2545, 2551, 2553, 2559, 2567, 2601, 2613, 2624, 2651, 2680, 2687, 2688, 2740, 2762, 2769, 2770, 2813, 2841, 2844, 2845, 2852, 2857, 2865, 2870, 2876, 2877, 2883, 2894, 2898, 2915, page_regs: 16. 123 .rt page_fault: 357, 359. 0 .tem page_fault: 554, 555, 556, 578, 586, 806, 807, 808, 819, 837, 845, 846, 857, 858, 859, 861, 863, 879, 908, 909, 910, 924, 925, 928, 934, 936, 942, 944, 953, 955, 960, 962, 974, 976, 984, 987, 992, 1020, 1021, 1023, 1024, 1039, 1096, 1097, 1098, 1099, 1100, 1101, 1107, 1108, 1112, 1114, 1120, 1121, 1125, 1230, 1242, 1252, 1310, 1311, 1312, 1362, 1363, 1910, 1911, 1913, 2050, 2051, 2117, 2118, 2119, 2188, 2221, 2222, 2270, 2271, 2273, 2280, 2281, 2283, 2379, 2380, 2381, 2428, 2432, 2433, 2469, 2471, 2509, 2519, 2525, 2526, 2527, 2655, 2656, 2666, 2667, 2733, 2734, 2737, page_regs: 7. 5 .x5 page_regs: 14. 477 abort_ips_mask tc_meters: 226. abs_seg1 page_fault: 178, 553, 585. 12 abs_seg1_link page_fault: 178, 554, 555. 7 abs_wire_entry page_info: 36. 24 accessviolation_sct_index static_handlers: 23. 740000 address_mask page_fault: 1769, 1904, 2019, 2140, 2336, 2863, page_info: 9. 400000 add_type.core page_fault: 1903, 2018, 2110, add_type: 8. 200000 add_type.disk page_fault: 1676, 2113, add_type: 9. 740000 add_type.non_null page_fault: 898, 1115, 1836, 2360, 2578, 2854, add_type: 13. 100000 add_type.pd add_type: 10. 40000 add_type.reserved add_type: 11. 316 aht_size tc_meters: 127. alarm_ring page_fault: 876, 877. 357 alarm_timer_list tc_meters: 159. 1150 all_page_faults page_fault: 1214, 1222. 776000 all_procs_required tc_meters: 206. 1076 already_metering page_fault: 1155, 1158. 76 alrm_sct_index static_handlers: 61. 61 am_fault_sct_index static_handlers: 48. 377777 append_null null_addresses: 23. 42 apte.access_authorization apte: 98. 24 apte.alarm_event apte: 79. 26 apte.alarm_time apte: 82. 26 apte.alarm_time_thread apte: 81. 40 apte.always_loaded apte: 29. 66 apte.apad apte: 120. 12 apte.asteps apte: 54. 10 apte.batch apte: 74. 21 apte.batch_word apte: 73. 60 apte.begin_interaction_vcpu apte: 112. 10 apte.being_loaded apte: 31. 0 apte.bp apte: 13. 23 apte.chans_offset apte: 71. 37 apte.cpu_monitor apte: 94. 52 apte.current_response_state apte: 108. 44 apte.dbr apte: 101. 20 apte.dbr_loaded apte: 30. 34 apte.deadline apte: 90. 200 apte.default_procs_required apte: 27. 12 apte.dseg apte: 56. 4000 apte.eligible apte: 23. 10 apte.event_thread apte: 50. 1 apte.firstsw apte: 34. 1 apte.flags page_fault: 2750, apte: 15. 21 apte.flags2 apte: 69. 0 apte.fp apte: 12. 20000 apte.hproc apte: 21. 2000 apte.idle apte: 24. 1000 apte.interaction apte: 25. 10 apte.ipc_pointers apte: 49. 65 apte.ipc_r_factor apte: 119. 64 apte.ipc_r_offset apte: 118. 11 apte.ips_message page_fault: 871, 872, 873, apte: 52. 51 apte.ittes_got apte: 106. 50 apte.ittes_sent apte: 105. 54 apte.last_response_state_time apte: 110. 13 apte.le_shift apte: 126. 10000 apte.loaded apte: 22. 36 apte.lock apte: 92. 15 apte.lock_id apte: 63. 400000 apte.mbz apte: 17. 400000 apte.no_ipc_check apte: 99. 53 apte.number_processing apte: 109. 2 apte.page_faults apte: 37. 2 apte.page_wait_flag apte: 33. 40 apte.paging_measure page_fault: 1355, 1356, apte: 96. 12 apte.pds apte: 55. 13 apte.prds apte: 58. 40000 apte.pre_empted apte: 20. 400 apte.pre_empt_pending page_fault: 2748, apte: 26. 400000 apte.prior_sched apte: 70. 3 apte.processid apte: 39. 63 apte.procs_required apte: 115. 776000 apte.procs_required_mask apte: 116. 7 apte.pr_tag_mask apte: 75. 100 apte.realtime_burst apte: 28. 62 apte.saved_temax apte: 114. 13 apte.savex7 apte: 59. 1 apte.sentinel apte: 16. 4 apte.shared_stack_0 apte: 32. 374000 apte.special_chans apte: 72. 1 apte.state apte: 35. 22 apte.state_change_time apte: 77. 100000 apte.stop_pending apte: 19. 4 apte.te apte: 41. 33 apte.temax apte: 88. 30 apte.term_channel apte: 84. 14 apte.term_processid apte: 61. 0 apte.thread apte: 11. 6 apte.ti apte: 45. 7 apte.timax apte: 47. 175 apte.timer_factor apte: 127. 16 apte.time_used_clock apte: 64. 56 apte.total_processing_time apte: 111. 5 apte.ts apte: 43. 46 apte.virtual_cpu_time apte: 103. 20 apte.wait_event page_fault: 1401, 1599, 1740, apte: 66. 200000 apte.wakeup_waiting apte: 18. 21 apte.wct_index page_fault: 1359, apte: 68. 32 apte.ws_size apte: 86. 327 apt_entry_size tc_meters: 137. 312 apt_lock tc_meters: 124. 253 apt_offset tc_meters: 94. 150 apt_ptr page_fault: 868, 1338, 1400, 1598, 1739, 2745, 2749, pxss_page_stack: 13. 313 apt_size tc_meters: 125. 106 arg page_fault: 1524, 1526, 1528, 1530, 1531, 2909, 2911, 2913, 2914, pxss_page_stack: 11. arg_1 page_fault: 304, 312, 1430, 2726. 3 ast page_fault: 739, 909, 910, 924, 925, 928, 936, 942, 944, 951, 955, 960, 962, 972, 976, 984, 987, 992, 1005, 1020, 1021, 1023, 1024, 1039, 1041, 1074, 1102, 1128, 1130, 1279, 1305, 1310, 1311, 1316, 1325, 1327, 1505, 1783, 1784, 1785, 1816, 1830, 1833, 1853, 1855, 1857, 1875, 1914, 1921, 1923, 2038, 2122, 2338, 2340, 2342, 2343, 2348, 2349, 2355, 2366, 2374, 2376, 2509, 2512, 2525, 2526, 2527, 2537, 2566, 2810, 2837, 2839, page_info: 20. 4000 aste.any_access_on aste: 49. 5 aste.any_access_on_word aste: 48. 0 aste.bp aste: 18. 777 aste.csl_mask aste: 92. 777000 aste.csl_mask_inner page_fault: 1103, 1129, 1915, 1922, page_info: 26. 33 aste.csl_shift page_fault: 1104, 1127, 1916, 1920, aste: 91. 12 aste.csl_word page_fault: 1102, 1128, 1130, 1914, 1921, 1923, aste: 90. 200000 aste.damaged page_fault: 2836, aste: 118. 13 aste.damaged_word page_fault: 2837, aste: 117. 4 aste.ddnp aste: 106. 12 aste.ddnp_word aste: 105. 200 aste.deact_error aste: 57. 5 aste.deact_error_word aste: 56. 40000 aste.dirsw page_fault: 1009, 1317, 1819, 1882, aste: 75. 5 aste.dirsw_word page_fault: 1316, 1816, aste: 74. 2 aste.dius aste: 65. 5 aste.dius_word aste: 64. 400000 aste.dmpr_pad aste: 69. 5 aste.dmpr_pad_word aste: 68. 20 aste.dnzp page_fault: 2538, aste: 102. 12 aste.dnzp_word page_fault: 2537, aste: 101. 7 aste.dtm page_fault: 2526, aste: 84. 6 aste.dtu page_fault: 2355, aste: 83. 200000 aste.ehs aste: 71. 5 aste.ehs_word aste: 70. 400 aste.explicit_deact_ok aste: 55. 5 aste.explicit_deact_ok_word aste: 54. 400 aste.fmchanged page_fault: 950, 971, 2565, 2809, 2838, aste: 94. 400000 aste.fmchanged1 aste: 116. 13 aste.fmchanged1_word aste: 115. 12 aste.fmchanged_word page_fault: 951, 972, 2566, 2810, 2839, aste: 93. 200 aste.fms page_fault: 2522, aste: 96. 12 aste.fms_word page_fault: 2525, aste: 95. 40 aste.fm_damaged aste: 61. 5 aste.fm_damaged_word aste: 60. 0 aste.fp aste: 17. 40000 aste.gtms page_fault: 2513, aste: 43. 5 aste.gtms_word page_fault: 2512, aste: 42. 40 aste.gtpd aste: 100. 12 aste.gtpd_word aste: 99. 100000 aste.gtus page_fault: 1323, 2350, aste: 41. 5 aste.gtus_word aste: 40. 20000 aste.hc aste: 45. 100 aste.hc_part aste: 59. 5 aste.hc_part_word aste: 58. 10000 aste.hc_sdw page_fault: 1042, aste: 47. 5 aste.hc_sdw_word page_fault: 1041, aste: 46. 5 aste.hc_word aste: 44. 13 aste.ht_fp aste: 114. 1 aste.infl aste: 20. 1 aste.infp aste: 21. 1000 aste.inhibit_cache aste: 53. 5 aste.inhibit_cache_word aste: 52. 200000 aste.init page_fault: 1782, 2347, aste: 39. 5 aste.init_word page_fault: 1783, 1784, 2348, 2349, aste: 38. 77 aste.marker_mask aste: 128. 0 aste.marker_shift aste: 127. 13 aste.marker_word aste: 126. 20000 aste.master_dir aste: 77. 5 aste.master_dir_word aste: 76. 777 aste.msl_mask aste: 30. 33 aste.msl_shift aste: 29. 4 aste.msl_word aste: 28. 20 aste.multi_class page_fault: 977, 1817, 1876, aste: 63. 5 aste.multi_class_word page_fault: 1875, aste: 62. 1 aste.nid aste: 67. 5 aste.nid_word aste: 66. 100 aste.npfs page_fault: 1280, aste: 98. 12 aste.npfs_word page_fault: 1279, aste: 97. 777 aste.np_mask page_fault: 1786, 1831, 2341, 2344, aste: 112. 0 aste.np_shift aste: 111. 12 aste.np_word page_fault: 1785, 1830, 1833, 2338, 2340, 2342, 2343, aste: 110. 100000 aste.nqsw page_fault: 1006, aste: 73. 5 aste.nqsw_word page_fault: 1005, aste: 72. 100000 aste.pack_ovfl page_fault: 2037, aste: 120. 13 aste.pack_ovfl_word page_fault: 2038, aste: 119. 2 aste.par_astep page_fault: 909, 936, 944, 955, 962, 976, 992, 1310, 1311, 2509, 2527, aste: 24. 10 aste.per_process page_fault: 1306, aste: 104. 12 aste.per_process_word page_fault: 1305, aste: 103. 3 aste.ptsi_mask aste: 125. 6 aste.ptsi_shift aste: 124. 13 aste.ptsi_word aste: 123. 777 aste.pvtx_mask page_fault: 741, 2739, aste: 33. 22 aste.pvtx_shift page_fault: 740, 2738, aste: 32. 4 aste.pvtx_word page_fault: 739, 2737, aste: 31. 10 aste.quota page_fault: 925, aste: 86. 777 aste.records_mask aste: 109. 777000 aste.records_mask_inner page_fault: 1856, 2367, 2375, page_info: 27. 11 aste.records_shift aste: 108. 12 aste.records_word page_fault: 1853, 1855, 1857, 2366, 2374, 2376, aste: 107. 2 aste.strp page_fault: 1039, aste: 23. 40000 aste.synchronized page_fault: 1075, aste: 122. 13 aste.synchronized_word page_fault: 1074, aste: 121. 4000 aste.tqsw page_fault: 1012, 1016, 1027, 1028, aste: 81. 5 aste.tqsw_word page_fault: 910, 942, 960, 984, 987, aste: 80. 3 aste.uid aste: 26. 11 aste.used page_fault: 924, 1020, 1021, 1023, 1024, aste: 88. 400000 aste.usedf aste: 37. 5 aste.usedf_word aste: 36. 10000 aste.volmap_seg page_fault: 1045, 2735, aste: 79. 5 aste.volmap_seg_word page_fault: 2734, aste: 78. 4 aste.vtocx page_fault: 2122, aste: 34. 2000 aste.write_access_on aste: 51. 5 aste.write_access_on_word aste: 50. 0 aste_part.one aste: 136. 377 aste_part.three_mask aste: 141. 0 aste_part.three_shift aste: 140. 13 aste_part.three_word aste: 139. 1 aste_part.two aste: 137. 14 aste_part_size aste: 133. 14 aste_size page_fault: 806, 1096, 1267, 1580, 1631, 1672, 1910, 2117, aste: 15. 243 auto_tune_ws tc_meters: 87. 16 avequeue tc_meters: 27. 40 ave_eligible tc_meters: 40. 55 bad_outward_call_sct_index static_handlers: 44. 1433 bad_segno page_fault: 1234, 1508. 204 before pxss_page_stack: 17. 413 best_credit_value tc_meters: 181. 10 blocks tc_meters: 21. 272 boost_priority tc_meters: 105. 70000 boundfault_end trace_types: 9. 60000 boundfault_start trace_types: 8. 713 bump_quota page_fault: 949, 1893. 727 bump_quota_covert_check page_fault: 965, 1888. 460 cache_ctr_tab page_fault: 626, 716. cache_luf_reg page_fault: 702. 2773 call_disk_emergency page_fault: 2770, 2877, 2906. 1170 call_offset stack_header: 80. cam page_fault: 2065. cam_cache page_fault: 1696, 2065, 2210, 2551, 2613, 2844. cam_ptws page_fault: 2613. 30 channel_mask_set page_fault: 266, 1436. 775 check_accessible page_fault: 119, 1038, 1695, 2209, 2550, 2612. 2112 check_allocation page_fault: 1732, 1747, 2108. check_ckdv page_fault: 2001, 2687. 345 check_efr page_fault: 629, 631. 1011 check_for_synch_hold page_fault: 1073, 2532. 300 check_for_zero page_fault: 584, 2545, 2553. 2636 check_idle page_fault: 2723, 2744. 263 check_pattern page_fault: 567, 2688. 646 check_quota page_fault: 896, 1746. 653 check_quota.real_null page_fault: 899, 903. 1005 check_synch_cleanup page_fault: 1067, 2358. 3 cid2 tc_meters: 16. 4 cid3 tc_meters: 17. 5 cid4 tc_meters: 18. 2344 claim_mod_core page_fault: 1369, 2313, 2398. cleanup page_fault: 1071. 2313 cleanup.np_nonzero page_fault: 2345, 2351, 2357. 2335 cleanup.nrsq1 page_fault: 2363, 2378. 2331 cleanup.recused_okay page_fault: 2369, 2371, 2373. 2321 cleanup.rsq page_fault: 2361, 2364. 10 cleanup_entry page_fault: 1663, page_info: 37. 2265 cleanup_page page_fault: 120, 1698, 2217, 2324, 2567, 2762, 2845. 272 clear_core page_fault: 576, 1896. clock_ page_fault: 301, 311, 326, 334, 535, 847, 1151, 1375, 1404, 1407, 1422, 1935, 1971, 1976, 2353, 2520. 276 clock_simulations tc_meters: 108. 2401 cl_bad page_fault: 2411, 2442. 2424 cl_done page_fault: 2406, 2474. 2405 cl_free page_fault: 2414, 2450. 2407 cl_notmod page_fault: 2423, 2454. 2417 cl_pinned page_fault: 2429, 2466. 2403 cl_ptwbad page_fault: 2421, 2446. 2411 cl_used page_fault: 2426, 2458. 100 cme.abs_usable cmp: 17. 200 cme.abs_w page_fault: 2177, 2298, 2410, cmp: 16. 2 cme.astep cmp: 23. 0 cme.bp cmp: 7. 7 cme.contr cmp: 20. 1 cme.devadd cmp: 9. 740000 cme.did_mask cmp: 11. 1000 cme.er cmp: 14. 1 cme.flags cmp: 10. 0 cme.fp cmp: 6. 4000 cme.io page_fault: 1770, 2007, 2603, 2671, cmp: 13. 40 cme.notify_requested page_fault: 1394, 1770, 2716, cmp: 18. 10 cme.phm_hedge page_fault: 1770, 2797, cmp: 19. 3 cme.pin_counter cmp: 25. 2 cme.ptwp cmp: 22. 400 cme.removing page_fault: 1770, 2177, 2410, cmp: 15. 10000 cme.synch_held page_fault: 1069, cmp: 12. 3 cme.synch_page_entryp cmp: 26. 164 cmep page_fault: 1368, 1370, pxss_page_stack: 15. 12 cmep_to_coreadd.rl page_fault: 1689, 1779, 2496, page_info: 75. 2 cmep_to_ptw.ls page_info: 57. 2 cmep_to_sdw.ls page_info: 57. 16 cme_0 page_fault: 122, 234, 2896. 20 cme_1 page_fault: 123, 238. 22 cme_2 page_fault: 124, 243. 24 cme_3 page_fault: 125, 248. 22 cme_astep page_fault: 124, 245, 1773, 2208, 2326, 2381, 2435, 2655, 2669. 16 cme_bp page_fault: 122, 235, 419, 428, 444, 449, 454, 472, 487. 20 cme_devadd page_fault: 123, 239, 1769, 1835, 2335, 2498, 2563, 2577, 2660, 2802, 2806, 2853. 20 cme_flags page_fault: 123, 240, 1068, 1395, 1771, 2008, 2176, 2409, 2604, 2658, 2717, 2719, 2798. 16 cme_fp page_fault: 122, 236, 411, 418, 427, 448, 453, 468, 488, 490, 502, 514, 2221, 2257, 2270, 2432, 2439. 16 cme_offsets page_fault: 121, 233. 24 cme_pin_counter page_fault: 125, 249, 1363, 2188, 2280, 2283, 2428, 2471. 22 cme_ptwp page_fault: 124, 244, 1900, 2013, 2180, 2380, 2413, 2663. 4 cme_size cmp: 4. 24 cme_synch_page_entryp page_fault: 125, 250. 2237 cmod1 page_fault: 2269. 5 command_sct_index static_handlers: 8. condition_name page_fault: 765, 766. connect_pending page_fault: 2752. 10 connect_sct_index static_handlers: 11. 777777 coreadd_mask page_info: 57. 12 coreadd_to_cmep.ls page_fault: 2648, page_info: 76. 14 coreadd_to_ptw.ls page_fault: 1902, 2017, page_info: 57. 14 coreadd_to_sdw.ls page_fault: 550, page_info: 57. 173 core_add page_fault: 549, 1690, 1780, 1901, 2016, 2206, 2497, 2647, pxss_page_stack: 16. 17 core_ptw.add_type_mask ptw.l68: 19. 16 core_ptw.add_type_shift ptw.l68: 18. 3 core_ptw.df_no_mask ptw.l68: 32. 0 core_ptw.df_no_shift ptw.l68: 31. 10000 core_ptw.er ptw.l68: 21. 20000 core_ptw.first ptw.l68: 20. 0 core_ptw.flags ptw.l68: 17. 37777 core_ptw.frame_mask ptw.l68: 16. 26 core_ptw.frame_shift ptw.l68: 15. 200 core_ptw.nypd ptw.l68: 25. 10 core_ptw.os ptw.l68: 29. 100 core_ptw.phm ptw.l68: 26. 400 core_ptw.phm1 ptw.l68: 24. 1000 core_ptw.phu ptw.l68: 23. 40 core_ptw.phu1 ptw.l68: 27. 2000 core_ptw.unusable1 ptw.l68: 22. 4 core_ptw.valid ptw.l68: 30. 20 core_ptw.wired ptw.l68: 28. core_queue_man page_fault: 354, 2641. 174 count page_fault: 2168, pxss_page_stack: 16. 2022 covert.big_time page_fault: 1937, 1984. 2024 covert.million page_fault: 1942, 1953, 1960, 1986. 2015 covert.reset page_fault: 1973, 1977. 2014 covert.reset_clock page_fault: 1938, 1954, 1975. 1775 covert.test_delay page_fault: 1943, 1950. covert_event_count page_fault: 1929, 1980. cow_ptrs page_fault: 1466, 2753. 77 cput_sct_index static_handlers: 62. cpu_a_cache_err_ctr_array page_fault: 717. cpu_a_flt_ctr_array page_fault: 727. cpu_b_cache_err_ctr_array page_fault: 718. cpu_b_flt_ctr_array page_fault: 728. cpu_c_cache_err_ctr_array page_fault: 719. cpu_c_flt_ctr_array page_fault: 729. cpu_d_cache_err_ctr_array page_fault: 720. cpu_d_flt_ctr_array page_fault: 730. cpu_e_cache_err_ctr_array page_fault: 721. cpu_e_flt_ctr_array page_fault: 731. cpu_f_cache_err_ctr_array page_fault: 722. cpu_f_flt_ctr_array page_fault: 732. cpu_g_cache_err_ctr_array page_fault: 723. cpu_g_flt_ctr_array page_fault: 733. cpu_h_cache_err_ctr_array page_fault: 724. cpu_h_flt_ctr_array page_fault: 734. 252 cpu_pf_count page_fault: 1379, tc_meters: 93. 250 cpu_pf_time page_fault: 328, 329, 1377, 1378, tc_meters: 92, 93, 94, 95, 96, 97, 98. cpu_time page_fault: 537, 1156. 331 cp_hregs page_fault: 610, 614, 619. 2061 create_segment_fault page_fault: 1281, 2043. 412 credits_per_scatter tc_meters: 180. 421 credits_scattered tc_meters: 186. 402 credit_bank tc_meters: 175. 57 cross_ring_transfer_sct_index static_handlers: 46. 1041 csl_loop page_fault: 1111, 1122. 266 cumulative_memory_usage page_fault: 1352, 1353, tc_meters: 102. 377013 deactivate_null null_addresses: 8. 420 deadline_mode tc_meters: 185. 453 default_procs_required tc_meters: 205. 414 define_wc_time tc_meters: 182. 2764 delete_mm_frame page_fault: 127, 2870, 2892. deleting_mm_frame page_fault: 2898. 154 delta_t pxss_page_stack: 13. 62 delta_vcpu page_fault: 543, 544, tc_meters: 49. 406 delta_vt tc_meters: 178. 205 depth pxss_page_stack: 17. 100 depths tc_meters: 62, 63. 6 depth_count tc_meters: 19. 6 derail_sct_index static_handlers: 9. 200 devadd page_fault: 1995, 2136, 2138, 2499, 2592, 2661, pxss_page_stack: 16. device_control page_fault: 2001, 2025, 2084, 2624, 2687. device_error page_fault: 2691. dev_read page_fault: 2025. 203 dev_signal pxss_page_stack: 17. dev_write page_fault: 2624. 1 df1 page_fault: 1906, 2695, page_info: 7. 22 directed_fault_2_sct_index static_handlers: 21. 23 directed_fault_3_sct_index static_handlers: 22. disk_emergency page_fault: 2914. 2100 disk_offlinep page_fault: 129, 1498, 1590, 2081, 2084. 2111 disk_offline_event page_fault: 128, 2093, 2096. 370 disk_polling_time_loc tc_meters: 167. disk_post page_fault: 2641. 2550 done page_fault: 130, 2640, 2651. 2615 done.notify.uncond page_fault: 2721, 2771, 2868, 2871. 2605 done.read.no_ckdv_error page_fault: 2689, 2694. 2720 done.werr.deverr page_fault: 2825, 2834. 2750 done.werr.deverr.printerr page_fault: 2855, 2864. 2551 done_ page_fault: 131, 2644. 232 done_astep page_fault: 2656, 2733, pxss_page_stack: 24. 2575 done_read page_fault: 2679. 2661 done_write page_fault: 2672, 2778. 2527 do_write page_fault: 2600. 2540 do_write.not_mod page_fault: 2615. 2546 do_write.not_pri page_fault: 2619, 2623. dseg page_fault: 556, 1203, 2064. 1213 dseg_page_fault page_fault: 1246, 1263. 332 dst_ptr tc_meters: 140. 320 dst_size tc_meters: 130. 351 efr_loop page_fault: 636, 639, 642. 51 eligible_count tc_meters: 46. 350 eligible_q_head tc_meters: 153, 154. 352 eligible_q_tail tc_meters: 155, 156. 46 eligible_time tc_meters: 44. 346 empty_q tc_meters: 150. 72 end_of_time_loc tc_meters: 55. 577 enter page_fault: 769, 776, 782, 788, 795, 820, 844. 530 enter_data page_fault: 132, 790. 1174 entry_offset stack_header: 84. 175 entry_sw page_fault: 916, 1199, 1570, 1625, 1664, 1795, 1872, 2040, 2617, pxss_page_stack: 16. 201 errcode page_fault: 2682, 2794, 2858, 2866, 2910, pxss_page_stack: 16. 100 errflags.all_paths_bad device_error: 11. 20 errflags.device_inoperative page_fault: 2829, device_error: 13. 1 errflags.fatal_error device_error: 17. 40 errflags.memory_unusable page_fault: 2824, 2860, 2867, device_error: 12. 2 errflags.please_repeat_call device_error: 16. 10 errflags.reassign_address device_error: 14. 4 errflags.seg_unusable device_error: 15. error_in_done page_fault: 2664, 2668. 2650 error_on_read page_fault: 2683, 2692, 2760. 2713 error_on_write page_fault: 2795, 2821. 1436 errquit page_fault: 929, 1506, 1511, 1513. esd_state page_fault: 2370. 6 evict_entry page_info: 35. excessive_seg_state_chg page_fault: 1948. 17 execute_sct_index static_handlers: 18. 170000 extended_page_fault_type page_fault: 842, trace_types: 15. 553 extended_page_util_enter page_fault: 811, 822. 1062 fault page_fault: 133, 1144. 470 fault_ctr_table page_fault: 726, 1170. 0 fault_entry page_info: 29. 24 FAULT_NO_ACV fault_vector: 46. 5 FAULT_NO_CMD fault_vector: 31. 10 FAULT_NO_CON fault_vector: 34. 20 FAULT_NO_DF0 fault_vector: 42. 21 FAULT_NO_DF1 page_fault: 1171, fault_vector: 43. 22 FAULT_NO_DF2 fault_vector: 44. 23 FAULT_NO_DF3 fault_vector: 45. 16 FAULT_NO_DIV fault_vector: 40. 6 FAULT_NO_DRL fault_vector: 32. 17 FAULT_NO_EXF fault_vector: 41. 3 FAULT_NO_F1 fault_vector: 29. 30 FAULT_NO_F2 fault_vector: 50. 31 FAULT_NO_F3 fault_vector: 51. 12 FAULT_NO_IPR fault_vector: 36. 7 FAULT_NO_LUF fault_vector: 33. 2 FAULT_NO_MME fault_vector: 28. 25 FAULT_NO_MME2 fault_vector: 47. 26 FAULT_NO_MME3 fault_vector: 48. 27 FAULT_NO_MME4 fault_vector: 49. 15 FAULT_NO_OFL fault_vector: 39. 13 FAULT_NO_ONC fault_vector: 37. 11 FAULT_NO_PAR fault_vector: 35. 0 FAULT_NO_SDF fault_vector: 26. 1 FAULT_NO_STR fault_vector: 27. 14 FAULT_NO_SUF fault_vector: 38. 37 FAULT_NO_TRB fault_vector: 53. 4 FAULT_NO_TRO fault_vector: 30. 3 fault_tag_1_sct_index static_handlers: 6. 31 fault_tag_3_sct_index static_handlers: 28. 1406 fault_while_on_prds page_fault: 1192, 1460, 1470. 2156 fc1 page_fault: 2175, 2260, 2276. 377020 fill_page_table_null null_addresses: 12. 2146 find_core page_fault: 1753, 2162. 2255 find_core.cme_ng page_fault: 2178, 2296. 2213 find_core.ptw_ng page_fault: 2186, 2234. 2236 find_core.skip_meter_mod page_fault: 2240, 2267. 2247 find_core.skip_pinned page_fault: 2189, 2278. 2257 find_core.skip_wired page_fault: 2245, 2301. 2146 find_core_ page_fault: 134, 2160. 2762 finish_write_error page_fault: 2882. first_covert_event_time page_fault: 1423, 1429, 1936, 1964, 1972, 1978. 63 fixedoverflow_sct_index static_handlers: 50. 77 fnp_buffer_threshold tc_meters: 59. 2207 found_core page_fault: 2181, 2219. 1215 found_faulted_page page_fault: 1261, 1266. 2152 fploop page_fault: 2167, 2314. free_store page_fault: 2128. 226 free_store_start_time pxss_page_stack: 22. 221 free_store_temp pxss_page_stack: 19. 160 free_store_temp_1 pxss_page_stack: 14. 100 fv.fpair fault_vector: 17. 100 fv.fpair.scu fault_vector: 19. 101 fv.fpair.tra fault_vector: 20. 500 fv.f_scu_ptr fault_vector: 24. 400 fv.f_tra_ptr fault_vector: 23. 0 fv.ipair fault_vector: 13. 0 fv.ipair.scu fault_vector: 15. 1 fv.ipair.tra fault_vector: 16. 300 fv.i_scu_ptr fault_vector: 22. 200 fv.i_tra_ptr fault_vector: 21. 600 fv_size fault_vector: 10. 256 getwork_count tc_meters: 96. 152 getwork_temp pxss_page_stack: 13. 254 getwork_time tc_meters: 95. 377011 get_aste_null null_addresses: 6. 377772 get_file_map_dumper_non_null null_addresses: 22. 377017 get_file_map_null null_addresses: 11. 377022 get_file_map_vt_null null_addresses: 14. 500 get_pvtx page_fault: 738, 1998, 2083, 2127, 2492, 2769, 2876. 451 governing_credit_bank tc_meters: 203. 74 gp_at_notify tc_meters: 56. 75 gp_at_ptlnotify tc_meters: 57. 145 gp_done_count tc_meters: 71. 144 gp_start_count tc_meters: 70. 410 gross_idle_time tc_meters: 179. 360 guaranteed_elig_inc tc_meters: 161. 463 gv_integration tc_meters: 215. 464 gv_integration_set tc_meters: 216. 141 gw_gp_window_count tc_meters: 67. 365 hr_roll page_fault: 647, 650. 305 id tc_meters: 118. idle_ptr page_fault: 2746. 354 idle_tail tc_meters: 157. 24 idle_time tc_meters: 33. 42 illegal_modifier_sct_index static_handlers: 33. 40 illegal_opcode_sct_index static_handlers: 31. 12 illegal_procedure_sct_index static_handlers: 13. 43 illegal_ring_order_sct_index static_handlers: 34. 376 imp_polling_lock tc_meters: 170. 374 imp_polling_time_loc tc_meters: 169. 323 initializer_id tc_meters: 133. 336 initialize_time tc_meters: 142. 340 init_event tc_meters: 144. 132 init_savex page_fault: 135, 372, 1195, 1571, 1644. 131 init_savex_bb page_fault: 136, 340, 348, 370, 1666. 377021 init_sst_null null_addresses: 13. 445 init_timeout_recurse tc_meters: 200. 444 init_timeout_severity tc_meters: 199. 440 init_wait_time tc_meters: 197. 442 init_wait_timeout tc_meters: 198. 100000 int page_fault: 2023, 2621, page_info: 14. 177 inter page_fault: 2024, 2616, 2622, pxss_page_stack: 16. 15 interactions tc_meters: 26. 330 interactive_q tc_meters: 139. 262 interrupt_count tc_meters: 99. 260 interrupt_time tc_meters: 98, 99. 140000 interrupt_type trace_types: 14. 76 int_q_enabled tc_meters: 58. 56 inward_return_sct_index static_handlers: 45. 1310 in_equilibrium page_fault: 1347, 1351. 70 iobm_polling_time_loc tc_meters: 54. 73 isot_fault_sct_index static_handlers: 58. 321 itt_free_list tc_meters: 131. 247 itt_list_lock tc_meters: 91. 317 itt_size tc_meters: 128. 311 last_eligible tc_meters: 123. 34 last_time tc_meters: 37. 1760 limit_covert_channel page_fault: 1822, 1824, 1878, 1889, 1928. 30 linkage_error_sct_index static_handlers: 27. 50000 linkage_fault_end trace_types: 7. 40000 linkage_fault_start trace_types: 6. 377016 list_deposit_null null_addresses: 10. 7 loadings tc_meters: 20. 60 loading_idle tc_meters: 48. 304 lock tc_meters: 117. 7 lockup_sct_index static_handlers: 10. 462 lock_error_severity tc_meters: 213. 40 lock_ptl page_fault: 137, 294, 1196. 121 lock_ptl_ext page_fault: 138, 356. 41 lock_ptl_no_lp page_fault: 139, 296, 358. 223 lock_volmap_temp pxss_page_stack: 20. 156 lock_volmap_temp_1 pxss_page_stack: 14. 36 loop_locks tc_meters: 38. 37 loop_lock_time tc_meters: 39. 273 lost_priority_eligibility tc_meters: 106. 72 lot_fault_sct_index static_handlers: 57. 377012 make_sdw_null null_addresses: 7. 130000 marker_type page_fault: 781, trace_types: 13. 1127 masked_switched_legal page_fault: 336, 1189, 1193. mask_ptr page_fault: 1165, 1439. 416 max_batch_elig tc_meters: 183. 377 max_channels tc_meters: 171. 277 max_clock_lag tc_meters: 109. 10 max_depth tc_meters: 61, 63, 64, 84, 85. 325 max_eligible tc_meters: 135. 301 max_hproc_segno tc_meters: 114. 422 max_max_eligible tc_meters: 187. 423 max_stopped_stack_0 tc_meters: 188. 446 max_timer_register tc_meters: 201. 405 max_wct_index tc_meters: 177. 300000 mc.cpu_type_mask page_fault: 603, mc: 22. 3 mc.cpu_type_shift page_fault: 602, 605, 622, mc: 25. 46 mc.cpu_type_word page_fault: 604, 623, 624, mc: 21. 50 mc.eis_info page_fault: 1149, 1449, mc: 11. 43 mc.errcode page_fault: 1200, mc: 17. 46 mc.ext_fault_reg mc: 23. 77774 mc.ext_fault_reg_mask page_fault: 632, mc: 24. 45 mc.fault_reg page_fault: 621, 627, mc: 19. 46 mc.fault_time page_fault: 1152, mc: 20. 44 mc.fim_temp page_fault: 619, 620, 667, 668, 674, mc: 18. 42 mc.ips_temp mc: 16. 40 mc.mask page_fault: 1167, 1435, mc: 15. 0 mc.prs page_fault: 1187, 1190, 1542, mc: 8. 20 mc.regs page_fault: 1148, 1450, mc: 9. 30 mc.scu mc: 10. 30 mc.scu.apu_stat_word page_fault: 1213, 1216, 2045, mc: 48. 35 mc.scu.ca_word page_fault: 1223, mc: 207. 32 mc.scu.cpu_no_word mc: 138. 35 mc.scu.cpu_tag_word mc: 231. 35 mc.scu.cu_stat_word page_fault: 831, 1208, 2050, mc: 211. 32 mc.scu.delta_word mc: 144. 30 mc.scu.fault_cntr_word mc: 66. 31 mc.scu.fault_data_word mc: 74. 34 mc.scu.ilc_word page_fault: 826, mc: 182. 34 mc.scu.indicators_word page_fault: 1181, mc: 186. 31 mc.scu.port_stat_word mc: 108. 30 mc.scu.ppr.prr_word mc: 33. 30 mc.scu.ppr.psr_word page_fault: 611, 823, 830, 1212, mc: 38. 30 mc.scu.ppr.p_word mc: 43. 33 mc.scu.tpr.tbr_word mc: 174. 32 mc.scu.tpr.trr_word page_fault: 920, 1330, mc: 128. 32 mc.scu.tpr.tsr_word page_fault: 615, 815, 834, 1220, 2053, mc: 133. 33 mc.scu.tsr_stat_word mc: 152. 2347 mclp page_fault: 2405, 2440. 3 mctseg.hr_cnt mctseg: 14. 2 mctseg.hr_lim page_fault: 646, mctseg: 11. 2 mctseg.hr_nxtad page_fault: 645, 649, 651, mctseg: 12. 200 mctseg.hr_size page_fault: 650, 652, mctseg: 17. 3 mctseg.hr_strt page_fault: 648, mctseg: 13. 1 mctseg.mc_cnt mctseg: 10. 0 mctseg.mc_lim page_fault: 690, mctseg: 7. 0 mctseg.mc_nxtad page_fault: 689, 693, 696, mctseg: 8. 60 mctseg.mc_size page_fault: 695, 697, 699, 700, mctseg: 16. 1 mctseg.mc_strt page_fault: 692, mctseg: 9. 4 mctseg.x0save mctseg: 15. 2346 mc_continue page_fault: 2402, 2437. 2377 mc_end page_fault: 2439, 2444, 2448, 2452, 2456, 2464, 2470, 2472. 436 mc_roll page_fault: 691, 694. mc_trace_buf page_fault: 644. mc_trace_seg page_fault: 609, 613, 617. mc_trace_sw page_fault: 607. 142 metering_lock tc_meters: 68. 434 meter_response_time_calls tc_meters: 194. 435 meter_response_time_invalid tc_meters: 195. 436 meter_response_time_overhead tc_meters: 196. 226 meter_virtual_time page_fault: 531, 1446, 1548. 356 min_eligible tc_meters: 158. 404 min_wct_index tc_meters: 176. 2 mme1_sct_index static_handlers: 5. 25 mme2_sct_index static_handlers: 24. 26 mme3_sct_index static_handlers: 25. 27 mme4_sct_index static_handlers: 26. mode_reg page_fault: 704. mode_reg_enabled page_fault: 706, 707. 2261 mods_excessive page_fault: 2272, 2275, 2310. 425 mos_polling_interval tc_meters: 190. 426 mos_polling_time_loc tc_meters: 191. 26 mp_idle tc_meters: 34. 4 mr.enable_hfp mode_reg: 8. 60 mr.enable_hist page_fault: 705, mode_reg: 7. 1 mr.enable_mr page_fault: 705, mode_reg: 9. 777770 mr.floating_fv_mask mode_reg: 3. 777400 mr.opcode_field mode_reg: 5. 1 mr.trap_address_match mode_reg: 4. 200 mr.trap_opcode_match mode_reg: 6. 2026 must_read page_fault: 1840, 1994. 160 mv_to_usedp page_fault: 432, 503. 14 my_lp page_fault: 140, 215, 230, 764, 773, 1150. 310 ncpu tc_meters: 122. 102 neti_sct_index static_handlers: 65. 342 newt tc_meters: 146. 362 next_alarm_time tc_meters: 163. 470 next_ring0_timer tc_meters: 220. 30 nmp_idle tc_meters: 35. 246 nonidle_force_count tc_meters: 90. 124 non_fatal_error page_fault: 361, 363. 13 notifies tc_meters: 24. 66 notify_check tc_meters: 52. 2611 notify_code page_fault: 2711, 2814, 2884. 2624 notify_end page_fault: 2718, 2732, 2747, 2754. 155 notify_nobody_count tc_meters: 78. 156 notify_nobody_event tc_meters: 79. 50 notify_regs pxss_page_stack: 8. 2623 notify_return page_fault: 141, 2729, 2730. 52 not_a_gate_sct_index static_handlers: 41. 1201 not_dseg page_fault: 1240, 1251. 53 not_in_call_bracket_sct_index static_handlers: 42. 44 not_in_execute_bracket_sct_indx static_handlers: 35. 46 not_in_read_bracket_sct_index static_handlers: 37. 50 not_in_write_bracket_sct_index static_handlers: 39. 2711 no_dblw page_fault: 2811. 357 no_efr page_fault: 633, 640, 644. 1315 no_eligible page_fault: 1341, 1358. 45 no_execute_permission_sct_index static_handlers: 36. 4 no_post page_info: 16. 47 no_read_permission_sct_index static_handlers: 38. 444 no_trace_mc page_fault: 608, 618, 701. 51 no_write_permission_sct_index static_handlers: 40. 146 nto_check_time tc_meters: 72. 151 nto_count tc_meters: 74. 150 nto_delta tc_meters: 73. 153 nto_event tc_meters: 76. 34 null page_fault: 273, 1510. number_of_pages_in_use page_fault: 1336, 1346, 1348. 417 num_batch_elig tc_meters: 184. 324 n_eligible page_fault: 1340, tc_meters: 134. 6 obsolete_wlim page_fault: 223. 264 ocore tc_meters: 100. 244 ocore_delta tc_meters: 88. 341 oldt tc_meters: 145. 334 old_user tc_meters: 141. 366 opc_polling_time_loc tc_meters: 165. open_level page_fault: 1437. 13 op_not_complete_sct_index static_handlers: 14. 67 other_illegal_proc_sct_index static_handlers: 54. 54 outward_call_sct_index static_handlers: 43. 62 out_of_bounds_sct_index static_handlers: 49. out_of_core page_fault: 2261. 64 overflow_sct_index static_handlers: 51. 15 ovrflo_sct_index static_handlers: 16. 71 packed_pointer_fault_sct_index static_handlers: 56. 250 pad pxss_page_stack: 33. 235 pageno page_fault: 2116, 2118, 2121, pxss_page_stack: 25. 377024 page_bad_null page_fault: 2859, null_addresses: 16. 377015 page_bad_pd_null null_addresses: 9. 377027 page_devparity_null page_fault: 2862, null_addresses: 19. page_error page_fault: 303, 363, 368, 1948, 2261, 2664, 2668, 2691, 2852, 2857, 2898. 2 PAGE_ERROR_BADFAULT page_fault: 1509, page_error_types: 15. 3 PAGE_ERROR_INVERROR page_error_types: 16. 1 PAGE_ERROR_IOERR page_fault: 1504, page_error_types: 14. 2 PAGE_ERROR_MAXTYPE page_error_types: 17. 0 PAGE_ERROR_RQO page_fault: 927, page_error_types: 13. page_fault page_fault: 1289. page_fault_data page_fault: 216, 333, 815, 823, 826, 830, 831, 834, 1202, 1330, 1420, 2044. page_fault_end page_fault: 1298. 127 page_fault_error page_fault: 142, 207, 208, 320, 366, 368, 382, 470, 504, 516, 1219, 1678, 1733, 1838, 2042, 2048, 2112, 2237, 2372, 2504, 2586. 21 page_fault_error_sct_index static_handlers: 20. 0 page_fault_type trace_types: 3. 2521 page_non_zero page_fault: 2536, 2539, 2543, 2546, 2576. 2517 page_non_zero_a page_fault: 2554, 2573. 154 page_notifies tc_meters: 77. page_notify page_fault: 2727. 377026 page_parity_null null_addresses: 18. page_pause page_fault: 1431. 12 page_power page_fault: 1260, page_info: 6. 377025 page_problem_null null_addresses: 17. 1424 page_read_error page_fault: 1277, 1496. page_synch page_fault: 1071, 1078. 242 page_synch_index pxss_page_stack: 28. 236 page_synch_temp pxss_page_stack: 27. 240 page_synch_time pxss_page_stack: 27. 537 page_util_enter page_fault: 804, 1299. page_wait page_fault: 1409. page_waits page_fault: 1335. 11 parity_sct_index static_handlers: 12. 465 pauses tc_meters: 217. 1547 pcleanup page_fault: 143, 1661. 245 pc_err_astep page_fault: 1514, 1527, pxss_page_stack: 30. 244 pc_err_ptwp page_fault: 1515, 1529, pxss_page_stack: 30. 243 pc_err_type page_fault: 1513, 1525, pxss_page_stack: 30. 377007 pc_move_page_table_1_null null_addresses: 4. 377010 pc_move_page_table_2_null null_addresses: 5. pc_signal page_fault: 1531. 36 pc_signal_arglist page_fault: 274, 1523. pc_trace page_fault: 1289, 1298, 2493, 2559, 2651. 3 pdm page_info: 19. pds page_fault: 216, 298, 304, 305, 312, 317, 327, 333, 335, 533, 537, 538, 539, 540, 541, 542, 607, 609, 613, 617, 644, 765, 766, 815, 823, 826, 830, 831, 834, 844, 868, 876, 877, 913, 1153, 1154, 1156, 1157, 1202, 1330, 1335, 1336, 1338, 1346, 1348, 1376, 1400, 1404, 1407, 1420, 1423, 1429, 1430, 1463, 1541, 1598, 1739, 1793, 1870, 1929, 1936, 1964, 1972, 1978, 1980, 2044, 2726, 2745, 2749, 2752. 300 pdscopyl tc_meters: 113. 303 pds_length tc_meters: 116. 5 pd_flush_entry page_info: 34. 130 pfdepth tc_meters: 64. 1131 pft_lret page_fault: 324, 1197. 10 pf_prs page_fault: 144, 227, 1146, 1147, 1451. 12 pf_scuinfo page_fault: 145, 228, 1452. 246 pf_sdw page_fault: 1255, 1264, 1813, pxss_page_stack: 31. pgt_mask page_fault: 870. pmut page_fault: 345. 103 pmut_unlock_ptl page_fault: 116, 338. post_io page_fault: 2740. 230 post_io_start_time pxss_page_stack: 22. 4 post_purge_entry page_info: 33. 64 post_purge_switch page_fault: 810, tc_meters: 50. prds page_fault: 177, 625, 702, 704, 706, 707, 1164, 1175, 1438, 1442, 1443, 1465, 1539, 1540, 2746, 2751. 302 prds_length tc_meters: 115. 10 prds_link page_fault: 177, 1191. 1467 pread page_fault: 147, 1566. 1475 pread.loop page_fault: 1573, 1596. 1514 pread.read_page page_fault: 1588, 1593. 1522 pread.wait page_fault: 1595, 1601. 1523 pread.wait_any page_fault: 1591, 1600, 1606. 1522 pread.wait_ret page_fault: 1604. 265 pre_empt_flag page_fault: 2722, tc_meters: 101. 450 pre_empt_sample_time tc_meters: 202. 3 pre_page_entry page_info: 32. 642 pre_page_info page_fault: 146, 887. 17 pre_seek_limit page_fault: 2158, 2169. 100 pre_temp pxss_page_stack: 10. 76 pre_time pxss_page_stack: 10. 20 pri page_fault: 2023, 2621, page_info: 15. 361 priority_sched_inc tc_meters: 162. 364 priority_sched_time tc_meters: 164. processid page_fault: 298, 305, 317, 1463. processor_tag page_fault: 625, 1164, 1438, 1465, 2751. 42 processor_time tc_meters: 42. 270 processor_time_at_define_wc tc_meters: 103. 452 process_initial_quantum tc_meters: 204. 70 ptlfail page_fault: 310, 323. ptl_mylock page_fault: 303. 140 ptl_not_waits tc_meters: 66. 63 ptl_ok page_fault: 300, 316. 52 ptl_repeat page_fault: 306, 325. ptl_wait page_fault: 330. 143 ptl_waits tc_meters: 69. 77 ptl_wait_return page_fault: 117, 332. 176 ptp_astep page_fault: 1371, 1372, 1751, 1752, 1754, 1756, pxss_page_stack: 16. 2 ptw page_fault: 897, 1248, 1267, 1268, 1269, 1271, 1385, 1389, 1502, 1515, 1581, 1583, 1633, 1668, 1669, 1670, 1672, 1673, 1675, 1693, 1767, 1768, 1904, 1907, 2011, 2019, 2089, 2109, 2140, 2182, 2183, 2202, 2203, 2212, 2252, 2254, 2266, 2336, 2359, 2384, 2417, 2419, 2460, 2462, 2501, 2541, 2548, 2575, 2607, 2610, 2666, 2696, 2698, 2765, 2768, 2786, 2790, 2792, 2843, 2848, 2863, 2880, page_info: 21. 0 ptw.add ptw.l68: 37. 17 ptw.add_type_mask ptw.l68: 40. 16 ptw.add_type_shift ptw.l68: 39. 3 ptw.df_no_mask ptw.l68: 53. 0 ptw.df_no_shift ptw.l68: 52. 10000 ptw.er page_fault: 1276, 1501, 1587, 1766, 2088, 2767, 2789, 2847, ptw.l68: 42. 20000 ptw.first ptw.l68: 41. 0 ptw.flags ptw.l68: 38. 400000 ptw.nulled page_fault: 270, 2137, 2362, 2562, 2803, 2805, page_info: 12. 200 ptw.nypd ptw.l68: 46. 10 ptw.os page_fault: 1274, 1390, 1676, 2010, 2185, 2235, 2420, 2502, 2606, 2667, 2697, 2764, 2789, ptw.l68: 50. 100 ptw.phm page_fault: 1766, 2185, 2213, 2239, 2383, 2422, 2505, 2516, 2609, 2785, ptw.l68: 47. 400 ptw.phm1 page_fault: 1766, 2185, 2213, 2239, 2383, 2422, 2505, 2609, 2879, ptw.l68: 45. 1000 ptw.phu page_fault: 1906, 2185, 2251, 2425, 2459, 2785, ptw.l68: 44. 40 ptw.phu1 page_fault: 2253, 2461, ptw.l68: 48. 2000 ptw.unusable1 ptw.l68: 43. 4 ptw.valid page_fault: 1110, 1249, 1272, 1584, 1692, 1906, 2201, 2265, 2547, 2574, 2695, 2791, 2842, ptw.l68: 51. 20 ptw.wired page_fault: 2185, 2213, 2244, 2420, 2542, ptw.l68: 49. 777760 ptw_add_mask page_fault: 2204, page_info: 57. 2 ptw_to_cmep.rl page_fault: 1483, 1637, 1682, page_info: 57. 24 ptw_to_cmep_lower.rl page_info: 57. 14 ptw_to_coreadd.rl page_fault: 2205, page_info: 57. 1171 push_offset stack_header: 81. pvt page_fault: 2370. 172 pvtx page_fault: 742, 2907, 2908, pxss_page_stack: 16. 1526 pwrite page_fault: 148, 1622. pxss page_fault: 330, 1409, 1431, 2727. 210 pxss_save_stack pxss_page_stack: 18. 216 pxss_stackp pxss_page_stack: 18. 6 pxss_stack_size pxss_page_stack: 5, 18. 23 p_interactions tc_meters: 32. 1360 quit page_fault: 1250, 1254, 1273, 1391, 1417, 2066. 52 quit_counts tc_meters: 47. 67 quit_priority tc_meters: 53. 75 quit_sct_index static_handlers: 60. 767 quota.lx page_fault: 938, 957, 981, 1020. 771 quota.sx page_fault: 941, 959, 983, 1023. 773 quota.tq_mask page_fault: 988, 1026. 720 quota_b page_fault: 957, 963. 736 quota_bc page_fault: 981, 993. 747 quota_bc_next page_fault: 985, 991. 751 quota_bc_term page_fault: 989, 995. 657 quota_c page_fault: 909, 911. quota_inhib page_fault: 913. 703 quota_r page_fault: 938, 945. 1724 read.bump_quota page_fault: 1871, 1873, 1879, 1883, 1892. 1664 read.covert_1 page_fault: 1815, 1818, 1820, 1823. 1717 read.create_check_dir page_fault: 1877, 1881. 1701 read.create_zeros page_fault: 1852. 1667 read.incr_np page_fault: 1787, 1828. 2030 read.must_rd.merge page_fault: 2000. 1725 read.quota_bumped page_fault: 1890, 1894. 1672 read.set_np page_fault: 1794, 1796, 1826, 1832. 1237 readin.goon page_fault: 1293, 1294, 1297. 1257 readin.meter_ndir_pft page_fault: 1318, 1322. 1264 readin.meter_sgdir_join page_fault: 1320, 1324, 1329. 220 readytime tc_meters: 84, 85. 350 ready_q_head tc_meters: 154. 352 ready_q_tail tc_meters: 156. 1 read_entry page_fault: 917, 1569, page_info: 30. read_mask page_fault: 1166. 1610 read_page page_fault: 1292, 1594, 1743. 2053 read_page.oodev page_fault: 1748, 2033. 1600 read_page_abs page_fault: 149, 1729. 1605 read_page_abs.apte_event page_fault: 1734, 1738. 1623 read_page_join page_fault: 1736, 1758. 473 realtime_io_deadline tc_meters: 222. 472 realtime_io_priority_switch tc_meters: 221. 474 realtime_io_quantum tc_meters: 223. 475 realtime_priorities tc_meters: 224. 314 realtime_q tc_meters: 126. 100 record_quota_overflow_sct_index static_handlers: 63. 1143 regular_page_fault page_fault: 1210, 1215. 476 relinquishes tc_meters: 225. 120000 reschedule_type page_fault: 787, trace_types: 12. 307 reset_mode_reg page_fault: 600, 1159. 700 reset_quota page_fault: 933, 2377. 641 reset_working_set page_fault: 150, 884. 50 response_count tc_meters: 45. 44 response_time tc_meters: 43. 1402 restart_fault page_fault: 217, 1448. 110000 restart_fault_type page_fault: 775, trace_types: 11. 2234 restore_ptw_access page_fault: 2214, 2264. 2701 resurgo page_fault: 2801. 2707 resurgo.fmchanged page_fault: 2808. 2711 rethread page_fault: 2804, 2812. 536 return page_fault: 350, 799, 1585, 1609, 1648. 1173 return_no_pop_offset stack_header: 83. 1172 return_offset stack_header: 82. reverting_page page_fault: 2852. 60 ring_alarm_fault_sct_index static_handlers: 47. 136 savex page_fault: 151, 379, 1077, 1730, 1744, 2082, 2126, 2163, 2325, 2399, 2491, 2646, 2893. 60 save_stack page_fault: 373, pxss_page_stack: 9. 222 savx2_3 pxss_page_stack: 19. 14 schedulings tc_meters: 25. 454 scpr page_fault: 666, 711. 372 scpr1 page_fault: 655, 678. 405 scpr2 page_fault: 658, 661, 666. 407 scpr3 page_fault: 668, 672, 676. 414 scpr4 page_fault: 670, 674. scs page_fault: 1165, 1166, 1168, 1169, 1437, 1439, 1440, 1462, 1464, 1466, 2753. 2000 scu.apu.dsptw page_fault: 1217, 1245, 2046, mc: 57. 10 scu.apu.fabs mc: 64. 20 scu.apu.fanp mc: 63. 40 scu.apu.fap mc: 62. 4000 scu.apu.pi_ap mc: 56. 200 scu.apu.ptw page_fault: 1217, mc: 60. 100 scu.apu.ptw2 page_fault: 1217, 1224, mc: 61. 20000 scu.apu.ptwm mc: 54. 10000 scu.apu.pt_on mc: 55. 100000 scu.apu.sdwm mc: 52. 1000 scu.apu.sdwnp mc: 58. 400 scu.apu.sdwp mc: 59. 40000 scu.apu.sd_on mc: 53. 200000 scu.apu.xsf mc: 51. 0 scu.apu_stat_word mc: 49. 22 scu.ca_shift mc: 209. 5 scu.ca_word mc: 208. 700 scu.con_chan_mask mc: 117. 6 scu.con_chan_shift mc: 118. 700 scu.cpu_no_mask mc: 141. 2 scu.cpu_no_word mc: 139. 6 scu.cpu_shift mc: 142. 7 scu.cpu_tag_mask mc: 234. 5 scu.cpu_tag_word mc: 232. 100 scu.cu.if page_fault: 832, 1209, 2051, mc: 229. 1000 scu.cu.poa mc: 226. 10000 scu.cu.pon mc: 221. 20000 scu.cu.pot mc: 220. 100000 scu.cu.rd mc: 217. 400000 scu.cu.rf mc: 214. 400 scu.cu.rfi mc: 227. 40000 scu.cu.rl mc: 218. 200000 scu.cu.rpt mc: 216. 4000 scu.cu.xde mc: 223. 2000 scu.cu.xdo mc: 224. 5 scu.cu_stat_word mc: 212. 77 scu.delta_mask mc: 147. 2 scu.delta_word mc: 145. 36 scu.even_inst_word mc: 239. 7 scu.fault_cntr_mask mc: 69. 0 scu.fault_cntr_word mc: 67. 1 scu.fault_data_word mc: 75. 10 scu.fd.am_er mc: 91. 200 scu.fd.boc mc: 87. 40 scu.fd.crt mc: 89. 100000 scu.fd.e_off mc: 79. 100000 scu.fd.ia_im mc: 102. 100 scu.fd.inret mc: 88. 200000 scu.fd.ioc mc: 101. 20000 scu.fd.ipr mc: 104. 400000 scu.fd.iro mc: 77. 400000 scu.fd.isn mc: 100. 40000 scu.fd.isp mc: 103. 10000 scu.fd.nea mc: 105. 2000 scu.fd.no_ga mc: 84. 400 scu.fd.ocall mc: 86. 1000 scu.fd.ocb mc: 85. 200000 scu.fd.oeb mc: 78. 400000 scu.fd.onc_1 mc: 96. 200000 scu.fd.onc_2 mc: 97. 4000 scu.fd.oobb mc: 106. 4 scu.fd.oosb mc: 92. 40000 scu.fd.orb mc: 80. 10000 scu.fd.owb mc: 82. 1 scu.fd.parl mc: 94. 2 scu.fd.paru mc: 93. 20 scu.fd.ralr mc: 90. 20000 scu.fd.r_off mc: 81. 4000 scu.fd.w_off mc: 83. 1 scu.fi_flag_mask mc: 123. 76 scu.fi_num_mask mc: 120. 1 scu.fi_num_shift mc: 121. 7000 scu.iac_mask mc: 114. 11 scu.iac_shift mc: 115. 170000 scu.ial_mask mc: 111. 14 scu.ial_shift mc: 112. 22 scu.ilc_shift mc: 184. 4 scu.ilc_word mc: 183. 4 scu.indicators_word mc: 187. 20 scu.ir.abs mc: 202. 200 scu.ir.bm mc: 199. 100000 scu.ir.carry mc: 191. 20000 scu.ir.eovf mc: 193. 10000 scu.ir.eufl mc: 194. 10 scu.ir.hex mc: 203. 40 scu.ir.mif mc: 201. 200000 scu.ir.neg mc: 190. 4000 scu.ir.oflm mc: 195. 40000 scu.ir.ovfl mc: 192. 1000 scu.ir.par mc: 197. 400 scu.ir.parm page_fault: 1180, mc: 198. 2000 scu.ir.tro mc: 196. 100 scu.ir.tru mc: 200. 400000 scu.ir.zero mc: 189. 37 scu.odd_inst_word mc: 241. 1 scu.port_stat_word mc: 109. 400000 scu.ppr.p mc: 45. 700000 scu.ppr.prr_mask mc: 35. 41 scu.ppr.prr_shift mc: 36. 0 scu.ppr.prr_word mc: 34. 77777 scu.ppr.psr_mask page_fault: 612, mc: 40. 22 scu.ppr.psr_shift mc: 41. 0 scu.ppr.psr_word mc: 39. 0 scu.ppr.p_word mc: 44. 77 scu.tpr.tbr_mask mc: 177. 3 scu.tpr.tbr_word mc: 175. 700000 scu.tpr.trr_mask page_fault: 921, 1331, mc: 130. 41 scu.tpr.trr_shift mc: 131. 2 scu.tpr.trr_word mc: 129. 77777 scu.tpr.tsr_mask page_fault: 616, 1227, mc: 135. 22 scu.tpr.tsr_shift mc: 136. 2 scu.tpr.tsr_word mc: 134. 700000 scu.tsna.prn_mask mc: 159. 17 scu.tsna.prn_shift mc: 160. 40000 scu.tsna.prv mc: 161. 740000 scu.tsna_mask mc: 158. 34000 scu.tsnb.prn_mask mc: 164. 13 scu.tsnb.prn_shift mc: 165. 2000 scu.tsnb.prv mc: 166. 36000 scu.tsnb_mask mc: 163. 1600 scu.tsnc.prn_mask mc: 169. 7 scu.tsnc.prn_shift mc: 170. 100 scu.tsnc.prv mc: 171. 13 scu.tsnc_mask mc: 168. 777700 scu.tsr_stat_mask mc: 155. 6 scu.tsr_stat_shift mc: 156. 3 scu.tsr_stat_word mc: 153. 17 sdw.access_mask sdw.l68: 42. 21 sdw.access_shift sdw.l68: 41. 1 sdw.access_word sdw.l68: 40. 14 sdw.add_shift page_fault: 1237, sdw.l68: 18. 0 sdw.add_word sdw.l68: 17. 37777 sdw.bound_mask sdw.l68: 39. 25 sdw.bound_shift sdw.l68: 38. 1 sdw.bound_word sdw.l68: 37. 40000 sdw.cache sdw.l68: 56. 1 sdw.cache_word sdw.l68: 55. 3 sdw.df_no_mask page_fault: 2059, sdw.l68: 35. 0 sdw.df_no_shift sdw.l68: 34. 0 sdw.df_no_word sdw.l68: 33. 37777 sdw.entry_bound_mask sdw.l68: 59. 0 sdw.entry_bound_shift sdw.l68: 58. 1 sdw.entry_bound_word sdw.l68: 57. 2 sdw.execute sdw.l68: 46. 1 sdw.execute_word sdw.l68: 45. 100000 sdw.not_a_gate sdw.l68: 54. 1 sdw.not_a_gate_word sdw.l68: 53. 400000 sdw.privileged sdw.l68: 50. 1 sdw.privileged_word sdw.l68: 49. 7 sdw.r1_mask sdw.l68: 24. 11 sdw.r1_shift sdw.l68: 23. 0 sdw.r1_word sdw.l68: 22. 7 sdw.r2_mask sdw.l68: 27. 6 sdw.r2_shift sdw.l68: 26. 0 sdw.r2_word sdw.l68: 25. 7 sdw.r3_mask sdw.l68: 30. 3 sdw.r3_shift sdw.l68: 29. 0 sdw.r3_word sdw.l68: 28. 4 sdw.read page_fault: 259, sdw.l68: 44. 1 sdw.read_word sdw.l68: 43. 777 sdw.rings_mask sdw.l68: 21. 3 sdw.rings_shift sdw.l68: 20. 0 sdw.rings_word sdw.l68: 19. 200000 sdw.unpaged page_fault: 259, sdw.l68: 52. 1 sdw.unpaged_word sdw.l68: 51. 4 sdw.valid page_fault: 259, 1253, 2059, sdw.l68: 32. 0 sdw.valid_word sdw.l68: 31. 1 sdw.write page_fault: 259, 1814, sdw.l68: 48. 1 sdw.write_word sdw.l68: 47. 777760 sdw_add_mask page_info: 57. 26 sdw_bits page_fault: 253, 552. 2 sdw_size sdw.l68: 15. 2 sdw_to_cmep.rl page_info: 57. 14 sdw_to_coreadd.rl page_info: 57. 377031 segmove_new_addr_null null_addresses: 21. 377030 segmove_old_addr_null null_addresses: 20. 10 seg_aste.usage page_fault: 1325, 1327, aste: 149. 14 seg_aste_size aste: 146. 30000 seg_fault_end trace_types: 5. 20 seg_fault_error_sct_index static_handlers: 19. 20000 seg_fault_start trace_types: 4. set_mask page_fault: 1169, 1440. 244 set_up_abs_seg page_fault: 152, 548, 561, 568, 577, 2531. 1420 short_page_fault page_fault: 1275, 1475. 257 short_pf_count tc_meters: 97. 535 short_return page_fault: 794, 796. 0 shutdown_sct_index static_handlers: 3. signaller page_fault: 1549. 100000 signaller_type page_fault: 768, trace_types: 10. signal_data page_fault: 1541. 41 simfault_000000_sct_index static_handlers: 32. 100 size_of_apt_entry apte: 122. 70 size_of_wct_entry wcte: 54. 101 size_sct_index static_handlers: 64. 2227 skip page_fault: 2256, 2282, 2284, 2299, 2303. 1321 skip_pinning page_fault: 1360, 1365. 41 sort_to_elhead tc_meters: 41. 3 sst page_fault: 297, 299, 302, 307, 313, 314, 315, 318, 371, 408, 421, 423, 433, 437, 439, 441, 477, 479, 481, 483, 513, 524, 1112, 1114, 1162, 1241, 1257, 1258, 1308, 1312, 1314, 1319, 1333, 1337, 1366, 1385, 1407, 1479, 1489, 1576, 1581, 1632, 1643, 1673, 1688, 1755, 1778, 1895, 1939, 1941, 1947, 1952, 1958, 1961, 1963, 1965, 1969, 1979, 2035, 2164, 2171, 2182, 2216, 2220, 2222, 2250, 2258, 2268, 2269, 2271, 2279, 2302, 2311, 2312, 2400, 2403, 2405, 2407, 2417, 2431, 2433, 2443, 2447, 2451, 2455, 2463, 2467, 2475, 2495, 2558, 2645, 2649, 2665, 2731, 2734, 2737, 2741, 2761, 2781, 2783, 2788, 2807, 2822, 2897, page_info: 18, 19, 20. 214 sst.abs_wired_count sst: 126. 241 sst.acost sst: 141. 400000 sst.activate_activated sst: 201. 517 sst.activations sst: 182. 52 sst.ainitp sst: 52. 52 sst.ainitp1 sst: 53. 244 sst.alaps sst: 144. 230 sst.aneedsize sst: 135. 236 sst.asearches sst: 138. 243 sst.askipdius sst: 143. 235 sst.askipsehs sst: 137. 240 sst.askipsinit sst: 140. 224 sst.askipsize sst: 134. 237 sst.askipslevel sst: 139. 242 sst.askipslock sst: 142. 30 sst.astap sst: 35. 254 sst.asteps sst: 151. 21 sst.astl sst: 26. 22 sst.astl_event sst: 27. 400000 sst.astl_notify_requested sst: 30. 23 sst.astl_notify_requested_word sst: 29. 33 sst.astsize sst: 37. 72 sst.ast_ht_n_buckets sst: 76. 70 sst.ast_ht_ptr sst: 75. 73 sst.ast_ht_uid_mask sst: 77. 260 sst.ast_locked_at_time sst: 152. 262 sst.ast_locked_total_time sst: 153. 266 sst.ast_locking_count sst: 155. 264 sst.ast_lock_wait_time sst: 154. 400000 sst.ast_track sst: 240. 566 sst.ast_track_word sst: 239. 50 sst.atempp sst: 46. 50 sst.atempp1 sst: 47. 600 sst.audit_seg_state_change_bw page_fault: 1941, sst: 253. 573 sst.audit_seg_state_chg page_fault: 1947, sst: 249. 126 sst.aused sst: 104. 44 sst.ausedp sst: 43. 534 sst.backup_activations sst: 198. 513 sst.bad_sgms sst: 178. 116 sst.ceiling sst: 96. 75 sst.checksum_filemap sst: 79. 476 sst.claim_notmod page_fault: 2455, sst: 166. 477 sst.claim_passed_used page_fault: 2463, sst: 167. 516 sst.claim_runs sst: 181. 474 sst.claim_skip_cme page_fault: 2443, sst: 164. 475 sst.claim_skip_free page_fault: 2451, sst: 165. 500 sst.claim_skip_ptw page_fault: 2447, sst: 168. 502 sst.claim_steps page_fault: 2407, sst: 170. 501 sst.claim_writes page_fault: 2431, sst: 169. 267 sst.cleanup_count sst: 156. 270 sst.cleanup_real_time sst: 157. 67 sst.cl_skips_pinned page_fault: 2467, sst: 74. 34 sst.cmesize sst: 38. 54 sst.cmp page_fault: 1489, 1643, 1688, 1778, 2495, 2649, sst: 56. 252 sst.cpu_bf_time sst: 150. 160 sst.cpu_sf_time sst: 114. 400000 sst.crash_test_segmove sst: 246. 571 sst.crash_test_segmove_word sst: 245. 117 sst.ctwait sst: 97. 100 sst.cycle_pv_allocation sst: 82. 127 sst.damaged_ct sst: 105. 507 sst.dblw_resurrections sst: 175. 130 sst.deact_count sst: 106. 572 sst.delayed_seg_state_chg page_fault: 1958, sst: 248. 132 sst.demand_deactivations sst: 108. 131 sst.demand_deact_attempts sst: 107. 567 sst.dirlock_writebehind sst: 242. 520 sst.dir_activations sst: 183. 110 sst.dir_page_faults page_fault: 1319, sst: 90. 400000 sst.dm_enabled sst: 50. 51 sst.dm_enabled_word sst: 49. 62 sst.double_write sst: 66. 546 sst.event sst: 213. 523 sst.evict_phmbit sst: 189. 523 sst.evict_ptp sst: 188. 523 sst.evict_recover_data sst: 186. 66 sst.fc_skips_pinned page_fault: 2279, sst: 73. 220 sst.first_core_block sst: 130. 525 sst.force_pwrites sst: 192. 524 sst.force_swrites sst: 191. 527 sst.force_updatevs sst: 194. 526 sst.fw_none sst: 193. 222 sst.fw_retries sst: 132. 515 sst.good_sgms sst: 180. 521 sst.hedge_updatevs sst: 184. 522 sst.hedge_writes sst: 185. 121 sst.laps sst: 99. 221 sst.last_core_block sst: 131. 44 sst.level sst: 41. 107 sst.level_1_page_faults page_fault: 1314, sst: 89. 104 sst.lock_waits sst: 86. 154 sst.loop_locks page_fault: 315, sst: 112. 156 sst.loop_lock_time page_fault: 313, 314, sst: 113. 533 sst.makeknown_activations sst: 197. 577 sst.max_seg_state_change_bw page_fault: 1952, 1961, sst: 252. 535 sst.metering_flags sst: 199. 74 sst.meter_ast_locking sst: 78. 562 sst.mod_during_write page_fault: 2788, sst: 228. 115 sst.needc page_fault: 2164, sst: 95. 565 sst.new_pages page_fault: 1895, sst: 237. 400000 sst.nolock sst: 71. 65 sst.nolock_word sst: 70. 400000 sst.notify sst: 216. 547 sst.notify_word sst: 215. 44 sst.no_aste sst: 44. 16 sst.npfs_misses sst: 23. 24 sst.nused page_fault: 1337, 2897, sst: 32. 101 sst.n_trailers sst: 83. 506 sst.oopv page_fault: 2035, sst: 174. 76 sst.page_read_errors page_fault: 2761, sst: 80. 77 sst.page_write_errors page_fault: 2822, sst: 81. 113 sst.pc_io_waits sst: 93. 2 sst.pc_trace sst: 234. 10 sst.pc_trace_pf sst: 232. 106 sst.pdir_page_faults page_fault: 1308, sst: 88. 532 sst.pf_unlock_ptl_meterings page_fault: 1407, sst: 196. 530 sst.pf_unlock_ptl_time page_fault: 1407, sst: 195. 545 sst.pid sst: 212. 14 sst.post_in_core sst: 21. 165 sst.post_list_size sst: 118. 167 sst.post_purge_calls sst: 120. 12 sst.post_purge_time sst: 20. 166 sst.post_purgings sst: 119. 372 sst.pp_meters sst: 159. 170 sst.pre_page_calls sst: 121. 171 sst.pre_page_list_size sst: 122. 172 sst.pre_page_misses sst: 123. 164 sst.pre_page_size sst: 117. 10 sst.pre_page_time sst: 19. 173 sst.pre_pagings sst: 124. 503 sst.pre_seeks_failed page_fault: 2312, sst: 171. 20 sst.ptl page_fault: 299, 302, 307, 318, sst: 25. 32 sst.ptl_wait_ct sst: 36. 40 sst.pts sst: 40. 25 sst.ptwbase page_fault: 1257, sst: 33. 223 sst.pvhtp sst: 133. 133 sst.reads sst: 109. 217 sst.recopies sst: 129. 61 sst.removep sst: 64. 504 sst.resurrections page_fault: 2807, sst: 172. 111 sst.ring_0_page_faults page_fault: 1333, sst: 91. 36 sst.root_astep page_fault: 1312, sst: 39. 64 sst.root_pvtx sst: 68. 112 sst.rqover sst: 92. 17 sst.salv sst: 24. 1 sst.sc_trace sst: 235. 555 sst.segmove_astep sst: 223. 551 sst.segmove_found_synch sst: 219. 550 sst.segmove_io_limit sst: 218. 545 sst.segmove_lock sst: 210. 554 sst.segmove_max_tries sst: 222. 561 sst.segmove_new_addr_astep sst: 227. 553 sst.segmove_n_reads sst: 221. 560 sst.segmove_old_addr_astep sst: 226. 556 sst.segmove_pvtx sst: 224. 552 sst.segmove_synch_disappeared sst: 220. 557 sst.segmove_vtocx sst: 225. 536 sst.seg_fault_calls sst: 203. 576 sst.seg_state_change_limit page_fault: 1939, 1963, 1979, sst: 251. 574 sst.seg_state_chg_delay page_fault: 1965, 1969, sst: 250. 601 sst.seg_state_chg_operation sst: 254. 247 sst.setfaults_acc sst: 147. 246 sst.setfaults_all sst: 146. 512 sst.sgm_pf sst: 177. 514 sst.sgm_sgft sst: 179. 510 sst.sgm_time sst: 176. 153 sst.short_pf_count page_fault: 1479, sst: 111. 124 sst.skipm page_fault: 2268, sst: 102. 125 sst.skipos sst: 103. 123 sst.skipu page_fault: 2250, sst: 101. 122 sst.skipw page_fault: 2302, sst: 100. 0 sst.space sst: 18. 60 sst.startp sst: 62. 114 sst.steps page_fault: 2220, 2258, 2269, sst: 94. 234 sst.stepsa sst: 136. 543 sst.stk_pages_truncated sst: 208. 544 sst.stk_pages_truncated_in_core sst: 209. 542 sst.stk_truncate_shouldnt_did sst: 207. 541 sst.stk_truncate_shouldnt_didnt sst: 206. 540 sst.stk_truncate_should_did sst: 205. 537 sst.stk_truncate_should_didnt sst: 204. 53 sst.strsize sst: 55. 102 sst.synch_activations sst: 84. 103 sst.synch_skips sst: 85. 215 sst.system_type sst: 127. 63 sst.temp_w_event sst: 67. 26 sst.tfreep sst: 34. 15 sst.thrashing sst: 22. 250 sst.total_bf sst: 148. 251 sst.total_bf_pf sst: 149. 105 sst.total_locks_set sst: 87. 163 sst.total_sf sst: 116. 162 sst.total_sf_pf sst: 115. 564 sst.trace_sw page_fault: 1162, sst: 230. 272 sst.tree_count sst: 158. 4 sst.tty_trace sst: 233. 245 sst.updates sst: 145. 56 sst.usedp page_fault: 408, 433, 441, 477, 479, 2171, 2216, 2222, 2271, 2311, 2405, sst: 58. 505 sst.volmap_seg_page_faults sst: 173. 120 sst.wired sst: 98. 216 sst.wired_copies sst: 128. 174 sst.wire_proc_data sst: 125. 143 sst.writes sst: 110. 473 sst.write_hunts page_fault: 2400, sst: 163. 570 sst.write_limit sst: 243. 57 sst.wtct page_fault: 2781, 2783, sst: 60. 472 sst.wusedp page_fault: 421, 423, 437, 439, 481, 483, 513, 2403, 2433, 2475, sst: 161. 563 sst.zero_pages page_fault: 2558, sst: 229. 1000 sst_size sst: 15. 73 stach_header.trace_top_ptr stack_header: 62. 75 stackp page_fault: 375, 380, 385, 388, 2142, pxss_page_stack: 9. 32 stack_frame.arg_ptr page_fault: 342, 1574, 1607, stack_frame: 16. 100 stack_frame.condition_bit stack_frame: 32. 20 stack_frame.condition_word stack_frame: 9. 2000 stack_frame.crawl_out_bit stack_frame: 28. 26 stack_frame.entry_ptr stack_frame: 13. 20 stack_frame.flag_word stack_frame: 24. 400 stack_frame.link_trap_bit stack_frame: 30. 30 stack_frame.lp_ptr page_fault: 295, stack_frame: 15. 20000 stack_frame.main_proc_bit stack_frame: 25. 60 stack_frame.min_length stack_frame: 23. 22 stack_frame.next_sp stack_frame: 10. 36 stack_frame.on_unit_rel_ptrs stack_frame: 19. 30 stack_frame.operator_ptr stack_frame: 14. 37 stack_frame.operator_ret_ptr stack_frame: 20. 20 stack_frame.prev_sp page_fault: 344, 1179, stack_frame: 8. 40 stack_frame.regs stack_frame: 22. 24 stack_frame.return_ptr stack_frame: 12. 10000 stack_frame.run_unit_manager stack_frame: 26. 1000 stack_frame.signaller_bit stack_frame: 29. 22 stack_frame.signaller_word stack_frame: 11. 4000 stack_frame.signal_bit stack_frame: 27. 34 stack_frame.static_ptr stack_frame: 17. 200 stack_frame.support_bit stack_frame: 31. 35 stack_frame.support_ptr stack_frame: 18. 37 stack_frame.translator_id stack_frame: 21. 66 stack_header.assign_linkage_ptr stack_header: 59. 32 stack_header.bar_mode_sp stack_header: 42. 36 stack_header.call_op_ptr stack_header: 44. 10 stack_header.clr_ptr stack_header: 27. 6 stack_header.combined_stat_ptr stack_header: 25. 4 stack_header.cpm_data_ptr stack_header: 24. 13 stack_header.cpm_enabled stack_header: 32. 13 stack_header.cur_lot_size stack_header: 31. 64 stack_header.ect_ptr stack_header: 58. 46 stack_header.entry_op_ptr stack_header: 49. 70 stack_header.heap_header_ptr stack_header: 60. 74 stack_header.in_trace stack_header: 63. 52 stack_header.isot_ptr stack_header: 52. 26 stack_header.lot_ptr stack_header: 39. 12 stack_header.main_proc_invoked stack_header: 29. 12 stack_header.max_lot_size stack_header: 28. 20 stack_header.parent_ptr stack_header: 36. 34 stack_header.pl1_operators_ptr stack_header: 43. 40 stack_header.push_op_ptr stack_header: 46. 42 stack_header.return_op_ptr stack_header: 47. 44 stack_header.ret_no_pop_op_ptr stack_header: 48. 62 stack_header.rnt_ptr stack_header: 57. 12 stack_header.run_unit_depth stack_header: 30. 54 stack_header.sct_ptr stack_header: 53. 30 stack_header.signal_ptr stack_header: 41. 22 stack_header.stack_begin_ptr page_fault: 1175, 1442, 1539, stack_header: 37. 24 stack_header.stack_end_ptr page_fault: 343, 1443, 1540, stack_header: 38. 14 stack_header.system_free_ptr stack_header: 33. 60 stack_header.sys_link_info_ptr stack_header: 56. 72 stack_header.trace_frames stack_header: 61. 50 stack_header.trans_op_tv_ptr stack_header: 51. 56 stack_header.unwinder_ptr stack_header: 54. 16 stack_header.user_free_ptr stack_header: 34. 100 stack_header_end stack_header: 64. 15 stack_size page_fault: 374, pxss_page_stack: 6, 9. 14 startup_sct_index static_handlers: 15. 160 statistics tc_meters: 81. 456 stk_truncate tc_meters: 208. 457 stk_truncate_always tc_meters: 209. 460 stk_trunc_avg_f1 tc_meters: 210. 461 stk_trunc_avg_f2 tc_meters: 211. 136 stock_temp pxss_page_stack: 12. 217 stock_temp_1 pxss_page_stack: 19. 220 stock_temp_2 pxss_page_stack: 19. 424 stopped_stack_0 tc_meters: 189. 70 storage_sct_index static_handlers: 55. 256 store_pattern page_fault: 560, 2002. 1 store_sct_index static_handlers: 4. 66 stringsize_sct_index static_handlers: 53. 74 system_packed_pointer_sct_index static_handlers: 59. 306 system_shutdown page_fault: 2535, tc_meters: 119. 157 system_type tc_meters: 80. 400 system_virtual_time tc_meters: 174. sys_info page_fault: 301, 311, 326, 334, 535, 847, 870, 1151, 1375, 1404, 1407, 1422, 1935, 1971, 1976, 2353, 2520. sys_level page_fault: 1168. sys_trouble_pending page_fault: 1462. 372 tape_polling_time_loc tc_meters: 168. 152 tcpu_scheduling tc_meters: 75. tc_data page_fault: 328, 329, 543, 544, 810, 1340, 1374, 2535, 2722. 0 tc_suspend_lock tc_meters: 15. 110 tdepth tc_meters: 63, 64. 343 tefirst tc_meters: 147. 344 telast tc_meters: 148. 134 temp page_fault: 805, 807, 829, 841, 979, 990, 996, 1094, 1095, 1097, 1098, 1100, 1101, 1105, 1108, 1121, 1126, 1228, 1233, 1235, 1259, 1342, 1343, 1345, 1349, 1350, 1354, 1909, 1911, 1912, 1913, 1917, 1919, 1940, 1951, 1962, pxss_page_stack: 11. 166 temp1 page_fault: 2170, 2274, pxss_page_stack: 15. 167 temp2 pxss_page_stack: 15. 20 te_block tc_meters: 29. 21 te_i_stop tc_meters: 30. 22 te_pre_empt tc_meters: 31. 17 te_wait tc_meters: 28. 165 thread_behind page_fault: 443, 515. 211 thread_in page_fault: 153, 501, 2813, 2841. 214 thread_in_mru page_fault: 512, 2680, 2883. 220 thread_lru_ext page_fault: 154, 521. 173 thread_out page_fault: 155, 464, 2021, 2601, 2894. 145 thread_to_lru page_fault: 156, 403, 525, 2382. throttle_segment_state_changes page_fault: 1793, 1870. 345 timax tc_meters: 149. 4 timer_runout_sct_index static_handlers: 7. time_1 page_fault: 327, 335, 1153, 1376, 1404, 1407. 65 time_out_severity tc_meters: 51. time_v_temp page_fault: 538, 539, 542, 1157. 207 tmp_event pxss_page_stack: 18. 144 tmp_ev_channel pxss_page_stack: 13. 146 tmp_ev_message pxss_page_stack: 13. 202 tmp_ring pxss_page_stack: 17. 274 total_clock_lag tc_meters: 107. 242 total_pf_count tc_meters: 86. 240 total_pf_time tc_meters: 85, 86, 87, 88, 89, 90, 91, 92. 165 total_steps page_fault: 2166, 2259, pxss_page_stack: 15. trace page_fault: 844. 10 trace.data page_fault: 846, 857, sys_trace: 41. 10 trace.data_word sys_trace: 43. 6 trace.flags sys_trace: 37. 377777 trace.index_mask sys_trace: 32. 23 trace.index_shift sys_trace: 31. 5 trace.index_word sys_trace: 30. 377777 trace.last_available_mask sys_trace: 25. 23 trace.last_available_shift sys_trace: 24. 1 trace.last_available_word page_fault: 859, sys_trace: 23. 377777 trace.next_free_mask sys_trace: 21. 23 trace.next_free_shift sys_trace: 20. 0 trace.next_free_word page_fault: 845, 879, sys_trace: 19. 637 trace.no_signal page_fault: 864, 867, 878. 621 trace.no_wrap page_fault: 860, 862. 627 trace.retry_ips page_fault: 869, 874. 400000 trace.send_ips page_fault: 866, sys_trace: 39. 6 trace.send_ips_word page_fault: 865, sys_trace: 38. 4 trace.temp page_fault: 849, 852, sys_trace: 28. 377777 trace.threshold_mask sys_trace: 36. 23 trace.threshold_shift sys_trace: 35. 6 trace.threshold_word page_fault: 863, sys_trace: 34. 2 trace.ttime page_fault: 848, 850, 851, sys_trace: 27. 0 trace_frames.count stack_header: 69. 1 trace_frames.top_ptr stack_header: 70. 521 trace_marker page_fault: 157, 779. 431 trace_mc page_fault: 688. 514 trace_restart_fault page_fault: 158, 772. 525 trace_scheduling page_fault: 159, 785. 505 trace_signaller page_fault: 160, 763. 4010 trace_size sys_trace: 17. 7 trbl_exec_flt sys_trouble_codes: 9. 11 trbl_fault_masked sys_trouble_codes: 11. 12 trbl_fim_flt sys_trouble_codes: 12. 3 trbl_idle_flt sys_trouble_codes: 5. 5 trbl_illeg_flt sys_trouble_codes: 7. 10 trbl_oosb_prds sys_trouble_codes: 10. 2 trbl_prds_fi sys_trouble_codes: 4. 1 trbl_prds_pf page_fault: 1461, sys_trouble_codes: 3. 4 trbl_ptl_fi sys_trouble_codes: 6. 13 trbl_r0_drl_flt sys_trouble_codes: 13. 6 trbl_unexp_flt sys_trouble_codes: 8. trouble_processid page_fault: 1464. 37 trouble_sct_index static_handlers: 30. 551 tv_offset stack_header: 75, 80, 81, 82, 83, 84. 764 type.dir_quota page_fault: 1010, 1015. 754 type_terminal_quota page_fault: 904, 935, 954, 975, 1004. 500 uid_array tc_meters: 229. 32 undefined_fault_sct_index static_handlers: 29. 65 underflow_sct_index static_handlers: 52. 120 unlock_ptl page_fault: 161, 341, 349, 353, 354, 1405, 1417, 1517. 113 unlock_ptl_ext page_fault: 162, 346. 32 unnull_mask page_fault: 269, 2591. unpaged_page_tables page_fault: 1239. 377023 unprotected_null null_addresses: 15. 141 unsavex page_fault: 163, 384, 1079, 2027, 2094, 2129, 2223, 2385, 2476, 2506, 2533, 2568, 2625, 2736, 2742, 2899. 143 unsavex_1 page_fault: 164, 387, 1080, 1918, 1924, 2086, 2130. 2144 unsavex_2 page_fault: 165, 1741, 1749, 2141. unwire_unmask page_fault: 345. 1020 update_csl page_fault: 1093, 2365. 6 upt.current_length unpaged_page_tables: 22. 10 upt.first_entry unpaged_page_tables: 24. 4 upt.iupt_absloc unpaged_page_tables: 20. 5 upt.iupt_last_loc unpaged_page_tables: 21. 7 upt.max_length unpaged_page_tables: 23. 0 upt.sst_absloc page_fault: 1239, unpaged_page_tables: 16. 1 upt.sst_last_loc unpaged_page_tables: 17. 2 upt.upt_absloc unpaged_page_tables: 18. 3 upt.upt_last_loc unpaged_page_tables: 19. 2 upt_entry.ptws unpaged_page_tables: 32. 1 upt_entry.segno unpaged_page_tables: 31. 0 upt_entry.size unpaged_page_tables: 30. 1050 up_csl.dont_count page_fault: 1116, 1119. 1053 up_csl.set_csl page_fault: 1109, 1113, 1118, 1123. 322 used_itt tc_meters: 132. 430 vcpu_response_bounds tc_meters: 192. 433 vcpu_response_bounds_size tc_meters: 193. virtual_delta page_fault: 540, 541. volmap_page page_fault: 2740. 224 volmap_page_temp pxss_page_stack: 21. 233 volmap_page_temp_1 pxss_page_stack: 24. 466 volmap_polling_time tc_meters: 219. 142 volmap_save_ptr pxss_page_stack: 12. 162 volmap_save_sdw pxss_page_stack: 14. 140 volmap_temp pxss_page_stack: 12. 170 volmap_temp_1 pxss_page_stack: 15. 171 volmap_temp_2 pxss_page_stack: 15. vtime_count page_fault: 533, 1154. 234 vtocx page_fault: 2124, pxss_page_stack: 25. 12 waits tc_meters: 23. 200 waittime tc_meters: 83, 84. 1345 wait_any_event page_fault: 1399, 1499. 1347 wait_any_event_apte page_fault: 1295, 1403. 326 wait_enable tc_meters: 136. 1344 wait_page_fault_event page_fault: 1397. 1336 wait_ret page_fault: 1388, 1490. 1361 wait_return page_fault: 116, 1419. 1370 wait_return_no_delay page_fault: 1424, 1433. 11 wakeups tc_meters: 22. 0 wcte.bp wcte: 7. 6 wcte.cpu_sum wcte: 25. 2 wcte.credits wcte: 21. 200000 wcte.defined wcte: 11. 1 wcte.defined_word wcte: 16. 5 wcte.eligibilities wcte: 24. 1 wcte.flags wcte: 9, 15, 16, 17, 18, 19. 0 wcte.fp wcte: 6. 40000 wcte.governed wcte: 13. 1 wcte.governed_word wcte: 18. 63 wcte.governing_credits wcte: 50. 20000 wcte.interactive_q wcte: 14. 1 wcte.interactive_q_word wcte: 19. 100000 wcte.io_priority wcte: 12. 1 wcte.io_priority_word wcte: 17. 26 wcte.maxel wcte: 36. 62 wcte.maxf wcte: 49. 3 wcte.minf wcte: 22. 400000 wcte.mnbz wcte: 10. 1 wcte.mnbz_word wcte: 15. 27 wcte.nel wcte: 37. 36 wcte.number_processing wcte: 45. 31 wcte.number_queues wcte: 40. 30 wcte.number_thinks wcte: 39. 4 wcte.pin_weight page_fault: 1362, wcte: 23. 25 wcte.purging wcte: 35. 14 wcte.quantum1 wcte: 28. 15 wcte.quantum2 wcte: 29. 22 wcte.rcount1 wcte: 32. 23 wcte.rcount2 wcte: 33. 24 wcte.realtime wcte: 34. 10 wcte.resp1 wcte: 26. 12 wcte.resp2 wcte: 27. 16 wcte.rmeter1 wcte: 30. 20 wcte.rmeter2 wcte: 31. 0 wcte.thread wcte: 5. 42 wcte.total_processing_time wcte: 46. 34 wcte.total_queue_time wcte: 42. 32 wcte.total_think_time wcte: 41. 52 wcte.total_vcpu_time wcte: 47. wired_hardcore_data page_fault: 717, 718, 719, 720, 721, 722, 723, 724, 727, 728, 729, 730, 731, 732, 733, 734. withdraw page_fault: 2128. 347 working_set_addend tc_meters: 151. 307 working_set_factor tc_meters: 120. 454 work_class_idle tc_meters: 207. write page_fault: 1078. 2464 write.dont_set_fms page_fault: 2510, 2514, 2517, 2530. 2524 write.nz.was_real_null page_fault: 2584. 2525 write.pnz.to_disk page_fault: 2579, 2590. 2460 write.set_parent_fms page_fault: 2524, 2528. 2756 write_device_inop page_fault: 2830, 2875. 2 write_entry page_fault: 1624, 2618, page_info: 31. 2426 write_page page_fault: 166, 1645, 2436, 2487, 2493. 245 ws_sum tc_meters: 89. 206 x5 pxss_page_stack: 17. 16 zerodivide_sct_index static_handlers: 17. zeroing_page page_fault: 2857. 32 zero_idle tc_meters: 36. zero_page page_fault: 2559. NO FATAL ERRORS ----------------------------------------------------------- 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