Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
RCCBK
Control Block Contents
RCCBK DSECT
Cross Reference (Contains links to field and bit definitions)
RCCBK Prolog
NAME : HCPRCCBK DESCRIPTION: RCPU DATA AREA MAPPING DSECT : RCCBK FUNCTION : This control block maps the RCPU data area and defines constants used by the RCPU subsystem. OCATED IN - HCPRCCCM - RPCU common data area CREATED BY : System initialization DELETED BY : System termination SERIALIZED : RELOCATION CONSIDERATIONS : None
RCCBK Control Block Content
RCCBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure RCCBK RCPU DATA AREA MAPPING SAVBK management zappable constants and queues 0000 0 Dbl-Word 8 RCCURCQ SAVBK reclaim queue (unsorted) 0008 8 Address 4 RCCSRCQ SAVBK reclaim queue (sorted) 000C 12 Address 4 RCCSFQ SAVE frame queue 0010 16 Signed 4 RCCRCNUM Number of SAVBKs being reclaimed 0014 20 Signed 4 RCCSVNUM Number of SAVBKs allocated 0018 24 Dbl-Word 8 RCCSFQL (6) SAVE frame queue lock 0048 72 Signed 8 RCCICFAB Incomplete frame reclaim time limit in seconds 0050 80 Signed 8 RCCLNINT HCPSAMFS sampling period, 10 sec. 0058 88 Signed 4 RCCNOINT Number of intervals to average .... 1... RCCMXAVS 8 RCCMXAVS Scaling factor for below &VX1NASG 005C 92 Signed 4 RCCMAXAV Maximum percentage of buffers available 0060 96 Signed 4 RCCMINSV Minimum number of saveareas per processor 0064 100 Address 1 RCCSTFLG Free storage availability flags 1... .... RCCSAVL X'80' RCCSAVL Free storage available for SAVBKs 0065 101 Bitstring 1 * (3) Reserved for future IBM use MP Defer Data Area Checkpoint determination intervals 0068 104 Signed 8 RCCMPDLY 1/10 second, until adjusted by HCPISR to be a function of the minor timeslice. 0070 112 Dbl-Word 8 * Reserved for IBM use 0078 120 Address 1 RCCMPDAC MP Defer Active Test & Set flag 0079 121 Bitstring 3 * Reserved "CP Loss of Control" deferred work queues 007C 124 Address 4 RCCMPCQ0 Work for which 0 or more MP checkpoints have occurred 0080 128 Address 4 RCCMPCQ1 Work for which 1 or more MP checkpoints have occurred "Loss of Control" deferred work queues 0084 132 Address 4 RCCMPSQ0 Work for which 0 or more MP checkpoints have occurred 0088 136 Address 4 RCCMPSQ1 Work for which 1 or more MP checkpoints have occurred RCCCPUAA: Array of CPU addresses for online processors Function : Used to get the CPU address of a CPU with a given PFXINDEX. The PFXINDEX divided by 2 is the displacement of a CPU's entry in this array. VMDHPLDV can also be used to find a CPU's entry in this array due to the direct relationship (VMDHDVSH) between VMDHPLDV and PFXINDEX for a given CPU. Finally, since VMDHPLDV is just the displacement of the PLDV in the array of PLDVs (HCPDSVST), the address of a PLDV can be used to index into this array as well. The following are useful relationships: 1) VMDHPLDV = addr(PLDV) - addr(HCPDSVST) 2) PFXINDEX = VMDHPLDV / 2**VMDHDVSH 3) RCCCPUAA index = PFXINDEX / 2 Serialized : This array should be changed only when the VARY lock is held or for the IPL processor at initialization time. No serialization needed to examine an entry. When an entry in the array is being examined, a value of x'FFFF' means the processor is no longer available. Any value other than x'FFFF' means either that the processor is available or that the processor has been varied off but the 2 minute wait interval before its storage is released has not expired. Do not assume that the processor is available just because its entry in this array is other than x'FFFF'. 008C 140 Signed 2 RCCCPUAA (64) CPU address array STSI response data areas. Function : A managed, in memory copy of STSI output. The following STSI responses are maintained: 1.1.1 and 1.2.2. For STSI 1.1.1 and 1.2.2, an additional pair of data areas is maintained that contains the most recent responses with non-transient states indicated. See SSI1TRNS and HCPSSICC. These are needed for Diagnose x'2E0'. References to these data areas during CP initialization must test the pointers to ensure they are initialized (nonzero pointer) before using the response areas. HCPSSIBK maps the STSI responses. Serialized : These data areas are updated only during system initialization while running on a single processor, or later while running on the SYSTEM VMDBK. Each time the STSI responses are updated, a new data area is allocated and the pointers below are updated. The prior response area is released by an MPDFR call to HCPSSIRL to allow existing references to continue to use the old response areas until their next loss of control. No serialization is provided to consumers of these data areas that allows access over a loss of control. The STSI response area may have been released during the loss of control. No form of serialization can provide a self-consistency guarantee for the pair of responses for STSI 1.1.1 and 1.2.2 since changes may occur between the STSI instruction invocations that affect values reported in both STSI responses. For example, changes to capability values reported by STSI 1.2.2 may be explained by corresponding changes to CCR and CAI values reported by STSI 1.1.1. 010C 268 Address 4 RCC111 Most recent STSI 1.1.1 response. 0110 272 Address 4 RCC122 Most recent STSI 1.2.2 response. 0114 276 Address 4 RCC111NT Non-transient STSI 1.1.1 resp. 0118 280 Address 4 RCC122NT Non-transient STSI 1.2.2 resp. RCCEMSxx: EMSBK Cleanup Counts and Type flags Function : Track statistics for cleanup of EMSBKs found on the PFXPG of a processor during VARY processing. The individual counts are for different points in the processing of VARY OFF PROC and VARY ON PROC. If the EMSBKs are cleaned up after the HCPMPCFL processing, then the EMSBKs may have been waiting to be processed for 2 minutes or more. This should be avoided because the result will be that the tasks waiting for completion of HCPSGP's processing will appear to hang while the EMSBK is on the PFXEMSAN queue. Currently, this is only the case for HCPSGPNC's callers indicated by RCCEMSNF.RCCEMSNC being on. There should be a count field and flag byte for each caller of HCPSGPDR. Serialized : All RCCEMSxx fields are serialized by HCPRCCVA - VARY Processor Lock. 011C 284 Signed 4 RCCEMSFL EMSBK cleanups done by hcpmpcFL. 0120 288 Signed 4 RCCEMSOF EMSBK cleanups done by hcpmpsOF. 0124 292 Signed 4 RCCEMSON EMSBK cleanups done by hcpmpsON. 0128 296 Signed 4 RCCEMSFS (0) EMSBK cleanup flags. 0128 296 Bitstring 1 RCCEMSLF EMSBK type flags for RCCEMSFL. 1... .... RCCEMSAR X'80' RCCEMSAR Alt Proc Recovery type EMSBKs. .1.. .... RCCEMSSM X'40' RCCEMSSM Switch Master type EMSBKs. ..1. .... RCCEMSLC X'20' RCCEMSLC Load Control type EMSBKs. ...1 .... RCCEMSNC X'10' RCCEMSNC New CPU type EMSBKs. 0129 297 Bitstring 1 RCCEMSFF EMSBK type flags for RCCEMSOF. 1... .... RCCEMSAR X'80' RCCEMSAR Alt Proc Recovery type EMSBKs. .1.. .... RCCEMSSM X'40' RCCEMSSM Switch Master type EMSBKs. ..1. .... RCCEMSLC X'20' RCCEMSLC Load Control type EMSBKs. ...1 .... RCCEMSNC X'10' RCCEMSNC New CPU type EMSBKs. 012A 298 Bitstring 1 RCCEMSNF EMSBK type flags for RCCEMSON. 1... .... RCCEMSAR X'80' RCCEMSAR Alt Proc Recovery type EMSBKs. .1.. .... RCCEMSSM X'40' RCCEMSSM Switch Master type EMSBKs. ..1. .... RCCEMSLC X'20' RCCEMSLC Load Control type EMSBKs. ...1 .... RCCEMSNC X'10' RCCEMSNC New CPU type EMSBKs. 012B 299 Bitstring 1 * Reserved for IBM use. RCCLFTIM: Array of CPU-Measurement Facility "counter lifetime" values. Function : Used to identify separate "lifetimes" for CPU-Measurement Facility counters. This array is indexed by CPU address shifted 2 bits left (multiplied by 4). These are monotonically incrementing values that indicate when a new "lifetime" begins. Cumulative counter values from two different "lifetimes" should not be used to compute delta values. New "lifetimes" logically begin any time the counters are reset to zero. For our purposes, we will define a new "lifetime" to begin when we activate CPU- Measurement Facility counters for a given CPU. The consequence of this is that we will start a new "lifetime" when monitor collection of the counters is stopped and restarted, even if the counters were not reset to zeroes. Serialized : This array is serialized by processor local serialization. Each CPU will only ever update its own entry. 012C 300 Signed 4 RCCLFTIM (64) Counter lifetime array CPU-Measurement Facility buffers Function : Per CPU pointers to buffers containing the most recent output to Query Counter Information (QCTRI) and Query Sampling Information (QSI). These pointers are indexed by CPU address. A value of zero indicates that this CPU has never issued a QCTRI or QSI instruction. The first time a CPU issues the instruction, it will allocate the buffer and store it into this array. All subsequent executions of the instruction will reuse the buffer. These buffers persist as debug information and are never released, once allocated. Serialized : This array is serialized by processor local serialization. Each CPU will only ever update its own entry. Initially, when a CPU's entry is zero, it will allocate a buffer and store the address in its entry. On subsequent uses, it will find a non-zero value and reuse its buffer. 022C 556 Address 4 RCCQCTRI (64) QCTRI buffer array 032C 812 Address 4 RCCQSI (64) QSI buffer array 042C 1068 Signed 4 * Reserved for future IBM use. STSI 15.1.x response data area & system topology fields Function : To save System Topology (STSI 15.1.x) data and counters related to how often the data has been updated. A lock is defined as these fields can only be updated when the lock is held exclusive and can only be read/copied when the lock is held shared. System Topology data is saved in storage for 1st level CP systems. Periodically, CP polls (via PTF FC 2) to determine if the system topology has changed. If it has, STSI 15.1.x is issued to update the System Topology data in storage. When monitor needs to cut a system topology configuration record (D1R26) or an event record (D5R14), the fields are copied while the lock is held shared to ensure the values are not being updated at the time. The lock is released before the copied data is passed to the monitor routine because monitor might lose control while processing the data. HCPSSIBK maps the STSI responses including the first part of the STSI 15.1.x response. Serialized : The following data areas are serialized by the RCCTOPLK lock. This lock needs to be held as follows to ensure these fields are kept in sync and apply to the same instance of system topology (STSI 15.1.x) response: EXCLUSIVE: * Whenever any of the fields are changed. * For STSI data updates, the lock must be held from BEFORE the PTF FC 2 until after the STSI 15.1.x is issued to ensure the saved STSI data is the most current. SHARED: * Whenever 2 or more fields are read/copied and need to be in sync with each other. This lock is *NOT* to be held over a loss of control. 0430 1072 Dbl-Word 8 RCCTOPLK (3) System Topology 15.1.x LoCKword 0448 1096 Bitstring 1 RCCTOPFG Flags for STSI 15.1.x information 1... .... RCCTOPSP X'80' RCCTOPSP Indicates whether system topology facility is supported. The rest of the system topology fields are only valid when this bit is ON. 0449 1097 Bitstring 1 RCCSTSIP STSI Parameters: Bits 0-4 = Reserved, stored 0 .... .111 RCCMNEST X'07' Bits 5-7 = RCCMNEST (like PCCMNEST) Value of selector-2 (x) used in most recent STSI 15.1.x ins that CP issued. If PCCMNEST=0, RCCMNEST=2 and use STSI 15.1.2 044A 1098 Bitstring 2 * Reserved for IBM use 044C 1100 Address 4 RCC151x Most recent STSI 15.1.x response. This 31-bit address points to the 4K page holding the STSI 15.1.x response. 0450 1104 Signed 4 RCCTOPPL Count of times system topology was polled by CP via PTF FC 2. 0454 1108 Signed 4 RCCTOPCH Count of times system topology was found changed and was updated in storage (aka number of times that PTF FC 2 returned CC=1)
RCCBK Storage Layout
*** RCCBK - RCPU DATA AREA MAPPING * * +-------------------------------------------------------+ * 0 | RCCURCQ | * +---------------------------+---------------------------+ * 8 | RCCSRCQ | RCCSFQ | * +---------------------------+---------------------------+ * 10 | RCCRCNUM | RCCSVNUM | * +---------------------------+---------------------------+ * 18 | | * = RCCSFQL = * | | * +-------------------------------------------------------+ * 48 | RCCICFAB | * +-------------------------------------------------------+ * 50 | RCCLNINT | * +---------------------------+---------------------------+ * 58 | RCCNOINT | RCCMAXAV | * +---------------------------+------+--------------------+ * 60 | RCCMINSV |:STFLG|////////////////////| * +---------------------------+------+--------------------+ * 68 | RCCMPDLY | * +-------------------------------------------------------+ * 70 |///////////////////////////////////////////////////////| * +------+--------------------+---------------------------+ * 78 |:MPDAC|////////////////////| RCCMPCQ0 | * +------+--------------------+---------------------------+ * 80 | RCCMPCQ1 | RCCMPSQ0 | * +---------------------------+---------------------------+ * 88 | RCCMPSQ1 | | * +---------------------------+ | * 90 | | * = RCCCPUAA = * | +---------------------------+ * 108 | | RCC111 | * +---------------------------+---------------------------+ * 110 | RCC122 | RCC111NT | * +---------------------------+---------------------------+ * 118 | RCC122NT | RCCEMSFL | * +---------------------------+---------------------------+ * 120 | RCCEMSOF | RCCEMSON | * +------+------+------+------+---------------------------+ * 128 |:EMSLF|:EMSFF|:EMSNF|//////| | * +------+------+------+------+ | * 130 | | * = RCCLFTIM = * | +---------------------------+ * | | | * +---------------------------+ | * 230 | | * = RCCQCTRI = * | +---------------------------+ * | | | * +---------------------------+ | * 330 | | * = RCCQSI = * | +---------------------------+ * 428 | |///////////////////////////| * +---------------------------+---------------------------+ * 430 | | * = RCCTOPLK = * | | * +------+------+-------------+---------------------------+ * 448 |:TOPFG|:STSIP|/////////////| RCC151X | * +------+------+-------------+---------------------------+ * 450 | RCCTOPPL | RCCTOPCH | * +---------------------------+---------------------------+ * 458 * *** RCCBK - RCPU DATA AREA MAPPING
RCCBK Cross Reference
Symbol Dspl Value -------------- ---- ----- RCCCPUAA 008C RCCEMSAR 0128 80 RCCEMSAR 0129 80 RCCEMSAR 012A 80 RCCEMSFF 0129 RCCEMSFL 011C RCCEMSFS 0128 RCCEMSLC 0128 20 RCCEMSLC 0129 20 RCCEMSLC 012A 20 RCCEMSLF 0128 RCCEMSNC 0128 10 RCCEMSNC 0129 10 RCCEMSNC 012A 10 RCCEMSNF 012A RCCEMSOF 0120 RCCEMSON 0124 RCCEMSSM 0128 40 RCCEMSSM 0129 40 RCCEMSSM 012A 40 RCCICFAB 0048 RCCLFTIM 012C RCCLNINT 0050 RCCMAXAV 005C RCCMINSV 0060 RCCMNEST 0449 07 RCCMPCQ0 007C RCCMPCQ1 0080 RCCMPDAC 0078 RCCMPDLY 0068 RCCMPSQ0 0084 RCCMPSQ1 0088 RCCMXAVS 0058 08 RCCNOINT 0058 RCCQCTRI 022C RCCQSI 032C RCCRCNUM 0010 RCCSAVL 0064 80 RCCSFQ 000C RCCSFQL 0018 RCCSRCQ 0008 RCCSTFLG 0064 RCCSTSIP 0449 RCCSVNUM 0014 RCCTOPCH 0454 RCCTOPFG 0448 RCCTOPLK 0430 RCCTOPPL 0450 RCCTOPSP 0448 80 RCCURCQ 0000 RCC111 010C RCC111NT 0114 RCC122 0110 RCC122NT 0118 RCC151x 044C
Copyright IBM Corporation, 1990, 2011