|
Hex Dec Type/Val Lng Label (dup) Comments
---- ---- --------- ---- -------------- --------
0000 0 Structure RSMBK EQUATE SYMBOLS
0000 0 Bitstring 48 * HCPRSM prolog area
0030 48 Character 1 * (0) For source code searching
| Real Storage Management Block. |
| Located at HCPRSMCM. |
Generate either HCPRSM CSECT for the HCPRSM module or
RSMBK DSECT for other users of this control block.
Now define the RSMBK.
0030 48 Signed 4 RSASAVFR Non-negative count of frames in
use by the save area manager.
Serialized by save page queue
lock (RCCSFQL)
System-real space information
0034 52 Address 4 RSARSAST Host Logical Address ASTE @ for
the system-real space, which
identity maps all of real storage
(including real storage above 2G)
via an RSD (meaning no DAT tables
are required)
0038 56 Signed 4 RSAMSARC Count of machine storage areas
(MSA) below the highest sysgen
frame (RSASTORE)
003C 60 Signed 4 RSAMSASC Count of machine storage areas
(MSA) below the highest sysgen
frame (RSASTORE) or addressable
frame (SYSTORS) whichever is
lower
0040 64 Signed 4 RSAMSARH Count of machine storage areas
(MSA) above the highest sysgen
frame (RSASTORE)
0044 68 Signed 4 RSADmpCP Count of CP in-use frames to be
dumped. It includes all frames
having FRMCP on in the frame
code, except for the following
frames that do not contain CP
data: 1) VDISK frames. 2)
Crash-kernel frames. This count
is also used to allocate
additional space for a CP dump as
CP grows. Compare and Swap logic
must be used to update this
field. If this 32-bit field is
treated as SIGNED, it will
overflow when RSADmpCP reaches 2G
frames, or 8T bytes. If this
32-bit field is treated as
UNSIGNED, it will overflow when
RSADmpCP reaches 4G frames, or
16T bytes.
0048 72 Signed 4 RSATRSAV Count of DPA frames in use for
DEFERIO traces. This count is
used to ensure that the number of
DPA frames allocated for DEFERIO
traces does not exceed 75% of the
pageable pages in the DPA. This
count is serialized by TXCDFRIO,
the DEFERIO frames lock.
004C 76 Signed 4 RSASTORE Real machine actual storage size
below 2G. Calculated during
system init. RSASTORE can be
updated repeatedly by SET STORAGE
processing. No serialization over
RSASTORE is in effect.
Storage for 64 alternate processor PFXPGs are allocated
during initialization from storage following the CP nucleus
and is identity-mapped into the System Execution Space.
The CPU address of the processor is used to index into this
storage when allocating/deallocating prefix pages.
Prefix pages are allocated below 2G in storage. Since they
are allocated from identity-mapped storage the addresses
can be used as host real or host logical (SXS) addresses.
0050 80 Address 4 RSAPFXAF First alternate proc PFXPG addr.
Host real = host logical address.
0054 84 Address 4 RSAPFXND Address of the end of alternate
processor PFXPG table. Points to
the byte just after the last
PFXPG in the table. Host real =
host logical address.
For cases where the IPL processor's PFXPG resides in HCPPFX
but not in the PFXPG table we hold the PFXPG addresses in
the indexed array pointed to by RSAPFXAR. This array is
indexed by CPU address.
0058 88 Address 4 RSAPFXAR first PFXPG address in an array
of PFXPG addresses indexed by CPU
address.
005C 92 Signed 4 * Reserved for future IBM use
0060 96 Dbl-Word 8 * Reserved for future IBM use
This area contains information generally regarding the
"lazy initialization" of host storage, although there
are other uses here.
0068 104 Signed 4 RSATASKB (0) Task active bits. After system
initialization, always use
Compare-And-Swap to update any
bit in this word.
0068 104 Bitstring 1 RSATSKB0 RSATASKB task bits 0- 7
0069 105 Bitstring 1 RSATSKB1 RSATASKB task bits 8-15
006A 106 Bitstring 1 RSATSKB2 RSATASKB task bits 16-23
006B 107 Bitstring 1 RSATSKB3 RSATASKB task bits 24-31
1... .... RSALzTsk X'80' RSALzTsk Reserved, in
reality. HCPISG uses a work byte
whose bits are defined like the
bits in RSATSKB3. Bit RSALzTsk is
used in that work byte, and is
not actually set in RSATSKB3.
RSALzTsk is defined here only to
reserve the bit so that bit x'80'
is not defined some time in the
future for some other purpose,
thus confusing HCPISG.
.1.. .... RSAPCQUA X'40' RSAPCQUA HCPPCQUA is
unassigning storage
..1. .... RSAneB2G X'20' RSAneB2G Phonetically: RSA
"ini" B2G. Look to initialize
frames < 2G
...1 .... RSAneCNT X'10' RSAneCNT Phonetically: RSA
"ini" CNT. Indicates RSAFNOTI
must be re-calculated.
.... .1.. RSAneSST X'04' RSAneSST Phonetically: RSA
"ini" SetStor. SET STOR is adding
memory, so Lazy Init should call
HCPPTGRD to kick-off any deferred
tasks
.... ..1. RSAneSKP X'02' RSAneSKP Lazy
Initialization should skip this
pass, but should be sure to set
SYSTEMMP's VMDINI2G ON.
.... ...1 RSAneTSK X'01' RSAneTSK Phonetically: RSA
"ini" TSK. Indicates low priority
frame initialization task is
active.
006C 108 Signed 4 RSADmpAd Number of frames that are CP
frames in the storage being added
by SET STORAGE and should
therefore be dumped.
0070 112 Address 8 * Reserved
0078 120 Signed 8 RSALGFRM Count of usable frames >= 2G.
Only pageable or available frames
are considered "usable" since
they can be used to satisfy new
requests. Non-pageable frames
can't be stolen so they aren't
considered usable. Pageable type
frames that are pinned are
considered non-pageable while
pinned.
0080 128 Signed 8 RSAGOFFL Count of offline frames >= 2G.
0088 136 Address 8 RSAGSTOR Host Real Address Last
addressable byte, including
storage > 2G. Calculated
during system init. RSAGSTOR can
be updated repeatedly by SET
STORAGE processing. See
RSAQStoreTS for serialization.
0090 144 Address 8 RSASTORL Host Real Address Highest real
host storage addr, including
STANDY and RESERVED. This is
uncapped. Calculated from SCLP
storage data or Diagnose. See
RSAQStoreTS for serialization.
0098 152 Bitstring 3 * Reserved for IBM use.
009B 155 Bitstring 1 RSAQStoreTS TS lock to allow atomic updates
to fields used by QUERY STORE so
accurate results are always
reported. Fields that are
serialized by this lock: HCPXREF
SYSGSTBY,SYSGSTRS,SYSPERMA
HCPXREF SYSRECNF
009C 156 Address 4 * (0) Force a cross reference The
problem with uncommenting the
XREFs is that all modules that
include the RSMBK would have to
include the SYSCM.
009C 156 Address 4 * Reserved
Memory Initialization and Reconfiguration
00A0 160 Address 8 RSALG1ST Address of first FRMTE for frames
being examined for FRMNOTI by
Lazy Initialization
00A8 168 Address 8 RSALGLST Address of last FRMTE for frames
being examined for FRMNOTI by
Lazy Initialization
00B0 176 Address 8 * Reserved
00B8 184 Address 8 * Reserved
00C0 192 Address 8 RSAni1ST Lowest FRMTE converted to
FRMNOTI, or all FFs
00C8 200 Address 8 RSAniLST Highest FRMTE converted to
FRMNOTI, or zero
00D0 208 Address 8 * Reserved
00D8 216 Address 8 * Reserved
00E0 224 Address 8 RSANOTIB Address of FRMTE for the highest
frame marked FRMNOTI.
00E8 232 Signed 8 RSAFNOTI Count of FRMNOTI FRMTEs.
00F0 240 Address 8 * Reserved
00F8 248 Address 8 * Reserved
FRMOFFLN/OFFC things, which means
FRMCSB0 = FRMOFFLN
FRMID = 'OFFC'
0100 256 Signed 8 RSAoffcB Bytes FRMOFFLN/OFFC B2G
0108 264 Signed 8 RSAoffcA Bytes FRMOFFLN/OFFC A2G
0110 272 Signed 8 *
0118 280 Signed 8 *
SCLP RSE exclusive lock
0120 288 Dbl-Word 8 rsaRSElk (3)
0138 312 Dbl-Word 8 * (3) Reserved
0150 336 Address 4 rsaDSRdun Debug: chain of "done" DSRBKs
0154 340 Address 4 rsaDSRBK - Address of active DSRBK - Zero
if no DSRBK is active -
x'80000001' special non-zero
"empty", during system
initialization
00000001 rsaDSRBKmt x'80000001' rsaDSRBK is empty,
but non-0
Cleared Global Available List Data:
The Cleared Global Available list is a list of FRMTEs
singly linked by FRMFPNTG. FRMBPNTG contains the PFRA.
The list is terminated by a zero in FRMFPNTG.
When the list is empty, RSACGALFirst = zero.
When the list is empty, RSACGALLast = zero.
When the list is empty, RSACGALCnt = zero.
0158 344 Signed 8 RSACGALFirst First Pointer: Host Logical
Address of the first FRMTE on the
Cleared Global Available List.
0160 352 Signed 8 RSACGALLast Last Pointer: Host Logical
Address of the last FRMTE on the
Cleared Global Available List.
0168 360 Signed 8 RSACGALCnt Non-negative count of the total
number of FRMTEs on the Cleared
Global Available List.
0170 368 Address 8 RSACGALHT High Threshold: Non-negative
target number of FRMTEs for the
background replenishment task to
have on the Cleared Global
Available List. Note: As
currently implemented, this field
can really only be a value that
can be represented with 31 bits.
0178 376 Address 8 RSACGALMT Middle Threshold: Non-negative
target number of FRMTEs for the
foreground replenishment task to
have on the Cleared Global
Available List. Note that we do
not want to fill to the Upper
Threshold in the foreground
because this might take too long
and we'd rather have the
replenishment done in the
background if possible. Note: As
currently implemented, this field
can really only be a value that
can be represented with 31 bits.
0180 384 Address 8 RSACGALLT Lower Threshold: Non-negative
number of FRMTEs on the Cleared
Global Available List below which
the Dispatcher must call a
foreground replenishment task
since the background task is not
being called frequently enough to
keep the list at a sufficient
level. Note: As currently
implemented, this field can
really only be a value that can
be represented with 31 bits.
0188 392 Signed 8 RSACGALLK (6) Spin-lock word to control access
to the Cleared Global Available
List. Modified with
HCPLKCAL/HCPULCAL.
01B8 440 Signed 4 RSACGALRL Replenishment Lock. Word used to
ensure the CGAL replenishment
routine is only invoked by the
dispatcher on one processor at a
time. This ensures only one of
the background or foreground
replenishment tasks are running
at a time. This word can be in
any of the following states as
defined in HCPEQUAT: DSPNOBFW -
no work to do DSPFSCHD -
foreground scheduled DSPFACTV -
foreground active DSPBSCHD -
background scheduled DSPBACTV -
background active Serialized by
compare-and-swap
End of Cleared Global Available List Data Area
Uncleared Global Available zones. UGAL
01BC 444 Bitstring 1 RSAStatfg Stat flag. Used to indicate that
HCPALUST should be called to
examine the thresholds for the
various request types.
1... .... RSACallStats X'80' Must call the stats
routine.
01BD 445 Bitstring 3 * Reserved for IBM use
01C0 448 Signed 8 RSAUGALLock (6)
Exclusive spin lock required to
modify the UGAL chains of AvlZns.
01F0 496 Address 4 RSAUGALSa2g Points to a counter of array
entries followed by an array of
pointers for >2G AvlZn blocks.
These AvlZn blocks are also in an
unordered ring, where each AvlFP
points to another AvlZn block.
The ring is cyclical with no
header (i.e., no AvlZn will point
to the RSMBK, although HCPRSMZ2
can always be used as the ring's
starting AvlZn block).
01F4 500 Address 4 RSAUGALSb2g Points to a counter of array
entries followed by an array of
pointers for <2G AvlZn blocks.
These AvlZn blocks are also in an
unordered ring, where each AvlFP
points to another AvlZn block.
The ring is cyclical with no
header (i.e., no AvlZn will point
to the RSMBK, although HCPRSMZ0
can always be used as the ring's
starting AvlZn block).
01F8 504 Signed 8 RSAAvlCntB Count of FRMTEs housed by each
below 2G AvlZn.
0200 512 Signed 8 RSAAvlLenFB Length of those FRMTEs.
0208 520 Signed 8 RSAAvlCntA Count of FRMTEs housed by each
above 2G AvlZn.
0210 528 Signed 8 RSAAvlLenFA Length of those FRMTEs.
"Active" in the next three comments means AvlNoAlloc=0
0218 536 Signed 4 RSAPZonesActiveB2G
Number of (permanent) zones
active B2G.
021C 540 Signed 4 RSAPZonesActiveA2G
Number of permanent zones active
A2G.
0220 544 Signed 4 RSARZonesActiveA2G
Number of reconfigurable zones
active A2G.
0224 548 Signed 4 RSAAvlZnsPerDSRU
Number of zones starting at a
base zone (AvlFlag1.AvlIsDSRBase)
that make up a DSR Unit. Chained
via AvlFP. This number of zones
are added or removed as a unit.
0228 552 Signed 8 * (6) Reserved for IBM use.
Area concerning type any contigs request.
Note initial thresholds are set by HCPALUSR during system
initialization. Any values here are only temporary.
0258 600 Signed 8 RSATACThresh (0)
Threshold information. Mapped by
Threshold DSECT.
0258 600 Signed 4 * Protect threshold for type any
contigs supply. Protection is
from type any pageable singles
requests.
025C 604 Signed 4 * High threshold for type any
contigs supply.
0260 608 Signed 4 * Low threshold for type any
contigs supply.
0264 612 Signed 4 * The "initial value" set by ALUSR.
RAS only.
0268 616 Signed 4 * Low water mark of type any
contigs supply.
026C 620 Signed 4 * Number of times LT for type any
contigs supply was incremented
because the count hit zero.
0270 624 Signed 4 * Number of times LT for type any
contigs supply was incremented
because the count got to close to
zero.
0274 628 Signed 4 * Number of times LT for type any
contigs was decremented because
the count didn't get close enough
to zero.
0278 632 Signed 4 * Number of times LT for type any
contigs was good.
027C 636 Bitstring 1 * Current condition of type any
contigs supply.
027D 637 Bitstring 1 * Threshold flag.
027E 638 Bitstring 2 * Reserved for future IBM use.
0280 640 Signed 8 * Debug field. End of fields mapped
by Threshold DSECT.
0288 648 Signed 8 * (20) Reserved for IBM use.
0328 808 Signed 8 * (15) Reserved for IBM use.
03A0 928 Signed 8 * (15) Reserved for IBM use.
0418 1048 Signed 8 * (15) Reserved for IBM use.
0490 1168 Signed 8 * (15) Reserved for IBM use.
Area concerning type any singles requests.
Note initial thresholds are set by HCPALUSR during system
initialization. Any values here are only temporary.
0508 1288 Signed 8 RSATASThresh (0)
Threshold information. Mapped by
Threshold DSECT.
0508 1288 Signed 4 * Protect threshold not in use.
050C 1292 Signed 4 * High threshold for type any
singles supply.
0510 1296 Signed 4 * Low threshold for type any
singles supply.
0514 1300 Signed 4 * The "initial value" set by ALUSR.
RAS only.
0518 1304 Signed 4 * Low water mark of type any
singles supply.
051C 1308 Signed 4 * Number of times LT for type any
singles supply was incremented
because the count hit zero.
0520 1312 Signed 4 * Number of times LT for type any
singles supply was incremented
because the count got to close to
zero.
0524 1316 Signed 4 * Number of times LT for type any
singles was decremented because
the count didn't get close enough
to zero.
0528 1320 Signed 4 * Number of times LT for type any
singles was good.
052C 1324 Bitstring 1 * Current condition of type any
singles supply.
052D 1325 Bitstring 1 * Threshold flag.
052E 1326 Bitstring 2 * Reserved for future IBM use.
0530 1328 Signed 8 * Debug field. End of fields mapped
by Threshold DSECT.
0538 1336 Signed 8 * (20) Reserved for IBM use.
05D8 1496 Signed 8 * (15) Reserved for IBM use.
0650 1616 Signed 8 * (15) Reserved for IBM use.
06C8 1736 Signed 8 * (15) Reserved for IBM use.
0740 1856 Signed 8 * (15) Reserved for IBM use.
Area concerning type 2 requests. (Singles requests that can
only be satisfied from below 2G.)
Note initial thresholds are set by HCPALUSR during system
initialization. Any values here are only temporary.
07B8 1976 Signed 8 RSAT2SThresh (0)
Threshold information. Mapped by
Threshold DSECT.
07B8 1976 Signed 4 * Protect threshold for type <2G
singles supply. Protection is
from type any pageable requests.
07BC 1980 Signed 4 * High threshold for type <2G
singles supply.
07C0 1984 Signed 4 * Low threshold for type <2G
singles supply.
07C4 1988 Signed 4 * The "initial value" set by ALUSR.
RAS only.
07C8 1992 Signed 4 * Low water mark of type any
singles supply.
07CC 1996 Signed 4 * Number of times LT for type
<2G singles supply was
incremented because the count hit
zero.
07D0 2000 Signed 4 * Number of times LT for type
<2G singles supply was
incremented because the count got
to close to zero.
07D4 2004 Signed 4 * Number of times LT for type any
singles was decremented because
the count didn't get close enough
to zero.
07D8 2008 Signed 4 * Number of times LT for type 2
singles was good.
07DC 2012 Bitstring 1 * Current condition of type <2G
singles supply.
07DD 2013 Bitstring 1 * Threshold flag.
07DE 2014 Bitstring 2 * Reserved for future IBM use.
07E0 2016 Signed 8 * Debug field. End of fields mapped
by Threshold DSECT.
07E8 2024 Signed 8 * (20) Reserved for IBM use.
0888 2184 Signed 8 * (15) Reserved for IBM use.
0900 2304 Signed 8 * (15) Reserved for IBM use.
0978 2424 Signed 8 * (15) Reserved for IBM use.
09F0 2544 Signed 8 * (15) Reserved for IBM use.
Reserved for IBM use.
0A68 2664 Signed 8 * Reserved for IBM use.
0A70 2672 Signed 8 * Reserved for IBM use.
0A78 2680 Signed 8 * Reserved for IBM use.
0A80 2688 Signed 8 * Reserved for IBM use.
<>2G deferred frame request queue
******************************---
Deferred frame request queue for tasks waiting
for a frame located <>2G. (Also known as type=ANY.)
See RSADefFRQ for mapping and important comments.
This queue is for tasks waiting for a <>2G frame
when both of the singles available lists are empty.
0A88 2696 Dbl-Word 8 RSADefANY (0) ANY Deferred Frame Request Queue
0A88 2696 Signed 8 * (6) Spin lock.
0AB8 2744 Address 4 * Pointer to First CPEBK.
0ABC 2748 Address 4 * Pointer to Last CPEBK.
0AC0 2752 Signed 4 RSAdefCTANY Count (Formerly RSA2GDCT)
(Maintain MRSTORSG,MRSYTRSG)
End of RSADefANY definition.
0AC4 2756 Signed 4 * Reserved for IBM use.
>2G deferred frame request queue
******************************--
Deferred frame request queue for tasks waiting
for a frame located >2G only.
See RSADefFRQ for mapping and important comments.
This queue is for tasks waiting for a >2G frame
when the >2G singles available list is empty.
0AC8 2760 Dbl-Word 8 RSADefA2G (0) A2G Deferred Frame Request Queue
0AC8 2760 Signed 8 * (6) Spin lock.
0AF8 2808 Address 4 * Pointer to First CPEBK.
0AFC 2812 Address 4 * Pointer to Last CPEBK.
0B00 2816 Signed 4 RSAdefCTA2G Count. (Maintain
MRSTORSG,MRSYTRSG)
End of RSADefA2G definition.
0B04 2820 Signed 4 * Reserved for IBM use.
<2G deferred frame request queue
******************************--
Deferred frame request queue for tasks waiting
for a frame located <2G only.
See RSADefFRQ for mapping and important comments.
This queue is for tasks waiting for a <2G frame
when the <2G singles available list is empty.
0B08 2824 Dbl-Word 8 RSADefB2G (0) B2G Deferred Frame Request Queue
0B08 2824 Signed 8 * (6) Spin lock.
0B38 2872 Address 4 * Pointer to First CPEBK.
0B3C 2876 Address 4 * Pointer to Last CPEBK.
0B40 2880 Signed 4 RSAdefCTB2G Count (Formerly RSAFRQWT)
(Maintain MRSTORSG,MRSYTRSG)
End of RSADefB2G definition.
0B44 2884 Signed 4 * Reserved for IBM use.
Counts for contigs deferrals.
0B48 2888 Signed 4 RSAFRQMW Count of tasks deferring or
delaying attempting to obtain
multiple frames (for PGMBKs only
at this point). Incremented once
after initial attempt fails,
decremented only after request is
satisfied, or given up on.
0B4C 2892 Signed 4 RSAFRQDF Count of deferred multiple frame
requests for PGMBKs Incremented
during actual deferment.
0B50 2896 Signed 4 RSAFRQDL Count of delayed multiple frame
requests for PGMBKs Incremented
during actual delay.
0B54 2900 Signed 4 * Reserved for IBM use.
0B58 2904 Dbl-Word 8 RSAFRQDT Total multiple frame request
delay interval for PGMBKs since
last system timer pop
0B60 2912 Dbl-Word 8 RSAFRQDA Average multiple frame request
delay interval for PGMBKs between
system timer pop instances
Redrive counters for tasks waiting for frames.
0B68 2920 Signed 4 RSARDaANY Count of times HCPPTGRD attempted
to redrive tasks waiting for any
available frame (>= 2G or
<2G) Updated with CS.
(Maintain MRSTORSG)
0B6C 2924 Signed 4 RSARDtANY Count of individual task redrives
performed by HCPPTGRD for any
available frame (>= 2G or
<2G) Updated with CS.
(Maintain MRSTORSG)
0B70 2928 Signed 4 RSARDaA2G Count of times HCPPTGRD attempted
to redrive tasks waiting for an
available frame >2G. Updated
with CS. (Maintain MRSTORSG)
0B74 2932 Signed 4 RSARDtA2G Count of individual task redrives
performed by HCPPTGRD for an
available frame >2G. Updated
with CS. (Maintain MRSTORSG)
0B78 2936 Signed 4 RSARDaB2G Count of HCPPTGRD attempts to
redrive tasks waiting for frames
below 2G. Updated with CS.
(Formerly RSAFRRDA) (Maintain
MRSTORSG)
0B7C 2940 Signed 4 RSARDtB2G Count of individual task redrives
performed by HCPPTGRD for frames
below 2G. Updated with CS.
(Formerly RSAFRRDC) (Maintain
MRSTORSG)
General fields.
0B80 2944 Dbl-Word 8 RSAPRLK (3) PTRM address space resolution
lock. This is a formal exclusive
lock, managed by HCPLCK. This
lock serializes RSAASITB during
PTRM address space creation. This
lock must be held to resolve an
"address space fault" when
working with PTRM address spaces.
0B98 2968 Signed 4 * Reserved for IBM use.
0B9C 2972 Address 4 RSAASITB Ptr to table of i-ASITs for the
PTRM address spaces. RSAPRLK must
be held to validate an entry in
this table. Each table entry is
mapped by the HCPAMTE control
block.
00000400 RSAASITBSZ 128*8 Length of table in bytes
128 entries of length AMTLENTH
0BA0 2976 Character 1 * (0) For source code searching
0BA0 2976 Address 8 RSADPPFW (0) Host Real Address
0BA0 2976 Address 4 * Deferred PGMBK paging list ...
0BA4 2980 Address 4 * (DPPL) forward pointer
0BA8 2984 Address 8 RSADPPBW (0) Host Real Address
0BA8 2984 Address 4 * Deferred PGMBK paging list ...
0BAC 2988 Address 4 * (DPPL) backward pointer
0BB0 2992 Address 8 RSAPPAFW (0) Host Real Address
0BB0 2992 Address 4 * Paged PGMBK aging list (PPAL) ...
0BB4 2996 Address 4 * forward ptr. PPAL is actually a
list of PGMBKs and DAT frames.
0BB8 3000 Address 8 RSAPPABW (0) Host Real Address
0BB8 3000 Address 4 * Paged PGMBK aging list ...
0BBC 3004 Address 4 * (PPAL) backward pointer.
0BC0 3008 Signed 4 RSAPPAQD If non-zero, a task has been
queued for deferred processing of
the PPAL (contains the R13
savearea address of the queueing
task). Set with CS, reset with
store of 0s.
0BC4 3012 Signed 4 RSAPPTLK Pageable Page Table Lock This is
an informal spin lock. The lock
must be held when adding FRMTEs
to or removing FRMTEs from the
DPPL or the PPAL. RSAPPTLK is set
to the address obtaining the
lock. When free, its value is
zero. Use Compare-and-Swap to
update. (This lock must also be
held when decrementing a PGMFRMCT
or PGMMIGCT field to zero, and
then seeing if we can put that
PGMBK on the DPPL.) It must be
held while processing the DPPL,
but can be held only while the
PPAL is 'harvested' See HCPHRUPA
prolog for details This lock also
serializes the bit FRMONQUE in a
FRMTE being put on the DPPL or
PPAL. For FRMTEs on the PPAL, the
ONLY procession for them is to an
available list, and FRMONQUE is
then reset.
0BC8 3016 Signed 4 RSARESAC Count of resident PTRM pages
>=2G i.e. count of resident
PGMBK frames >= 2G
0BCC 3020 Signed 4 RSATFCNT Total number of trace frames.
0BD0 3024 Dbl-Word 8 RSARFRSG Count of frames allocated for
real free storage requests
>2G. This count is updated
using Compare-and-Swap logic.
0BD8 3032 Dbl-Word 8 RSAAFRDW Count of doublewords of aligned
real free storage above 2G. This
count includes the number of
doublewords of active as well as
inactive aligned free storage.
This count will always be a
multiple of 512. This count is
updated using Compare-and-Swap
logic.
0BE0 3040 Dbl-Word 8 RSAAFRIU Count of doublewords of in use
aligned real free storage above
2G. This count includes only the
active aligned free storage
blocks This count is updated
using Compare-and-Swap logic.
0BE8 3048 Signed 4 RSAAFSDW Count of doublewords of aligned
host logical free storage backed
above 2G. This count includes the
number of doublewords of active
as well as inactive aligned free
storage. This count will always
be a multiple of 512. This count
is updated using Compare-and-Swap
logic.
0BEC 3052 Signed 4 RSAAFSDB Count of doublewords of aligned
host logical free storage backed
below 2G. This count includes
active as well as inactive
aligned free storage. This count
will always be a multiple of 512.
This count is updated using
Compare-and-Swap logic.
0BF0 3056 Signed 4 RSARFRST Count of frames allocated for
real free storage requests
<2G. This count is updated
using Compare-and-Swap logic.
0BF4 3060 Signed 4 RSAAFRDB Count of doublewords of aligned
real free storage below 2G. This
count includes active as well as
inactive aligned free storage.
This count will always be a
multiple of 512. This count is
updated using Compare-and-Swap
logic.
0BF8 3064 Signed 4 RSAAFSIU Count of doublewords of in use
aligned host logical free storage
backed above 2G. This count
includes only the active aligned
free storage blocks. This count
is updated using Compare-and-Swap
logic.
0BFC 3068 Signed 4 RSAAFSIB Count of doublewords of in use
aligned host logical free storage
backed below 2G. This count
includes only the active aligned
free storage blocks. This count
is updated using Compare-and-Swap
logic.
0C00 3072 Signed 4 RSAAFRIB Count of doublewords of in use
aligned real free storage below
2G. This count includes only the
active aligned free storage
blocks This count is updated
using Compare-and-Swap logic.
0C04 3076 Signed 4 RSAVCBDW Count of doublewords of
verifiable control block free
storage backed above 2G. This
control block free storage. count
includes the number of
doublewords of active as well as
inactive verifiable control block
free storage and will always be a
multiple of 512. This count is
updated using Compare-and-Swap
logic.
0C08 3080 Signed 4 RSAVCBDB Count of doublewords of
verifiable control block free
storage backed below 2G. This
control block free storage. count
includes the number of
doublewords of active as well as
inactive verifiable control block
free storage and will always be a
multiple of 512. This count is
updated using Compare-and-Swap
logic.
0C0C 3084 Signed 4 RSAVCBIU Count of doublewords of in use
verifiable control block free
storage backed above 2G. This
count includes only the active
verifiable control block free
storage blocks. This count is
updated using Compare-and-Swap
logic.
0C10 3088 Signed 4 RSAVCBIB Count of doublewords of in use
verifiable control block free
storage backed below 2G. This
count includes only the active
verifiable control block free
storage blocks. This count is
updated using Compare-and-Swap
logic.
0C14 3092 Signed 4 RSAVFSDW Count of doublewords of virtual
free storage. This count includes
active as well as inactive
virtual free storage blocks (Note
that inactive means currently
resident on the virtual SUBBK
FRMTE list).
Note that this count represents
virtual storage, not real. The
count is the number of doublewords
within the virtual free storage
CP utility address space currently
in use or residing on the virtual
SUBBK FRMTE lists. This count
will always be a multiple of 2048.
This count is updated using
Compare-and-Swap logic.
0C18 3096 Signed 4 RSAVFSIU Count of doublewords of virtual
free storage in use. This count
includes only active free storage
blocks. Note this count
represents virtual storage, not
real. The count is the number of
doublewords within the virtual
free storage CP utility address
space. This count is updated
using Compare-and-Swap logic.
0C1C 3100 Signed 4 RSANALD Host Real Address ALD for "null"
access list
0C20 3104 Dbl-Word 8 RSANASIT (0) i-ASIT for "null" address space.
The ASTE for the null address
space is guaranteed to designate
both a null access list (RSANALD)
and a null authority table, and
the ASTE ASCE is guaranteed to
designate a segment table with
STL of 1, indicating that the
segment table is two segment
table units in length (2 pages =
8K in z/Arch).
0C20 3104 Address 4 * Null ASTE with IASRACC and
IASFPRIV set. The value is
updated during initialization to
address the null ASTE.
0C24 3108 Signed 4 * ASTE sequence number=1.
0C28 3112 Address 4 RSANDUCT Host Real Address Address of
"null" dispatchable- unit control
table (DUCT).
0C2C 3116 Address 4 RSASHRSP Host Logical Address Anchor for
chain of shareable address
spaces. Chain is serialized by
RSASHRLK.
0C30 3120 Dbl-Word 8 RSAPPTN STE invalidation timestamp of
most recently decoupled frame
(pair) on the PPAL.
0C38 3128 Signed 4 RSAPPTPS ALB/TLB purges started prior to
entering wait
0C3C 3132 Signed 4 RSAPPTPF ALB/TLB purges finished prior to
entering wait
0C40 3136 Signed 4 RSAPPTCS ALB/TLB purges via CSP during
emergency PPAL processing
0C44 3140 Signed 4 * Reserved for IBM use
0C48 3144 Dbl-Word 8 RSASHRLK (3) A shared/exclusive defer lock
serializing the RSASHRSP chain.
0C60 3168 Dbl-Word 8 RSASPMLK (3) A shared/exclusive defer lock
serializing all SPIBK chains
system-wide.
0C78 3192 Dbl-Word 8 RSAALCIN (3) An exclusive-only defer lock to
serialize tasks changing an ALD
from the "null" ALD to a non-null
ALD.
0C90 3216 Signed 4 RSACTSHR Global count of shared address
space resident frames
0C94 3220 Signed 4 * Reserved for IBM use.
0C98 3224 Signed 8 * (15) Reserved for IBM use.
| RSM Hardware features: |
0D10 3344 Dbl-Word 8 RSAHWFEA Hardware Features
0D10 3344 Bitstring 7 * Reserved for IBM use.
0D17 3351 Bitstring 1 RSAHWINS HW Installation Flags
1... .... RSASIE2 X'80' RSASIE2 When set, HPMA2 is
installed
.1.. .... RSAHTPE1 X'40' RSAHTPE1 When set, G2/NT
bits supported by hardware
RSAHWINS IPTEG2 X'0800' IPTEG2 G2 bit on the IPTE
instruction
RSAHWINS IPTENT X'0400' IPTENT NT bit on the IPTE
instruction
| RSM allocation counts: |
0D18 3352 Signed 4 RSACPLOK Integer non-negative exact count
of frames that are locked by the
CP LOCK command (PGSCPLOK) below
2G. This count is updated using
Compare-and-Swap logic.
Verify that we are now at the middle of a double word.
Some common code can update either RSAGOFFL or RSAOFFLN.
That common code uses HCPCOUNT INTERLOCK to update a
double word. Dword INTERLOCK requires dword alignment.
Since RSAOFFLN is only a full word, it must be defined as
the second word of a double word. The common code then
would update either RSAOFFLN-4 or RSAGOFFL. Since
RSAOFFLN is a counter for frames below 2G, it cannot
overflow into the high word of the double word.
0D1C 3356 Signed 4 RSAOFFLN Non-negative count of the number
of offline frames. The count of
offline frames may never be
decremented since once a frame is
marked offline, it is never
brought back online. This field
is initialized during system
initialization and should always
be updated with the available
list spin lock held. However,
because this field may be updated
by the extend free storage
replenishment scan which does not
normally function with the
available list lock held, there
is a minute chance that the count
may be off slightly.
0D20 3360 Signed 4 RSASHARE Non-negative count of frames that
currently are translated as a
shared frame (DCSS/NSS frames
only, shared address space frames
are not included (see RSACTSHR)).
This count is updated using
Compare-and-Swap logic.
0D24 3364 Signed 4 RSANONPG Count of DPA frames <2G which
are currently non-pageable,
including locked pageable frames,
CP owned or free storage frames,
etc. This field is only updated
during system initialization or
using Compare-and-Swap logic.
0D28 3368 Signed 4 * Reserved for IBM use.
0D2C 3372 Signed 4 RSACPLKG Integer non-negative exact count
of frames that are locked by the
CP LOCK command (PGSCPLOK) above
2G. This count is updated using
Compare-and-Swap logic.
0D30 3376 Signed 4 RSARESBC Count of resident PTRM pages
<2G i.e. count of resident
PGMBK frames <2G
Verify that we are now at the middle of a double word.
Some common code can update either RSAPGABL or RSALGFRM.
That common code uses HCPCOUNT INTERLOCK to update a
double word. Dword INTERLOCK requires dword alignment.
Since RSAPGABL is only a full word, it must be defined as
the second word of a double word. The common code then
would update either RSAPGABL-4 or RSALGFRM. Since
RSAPGABL is a counter for frames below 2G, it cannot
overflow into the high word of the double word.
0D34 3380 Signed 4 RSAPGABL Count of usable frames <2G in
the DPA including both pageable
and non-pageable (locked, CP
owned, free storage, etc.)
frames. It does not include
offline frames. This field is
only updated during system
initialization or using
Compare-and-Swap logic.
Uncleared global available list replenishment data. (UGALs)
0D38 3384 Signed 8 RSAFMStatTime Frame manager stat time.
0D40 3392 Signed 4 RSARUGALS (0) Replenishment lock. When held
(non-zero), this lock indicates
that the replenishment task
(HCPALGRA) is scheduled to run,
or is running. This lock is
normally obtained via HCPFLGDS.
It is modified via TS (HCPFLGDS)
or CS (HCPDSP).
0D40 3392 Bitstring 1 RSARUTS TS lock to prevent triggering of
multiple concurrent replenishment
tasks. Notes : A non-zero value
in the remainder of the fullword
field is used to indicate a CPU
is running the replenishment
task.
0D41 3393 Bitstring 1 * Flag.
0D42 3394 Bitstring 2 * CPU address running the task.
0D44 3396 Bitstring 1 RSATSReplen TS Lock to allow just one
Replenishment task at a time.
0D45 3397 Bitstring 3 * Reserved for IBM use
0D48 3400 Signed 8 RSARepStamp Replenishment stamp. TOD clock
value at the time the UGALs were
last replenished.
Demand scan replenishment data.
0D50 3408 Dbl-Word 8 * (0)
0D50 3408 Signed 4 RSADSLOK (0) Demand Scan lock. When held
(non-zero), this lock indicates
that the demand scan task
(HCPALDSC) is scheduled to run,
or is running. This lock is
normally obtained via HCPFLGDS.
It is modified via TS (HCPFLGDS)
or CS (HCPDSP).
0D50 3408 Bitstring 1 RSARFLOK TS lock to prevent triggering of
multiple concurrent steal tasks
Notes : A non-zero value in the
remainder of the fullword field
is used to indicate a CPU is
running the steal task.
0D51 3409 Bitstring 1 * Flag.
0D52 3410 Bitstring 2 * CPU address running the task.
0D54 3412 Bitstring 1 RSATRQLK Delayed Demand Scan TRQBK lock.
This TS lock is used to prevent
stacking multiple TRQBK's when
Demand Scan determines it may
need to reinvoke itself.
0D55 3413 Bitstring 1 RSAEWLOK TS lock to prevent multiple
instances of HCPALGEW from
running in competition with each
other.
0D56 3414 Bitstring 1 * Reserved for IBM use
0D57 3415 Bitstring 1 RSADSFLG Demand Scan flags
1... .... RSATAALL X'80' RSATAALL Any HCPALGTA task
that sees this and is not
returning frames to its caller
should process as much of the
reclaimable section as possible
because an emergency condition
has been detected
.1.. .... RSASTSUF X'40' RSASTSUF Next Demand Scan
should start on on the SUFO
0D58 3416 Signed 4 * (0) Paging system status word
0D58 3416 Bitstring 1 RSAPSTATB1 Paging system status byte 1
1... .... RSAPGTHR X'80' RSAPGTHR Paging throttle
indicator
0D59 3417 Bitstring 3 *
0D5C 3420 Signed 4 RSASWPWT Count of available list
replenishment page writes (steal
writes) for < 2G PGMBKs in
frames This count is updated
using Compare-and-Swap logic.
0D60 3424 Signed 4 RSASWP2G Count of available list
replenishment page writes (steal
writes) for >= 2G PGMBKs in
frames
0D64 3428 Signed 4 RSASTLWT Count of available list
replenishment page writes (steal
writes) for < 2G frames. This
count is updated using
Compare-and-Swap logic.
0D68 3432 Signed 4 RSASWG2G Count of available list
replenishment page writes (steal
writes) for >= 2G frames
Type 2 available list replenishment data:
Type 2 refers to <2G only type requests.
0D6C 3436 Signed 4 RSAT2SReplenWord (0)
Type 2 replenishment word. When
non-zero, this word indicates
that type 2 replenishment (a
frame table scan) is flagged to
run, or is running. The first
byte of this word, the TS byte,
is normally set by HCPFLGDS. The
remaining bytes are modified with
CS until the entire word is
cleared.
0D6C 3436 Bitstring 1 RSAT2STS TS lock to prevent triggering of
multiple concurrent steal tasks.
This lock is normally obtained
via HCPFLGDS. Notes : A non-zero
value in the remainder of the
field is used to indicate a CPU
is running the steal task.
0D6D 3437 Bitstring 1 * Flag.
0D6E 3438 Bitstring 2 * CPU address running the task.
0D70 3440 Signed 8 RSAT2SRCalls Times HCPALFT2 was called.
0D78 3448 Signed 8 RSAT2SFrames Frames scanned for (cumulative).
0D80 3456 Signed 8 RSAT2SMax Maximum shortage at time of call.
0D88 3464 Signed 8 RSAT2SGoodExit Exits with total success.
0D90 3472 Signed 8 RSAT2SNoT2Need Early exit, no need found.
0D98 3480 Signed 8 RSAT2SBadExit Exits with no/partial success.
0DA0 3488 Signed 8 RSAT2SFailCount
Frames not found (cumulative).
0DA8 3496 Signed 4 * Reserved for IBM use.
0DAC 3500 Bitstring 1 RSAT2SThresholdAdjust
TS lock to serialize adjustment
of multiple T2 thresholds. (PT,HT
and LT).
0DAD 3501 Bitstring 1 RSAT2SFlag Communication from function 1 to
function 0. (See HCPALUT2.)
Serialized by
RSAT2ThresholdAdjust
1... .... RSAPTRaised X'80' ALF Raised the PT.
0DAE 3502 Bitstring 1 * Reserved for IBM use.
0DAF 3503 Bitstring 1 * Reserved for IBM use.
Available list thresholding and statistics.
RSAAdjustFlg is serialized with OILCK/NILCK.
0DB0 3504 Bitstring 1 RSAAdjustFlg Adjustment flag for frame
manager. These bits are
examined/reset quite frequently.
1... .... RSADSStarted X'80' When considering raising or
lowering thresholds, we have
started Demand scan.
.1.. .... RSADSEnded X'40' When considering raising or
lowering thresholds, we have
ended Demand scan.
0DB1 3505 Bitstring 1 RSAALUST TS Flag to run stats. Obtainer
calls HCPALUST.
0DB2 3506 Bitstring 1 RSADmThrRdLk Demand Throttling redrive TS lock
0DB3 3507 Bitstring 1 * Reserved for IBM use.
0DB4 3508 Signed 4 * Reserved.
0DB8 3512 Signed 4 RSACFPCT Count of contiguous frames for
PGMBKs since last demand scan
0DBC 3516 Signed 4 RSACFPAV Average count of contiguous frame
requests for PGMBKs between
demand scan instances
0DC0 3520 Signed 4 RSAALFMF Total count of contiguous frames
being scanned for by active
HCPALFMF FREXSCAN tasks
0DC4 3524 Signed 4 RSAAVLEP Low threshold adjustment to
account for dynamic free storage
requests made for emulated paging
devices during demand scan
Frame table Scan area
0DC8 3528 Signed 8 RSAftcounts (0)
4 half word counts of frame table
scans. The only permissible use
of this field should be a test
for zero vs. nonzero.
0DC8 3528 Signed 2 RSAsftANY Number of frame table scans
active for a singles frame above
or below 2G.
0DCA 3530 Signed 2 RSAsftB2G Number of frame table scans
active for a singles frame below
2G only.
0DCC 3532 Signed 2 RSAcftANY Number of frame table scans
active for a contigs frame above
or below 2G.
0DCE 3534 Signed 2 RSAcftB2G Number of frame table scans
active for a contigs frame below
2G only.
0DD0 3536 Address 4 RSAFTXFL Host Logical Address Address of
first FTXBK for frames < 2G
0DD4 3540 Address 4 RSAFTXFG Host Logical Address Address of
first FTXBK for frames >= 2G
0DD8 3544 Address 4 RSAFTXGC Host Logical Address Address of
first FTXBK on the global chain.
This chain of FTXBKs is
unordered, and ends at the FTXBK
whose FTXNEXTG pointer value is
zero.
0DDC 3548 Address 4 * Reserved for IBM use
| Free storage data: |
0DE0 3552 Signed 4 RSAFSA2G Non-negative count of doublewords
of system free storage backed
ANY. Count includes the number of
doublewords of free storage
available. This count is updated
only by HCPFRFDX (free storage
garbage collection) which runs on
the master processor only.
0DE4 3556 Signed 4 RSAFSB2G Non-negative count of doublewords
of system free storage backed
below 2G. Count includes the
number of doublewords of free
storage available. This count is
updated only by HCPFRFDX (free
storage garbage collection) which
runs on the master processor
only.
0DE8 3560 Signed 4 RSAFSYUA Non-negative count of doublewords
of in use system free storage
backed ANY. This count is updated
only by HCPFRFDX (free storage
garbage collection) which runs on
the master processor only.
0DEC 3564 Signed 4 RSAFSYUB Non-negative count of doublewords
of in use system free storage
backed below 2G. This count is
updated only by HCPFRFDX (free
storage garbage collection) which
runs on the master processor
only.
0DF0 3568 Signed 4 RSAFVMUD Count of doublewords of VMDBK
free storage in use above 2G.
Allocated from VMDBKs, VMDBK free
storage pages, and system free
storage pages. This count does
not include the storage allocated
from the free storage subpools.
This count is updated only when
holding FSDVMLK formal spin lock.
0DF4 3572 Signed 4 RSAFVMUB Count of doublewords of VMDBK
free storage in use below 2G.
Allocated from VMDBKs, VMDBK free
storage pages, and system free
storage pages. This count does
not include the storage allocated
from the free storage subpools.
This count is updated only when
holding FSDVMLK formal spin lock.
0DF8 3576 Signed 4 RSAVMXFR Count of pages in use for VMDBK
free storage above 2G, i.e., user
free pages allocated. This count
does not include the VMDBKs
themselves. This count is updated
only when holding FSDVMLK formal
spin lock.
0DFC 3580 Signed 4 RSAVMXFB Count of pages in use for VMDBK
free storage above 2G, i.e., user
free pages allocated. This count
does not include the VMDBKs
themselves. This count is updated
only when holding FSDVMLK formal
spin lock.
0E00 3584 Signed 4 RSAVMXUD Count of in use user free storage
doublewords (allocated from VMDBK
free storage pages) backed above
2G. This count does not include
storage in the VMDBKs themselves.
This count is updated only when
holding FSDVMLK formal spin lock.
0E04 3588 Signed 4 RSAVMXUB Count of in use user free storage
doublewords (allocated from VMDBK
free storage pages) backed below
2G. This count does not include
storage in the VMDBKs themselves.
This count is updated only when
holding FSDVMLK formal spin lock.
0E08 3592 Signed 4 RSASYSFR Count of pages in use for system
free storage above 2G. This count
is updated only when holding
FSDVMLK formal spin lock.
0E0C 3596 Signed 4 RSASYSFB Count of pages in use for system
free storage below 2G. This count
is updated only when holding
FSDVMLK formal spin lock.
0E10 3600 Signed 4 RSASYSUD Count of system free storage
doublewords above 2G in use
allocated from system free
storage chain. This count is
updated when holding FSDVMLK
formal spin lock.
0E14 3604 Signed 4 RSASYSUB Count of system free storage
doublewords below 2G in use
allocated from system free
storage chain. This count is
updated when holding FSDVMLK
formal spin lock.
0E18 3608 Signed 4 RSAGPB2G Count of pages backed below 2G in
use for Guestperm free storage
ANY requests. This count is
updated only when holding FSDVMLK
formal spin lock.
0E1C 3612 Signed 4 RSASYB2G Count of pages backed below 2G in
use for SYSPERM free storage ANY
requests
0E20 3616 Signed 4 RSAARB2G Count of pages backed below 2G in
use for Real Aligned free storage
ANY requests
0E24 3620 Signed 4 RSAALB2G Count of pages backed below 2G in
use for HL Aligned free storage
ANY requests
| Data for free storage limit detection. The 3 thresholds |
| will determine when to issue a warning message, put a |
| user into a stopped state and when to logoff a user who |
| is abusing free storage. These fields are updated with |
| Compare-and-Swap logic. |
| The flag field is used to determine whether free storage |
| limit detection is on or off for the system. |
0E28 3624 Dbl-Word 8 * (0) 5 word long area on dword bdy
0E28 3624 Signed 4 RSALIM1 Free storage threshold 1 (WRNG)
0E2C 3628 Signed 4 RSALIM2 Free storage threshold 2 (STOP)
0E30 3632 Signed 4 RSALIM3 Free storage threshold 3 (FORCE)
RSALMFUZ is calculated to be .5% DPA and will be used as the
fuzz around the thresholds to prevent multiple messages from
being issued if the limit oscillates about the threshold.
0E34 3636 Signed 4 RSALMFUZ Free storage threshold fuzz
0E38 3640 Signed 4 RSALIMCS (0) Free storage limits Compare-and-
Swap word
0E38 3640 Bitstring 3 * Reserved for IBM use
0E3B 3643 Bitstring 1 RSALIMCK Free storage limit detection flag
00000000 RSALIMOF X'00' RSALIMOF Free storage limit
detection off
00000001 RSALIMON X'01' RSALIMON Free storage limit
detection on
| Free storage emergency mode counts/timestamps. |
| The RSAFSELK lock must be held to inspect/change |
| these fields. RSAFSELK is obtained via CS logic. |
0E3C 3644 Signed 4 RSAFSELK Free storage emergency mode data
area lock word
0E40 3648 Signed 4 RSAPLPCT Count of processors looping in
HCPFRFGP/GB trying to get an SXS
page backed any for free storage
0E44 3652 Signed 4 RSAPLPCB Count of processors looping in
HCPFRFGP/GB trying to get an SXS
page backed below 2G for free stg
0E48 3656 Signed 4 RSANPGCT Count of consecutive failure
returns from SXPFS where no pages
were available for free storage
0E4C 3660 Signed 4 * Reserved for IBM use.
0E50 3664 Dbl-Word 8 RSAEMTSA Timestamp of when entered
emergency mode looking for a free
storage page backed any
0E58 3672 Dbl-Word 8 RSAEMTSB Timestamp of when entered
emergency mode looking for a free
storage page backed below
0E60 3680 Signed 4 RSANPGMX Maximum cap on number of times we
will allow a consecutive failure
from HCPSXPFS when trying to get
a page for free storage
0E64 3684 Signed 4 RSANPGHI High water mark for number of
consecutive failures from
HCPSXPFS when trying to get a
page for free storage (all
processors)
| Free storage reserved pages data area: |
0E68 3688 Dbl-Word 8 * (0) This is the free storage reserved
pages data area consisting of a
count of unique extend requests
that have not been satisfied yet,
the free storage reserved pages
anchor, the free storage reserved
pages data area lock word, the
count of free storage reserved
pages required by the system, and
the number of free storage
reserved pages per processor.
Note: The number of free storage
reserved pages per processor must
be positive. Update while holding
the free storage reserved pages
data area Compare-and-Swap lock
word or during system
initialization.
0E68 3688 Signed 4 RSAXTEND Free storage reserved pages
depletion count (extend
conditions not yet satisfied).
Guest dispatch is disabled when
RSAXTEND is non-zero.
0E6C 3692 Address 4 RSARESAN Reserved pages queue anchor
forward pointer
0E70 3696 Address 4 RSARSVLK Free storage reserved pages data
area Compare-and-Swap lock word
0E74 3700 Signed 4 RSARSVSY Total number of free storage
reserved pages required to be on
the reserved pages list Includes
RSAMAXPP frames per online
processor, plus additional frames
per emulated CP owned device
containing page or spool space
(the number of frames is based on
emulated device specific
information provided in the
EDEV).
0E78 3704 Signed 4 RSAMAXPP Number of free storage reserved
pages required per processor.
Note: Field must be positive.
0E7C 3708 Signed 4 * Reserved for IBM use
| Segment translation data: |
0E80 3712 Dbl-Word 8 * (0) This is the deferred segment
translation queue data area. It
consists of the queue anchor and
the Compare-and-Swap lock.
0E80 3712 Address 4 RSADEFAN Host Logical Address Pointer to
first CPEBK of the deferred
segment translation queue
0E84 3716 Address 4 RSADEFLK Compare-and-Swap lock. Zero means
the lock is not held.
0E88 3720 Signed 4 RSAPRQWT Non-negative count of tasks
waiting for a page translation
request. This count also includes
tasks waiting for a segment
translation. This count is
updated with Compare-and-Swap
logic.
0E8C 3724 Signed 4 * Reserved for IBM use
| Fixed storage management data: |
This area contains the fixed storage management block.
It contains information regarding the allocation of
contiguous host real storage from the V=F area.
Additionally, information for the dedicated region
facility is kept here to keep track of zone numbers
available for assigning to MHPG users or to CP.
The allocation of storage from the V=F area is
maintained in the fixed storage assignment block
anchored in HCPWRK.
All changes to fields in the fixed storage management
block and in the fixed storage assignment table are
either made during system initialization or are under
the control of the fixed storage management lock.
0E90 3728 Dbl-Word 8 RSAFSTBK (0) Fixed storage management block
0E90 3728 Dbl-Word 8 RSAFSLCK (3) Fixed storage mgmt lock (defer)
0EA8 3752 Bitstring 2 RSASA1ST Offset of entry in the fixed
storage assignment table
containing the lowest main
storage origin
0EAA 3754 Bitstring 2 RSASALST Offset of entry in the fixed
storage assignment table
containing the highest main
storage origin
0EAC 3756 Signed 4 RSASTRNG (0) The entire storage range for the
V=F area. (Never changes)
0EAC 3756 Signed 2 RSAMSO Bits 5-15 specify a 1 meg main
storage origin of the V=F area.
Main storage origin is the
address of the first byte, on a
megabyte boundary, of the V=F
area, shifted right 20 bits.
0EAE 3758 Signed 2 RSAMSL Bits 5-15 specify a 1 meg main
storage limit of the V=F area.
Main storage limit is the address
of the last byte of the V=F area,
shifted right 20 bits.
0EB0 3760 Bitstring 1 RSAAZNCT Count of zones available for
guest use, including zones in use
(never changes)
0EB1 3761 Bitstring 1 RSAZPOOL Pool of available zones, not
including those in use
0EB2 3762 Bitstring 2 * Reserved for IBM use
0EB4 3764 Signed 4 * Reserved for IBM use
00000028 RSAFSTLN *-RSAFSTBK Length of FSTBK
00000005 RSAFSTSZ (*-RSAFSTBK+7)/8 Size of FSTBK
| Virtual storage management data: |
0EB8 3768 Dbl-Word 8 RSAVVBLK (0) Virtual Storage Management Block.
This area contains information
needed to manage the System
Virtual Address Space.
0EB8 3768 Bitstring 4 * Reserved for IBM use
0EBC 3772 Address 4 RSAVSLOW Lowest available virtual page.
Initialized by HCPIST at IPL.
Serialized by Compare-and-Swap
Allocation of System Virtual Addresses above RSAVHSAD
is serialized by the High Storage Lock (RSAVHSLK).
0EC0 3776 Dbl-Word 8 RSAVHSLK (3) High storage lock
0ED8 3800 Bitstring 4 * Reserved
0EDC 3804 Address 4 RSAVHSAD High storage starting addr.
Initialized with constant 1G (the
upper half of the addr space).
Must be on a segment boundary
(right most 20 bits must be
zero).
| No-owned resources data area |
| |
| No-owned resources are pageable address space structures|
| that no longer belong to any pageable address space but |
| cannot be reclaimed by CP because someone else has |
| rights to the structure, or the structure is locked or |
| last translated. |
0EE0 3808 Signed 8 RSANOQLK (6) No-owned resources queue lock.
Lock serializes the no-owned
queues, RSANOQSX, RSANOQFR, and
RSANOQPG. Lock is obtained and
released via macros HCPLKNOR and
HCPULNOR.
Reclaimable no-owned SXSTE queue
0F10 3856 Address 8 RSANOXFP (0) SXSTE forward pointer
0F10 3856 Address 4 * is initialized to
0F14 3860 Address 4 * queue origin
0F18 3864 Address 8 RSANOXBP (0) SXSTE backward pointer
0F18 3864 Address 4 * is initialized to
0F1C 3868 Address 4 * queue origin
0F20 3872 Bitstring 8 RSANOQFR Reclaimable no-owned FRMTE queue
header
0F28 3880 Dbl-Word 8 RSANOQPG No-owned PGMBK queue header
0F30 3888 Signed 4 * Reserved for IBM use
0F34 3892 Signed 4 RSANOLKL Count of no-owned locked pages in
host logical storage
0F38 3896 Dbl-Word 8 RSANOLKA Count of no-owned locked pages in
absolute storage
0F40 3904 Signed 4 RSANOLOK Word used to ensure the no own
resource reclaim routine is only
invoked by the dispatcher on one
processor at a time. This ensures
only one of the background or
foreground replenishment tasks
are running at a time. This word
can be in any of the following
states as defined in HCPEQUAT:
DSPNOBFW - no work to do DSPFSCHD
- foreground scheduled DSPFACTV -
foreground active DSPBSCHD -
background scheduled DSPBACTV -
background active Serialized by
compare-and-swap
0F44 3908 Signed 4 * Reserved for IBM use.
0F48 3912 Signed 8 * Reserved for IBM
| System Execution Space Page Manager (SXSPM) data area |
| |
| These fields are serialized by SXSPM queue lock unless |
| otherwise noted for the individual fields. |
| Use HCPLKSXQ/HCPULSXQ to obtain/release the lock. |
0F50 3920 Signed 8 RSASXQLK (6) SXSPM queue lock. This lock is
obtained & released via macros
HCPLKSXQ and HCPULSXQ.
SXS pages may or may not be on one of the queues that the
SXS page manager maintains.
| SXSTE state indicators: |
where queued: | SXSAVAIL | SXSBACKD | an alias |
|-----------|------------|------------|
Avail, backed <2G | 1 | 1 | no |
Avail, backed >2G | 1 | 1 | no |
Avail, unbacked | 1 | 0 | no |
Potentially Steal.| 0 | 1 | yes |
not in SXS queue | 0 | 1 | yes |
not in SXS queue | 0 | 1 | no |
(invalid state) | 0 | 0 | N/A |
(invalid state) | N/A | 0 | yes |
(invalid state) | 1 | N/A | yes |
|******************************-------|
An alias is an SXS page associated with a "pageable FRMTE".
All available SXS pages must be on one of the queues. If
the page is not backed it is on the Available, Unbacked SXS
Page Queue. If it is backed it is on one of the Available,
Backed SXS Page Queues (backed >2G or backed <2G). The one
exception to this rule is for SXSTEs in the Transitory
which are in transition between states. See HCPSXSTE COPY
for details regarding SXSTE states and serialization rules.
All in use SXS pages not associated with a "pageable FRMTE"
will be dequeued; i.e. not on any SXS page mgr queue.
All SXS pages which are associated with "pageable FRMTEs"
but are not locked will be kept on the SXS Potentially
Stealable Page Queue.
All SXS pages which are associated with "pageable FRMTEs"
and are locked may or may not be on the SXS Potentially
Stealable Page Queue. They are initially left on the queue
but are dequeued if the SXS page manager comes across them
when looking for an available page on the Potentially
Stealable Page Queue.
If SXSBACKD is not on, then SXSAVAIL must be on. If an
SXS page is in use as an alias, SXSBACKD must be set.
SXS Available, Unbacked Page Queue
a.k.a SXS Page Queue
0F80 3968 Dbl-Word 8 RSASXQAN (0) SXS Available, Unbacked Page
Queue Anchor. It consists of
forward and backward pointers to
the list of SXSTEs for SXS pages
that are available and not
backed. This area is initialized
during system initialization and
updated only when the SXSPM queue
lock is held.
0F80 3968 Address 8 RSASXQFP SXS page queue forward pointer.
Points to a SXSTE. This is a host
logical address > 2G unless
the queue is empty.
0F88 3976 Address 8 RSASXQBP SXS page queue backward pointer.
Points to a SXSTE. This is a host
logical address > 2G unless
the queue is empty.
0F90 3984 Signed 4 RSASXQCT Count of SXS pages on the SXS
page queue. This represents the
total number of SXS pages that
are available and not backed.
0F94 3988 Signed 4 RSASXQMN Minimum number of pages on the
available, unbacked page queue
before triggering replenishment.
SXS Potentially Stealable Page Queue
0F98 3992 Dbl-Word 8 RSASXPAN (0) SXS Potentially Stealable Page
Queue Anchor. It consists of
forward and backward pointers to
the list of SXSTEs for SXS pages
that are in use as aliases and
are potentially stealable. This
queue is initially empty and
SXSTEs are added to it during
Create Alias processing. This
queue is only updated when the
SXSPM queue lock is held.
0F98 3992 Address 8 RSASXPFP SXS Potentially Stealable Page
Queue forward pointer which
points to a SXSTE. This is a host
logical address > 2G unless
the queue is empty.
0FA0 4000 Address 8 RSASXPBP SXS Potentially Stealable Page
Queue backward pointer which
points to a SXSTE. This is a host
logical address > 2G unless
the queue is empty.
0FA8 4008 Signed 4 RSASXPCT Count of SXS pages on the SXS
Potentially Stealable Page Queue.
0FAC 4012 Signed 4 * Reserved for IBM use.
Queues of Available SXS Pages With Backing Frames
Only SXSTEs with SXSAVAIL=1, SXSBACKD=1 which are not in
use are on these queues and all available, backed SXSTEs
must be on one of the queues unless it is in transition
to or from another state. If they are in the Transitory
state then SXSONQUE will be off.
Which of the queues the SXSTE is on depends on whether the
backing frame resides above or below 2G in real storage.
0FB0 4016 Dbl-Word 8 RSASXAAN (0) Anchor for queue of available SXS
pages backed Above 2G.
0FB0 4016 Address 8 RSASXAFP Forward pointer for available SXS
pages backed Above 2G. This is a
host logical address >2G
unless the queue is empty.
0FB8 4024 Address 8 RSASXABP Backward pointer for available
SXS pages backed Above 2G. This
is a host logical address >2G
unless the queue is empty.
0FC0 4032 Signed 4 RSASXACT Count of SXS pages on the queue
of SXS pages backed Above 2G.
0FC4 4036 Signed 4 RSASXAMX Maximum number of pages on the
backed Above 2G queue. Note:
Field must be positive.
0FC8 4040 Dbl-Word 8 RSASXBAN (0) Anchor for queue of available SXS
pages backed Below 2G.
0FC8 4040 Address 8 RSASXBFP Forward pointer for available SXS
pages backed Below 2G. This is a
host logical address >2G
unless the queue is empty.
0FD0 4048 Address 8 RSASXBBP Backward pointer for available
SXS pages backed Below 2G. This
is a host logical address >2G
unless the queue is empty.
0FD8 4056 Signed 4 RSASXBCT Count of SXS pages on the queue
of SXS pages backed Below 2G.
0FDC 4060 Signed 4 RSASXBMX Maximum number of pages on the
backed Below 2G queue. Note:
Field must be positive.
SXS Page Request Defer Queue data
0FE0 4064 Dbl-Word 8 RSASXDAN (0) SXS page request defer anchor.
0FE0 4064 Address 4 RSASXDFP Defer queue forward pointer. It
is a host logical CPEBK address
unless the queue is empty.
0FE4 4068 Address 4 RSASXDBP Defer queue backward pointer. It
is a host logical CPEBK address
unless the queue is empty.
0FE8 4072 Signed 4 RSASXDCT Count deferred SXS page requests
that are waiting for an available
SXS page. This is the sum
RSASXDCA+RSASXDPB+RSASXDPA.
0FEC 4076 Signed 4 RSASXDCA Count deferred SXS page requests
that are waiting for an available
SXS page for an alias. This is a
subset of RSASXDCT.
0FF0 4080 Signed 4 RSASXDPB Count deferred SXS page requests
that are waiting for an SXS page
to satisfy a request for a page
backed <2G. This is a subset
of RSASXDCT.
0FF4 4084 Signed 4 RSASXDPA Count deferred SXS page requests
that are waiting for an SXS page
to satisfy a request for a page
with backing=ANY. This is a
subset of RSASXDCT.
0FF8 4088 Signed 4 RSASXRDA Count of times an attempt was
made to redrive tasks waiting for
an available SXS page.
0FFC 4092 Signed 4 RSASXRDC Count of individual task redrives
for tasks waiting for a page.
SXS Page Counts
These counts only include SXS pages managed by the page
manager using the SXS page management table (SXSTEs). This
does not include the SXS pages used for the frame table or
the SXS page management table itself. The total managed
SXS pages is SYSSXSSZ/x'1000' and set at initialization or
by the dynamic storage reconfiguration function.
All managed SXS pages are:
- backed or not backed
- available or in use, unless in the Transitory state.
All backed SXS pages are:
- backed below 2G or backed above 2G. Backed pages may be
in use or available. Available backed pages will be on
one of the available SXS page queues. In use SXS pages
may or may not be on the SXS Potentially Stealable Queue.
Backed pages may be in the Transitory state temporarily
while being converted between the in-use and available
states.
All available SXS pages are:
- not backed, backed <2G, or backed >2G. Each of these
types of available pages are on different queues.
All in use SXS pages:
- must be backed
- are aliases or CP type SXS pages (eg. HCPGETST PAGES=)
All in use CP type SXS pages are:
- permanently allocated at initialization, by the dynamic
storage reconfiguration function, or allocated
later using HCPGETST PAGES= or for free storage using
HCPSXPFS.
Some pages considered in use may be made available by
stealing. This applies to SXS alias pages for translated
pageable frames if the page is not last translated or
locked. All pages in the stealable state will be on the
Potentially Stealable Queue, but not all pages on the
Potentially Stealable Queue will be stealable. See HCPSXSTE
COPY for a discussion of rules for stealing Aliases.
1000 4096 Signed 4 RSASXAVL Count of available SXS pages
including those with backing
frames. The number of available
SXS pages without backing frames
is RSASXAVL-(RSASXACT+RSASXBCT)
which is also RSASXQCT. Does not
include Transitory state SXSTEs.
1004 4100 Signed 4 RSASXUSD Count of SXS pages in use as CP
pages or aliases including
no-owned aliases and SXS pages
assigned to tasks deferred on
frames in the real frame manager.
This value should match
((SYSSXSZ/x'1000')-RSASXAVL).
1008 4104 Signed 4 RSASXUCP Count of SXS pages in use as CP
pages. This includes free
storage, HCPGETST PAGES=, and
permanently allocated at
initialization.
100C 4108 Signed 4 RSASXUID Count of all ID-mapped SXS pages
(host logical = host real addr)
primarily CP nucleus and PFXPGS.
1010 4112 Signed 4 RSASXUFS Count of SXS pages in use as free
storage pages with backing frames
below 2G. These are SXSTEs with
SXSCSB0=x'61'.
1014 4116 Signed 4 RSASXUFG Count of SXS pages in use as free
storage pages with backing frames
above 2G. These are SXSTEs with
SXSCSB0=x'61'.
1018 4120 Signed 4 RSASXUOT Count of pages of other CP types:
(RSASXUCP-(RSASXUID+RSASXUFS
+RSASXUFG).
101C 4124 Signed 4 RSASXBKA Count of SXS pages backed above
2G. This includes RSASXACT as
well as in use SXS pages and
Transitory SXSTEs backed>2G.
1020 4128 Signed 4 RSASXBKB Count of SXS pages backed below
2G. This includes RSASXBCT as
well as in use SXS pages and
Transitory SXSTEs backed<2G.
1024 4132 Signed 4 RSASXALI Count of SXS alias pages
associated with "pageable FRMTEs"
and may be stealable if not last
translated or locked. Also
includes count of no-owned
SXSTEs.
1028 4136 Signed 4 RSASXNOP Count of no-owned SXS aliases.
102C 4140 Signed 4 RSASXCTG Count of SXS pages in use as part
of a contiguous page request from
HCPGETST with PAGES>1. This
count does not include the pages
that were pre-allocated as part
of storage initialization.
The following fields are not serialized by RSASXQLK.
1030 4144 Signed 4 RSASXDFA Count of SXS page requests
deferred in the real frame
manager for ANY backing frame.
Since only requests for single
pages can defer, this is also the
count of pages associated with
those deferred tasks. It is also
the count of frames needed. A
Transitory SXSTE exists for each
deferred frame request. This
count is serialized by CS.
1034 4148 Signed 4 RSASXDFB Count of SXS pages requests
deferred in the real frame
manager for a frame below 2G.
Since only requests for single
pages can defer, this is also the
count of pages associated with
those deferred tasks. It is also
the count of frames needed. A
Transitory SXSTE exists for each
deferred frame request. This
count is serialized by CS.
1038 4152 Signed 4 RSASXCLA Count of locked SXS alias pages
locked by HCPTRANS or command.
Updated in HCPTRANS processor,
not updated by SXS page mgr.
Serialized by Compare-and-Swap.
103C 4156 Signed 4 RSASXCPL Count of SXS alias pages locked
by the CP LOCK command. Updated
in the LOCK command processor,
not updated by SXS page mgr. This
is a subset of RSASXCLA.
Serialized by Compare-and-Swap.
1040 4160 Signed 4 * Reserved for IBM use.
Miscellaneous SXS Page Manager Fields.
1044 4164 Signed 4 RSASXLOK SXSPM redrive process lockword.
Word used to ensure the SXSPM
request redrive routine is only
invoked by the dispatcher on one
processor at a time. This word
can be in any of the following
states as defined in HCPEQUAT:
DSPNOBFW - no work to do DSPFSCHD
- foreground scheduled DSPFACTV -
foreground active DSPBSCHD -
background scheduled DSPBACTV -
background active Serialized by
compare-and-swap
1048 4168 Dbl-Word 8 RSASXFLGS SXS status flag bits
| SXS status flag bits |
1048 4168 Bitstring 5 * Reserved
104D 4173 Bitstring 1 RSASXINI SXSPM initialization flags.
1... .... RSASXIMX X'80' RSASXIMX When set indicates
the maximum available, backed
page queue size values are set to
values used during
initialization. The values get
reset after seeing SYSSINIT is
off.
104E 4174 Bitstring 1 RSASXREP SXSPM queue replenishment flags
1... .... RSASXRPF X'80' RSASXRPF Replenishment
failed to steal any aliases the
last time it ran.
.1.. .... RSASXRPL X'40' RSASXRPL Replenishment
stole less aliases than
replenishment amt (RSASXQRA)
104F 4175 Bitstring 1 RSASXPQS Potentially stealable queue
status bits
1... .... RSASXNST X'80' ON = SX Page Mgr is
prohibited from using the
stealable queue (RSASXPAN) for
anything other than free storage.
Turned on by HCPSXPFS only
1050 4176 Address 8 RSASXSTO SXS Segment Table Origin for the
segment table that maps the SXS
storage from 0 to SYSSXSSZ. This
is the only section of the SXS
that has PTEs that are updated
after initialization. Because the
entire address range from 0 to
SYSSXSSZ can currently be mapped
by a single segment table, this
STO is used in HCPSXA and HCPSXP
instead of starting at the ASCE
to walk the DAT tables. Starting
at the segment table also depends
on the fact that the segment
table is permanently allocated
during initialization. This field
is set at initialization and
never changes.
1058 4184 Signed 4 RSASXQRA Replenishment Amount - number of
SXS pages to add to available,
unbacked SXS page queue each time
it is replenished. Must be a
multiple of RSASXQBS.
105C 4188 Signed 4 RSASXRPM The minimum number of pages on
the available, unbacked SXS page
queue at the completion of the
replenishment routine since the
system was IPLed.
1060 4192 Signed 4 RSASXRFC Redrive Failure Count. The number
of consecutive times HCPSXARR ran
and the reserved page list was
depleted or there were deferred
requests but HCPSXARR could not
satisfy any of them. This count
is used by HCPSXARR to determine
when to give up (SXA004 abend).
1064 4196 Signed 4 RSAIDEND End of the ID-mapped region of
the SXS. Actually address of the
first byte past the end. Set at
initialization and never changed.
End of SXS page manager data area
| Global IBR Aging List section |
1068 4200 Signed 8 RSAAGESZ Current target size of the aging
list in frames. This is
externalized and subject to SET
AGELIST. This field is set by the
Frame Table manager inversely
proportional to the approach to
the LT.
1070 4208 Dbl-Word 8 RSAIAS Internal Age list size
1078 4216 Signed 2 RSAAGEPC Percent value used to compute the
aging list size (RSAAGESZ) as a
percentage of pageable storage.
The value is in thousandths.
Default is 2%.
107A 4218 Bitstring 1 RSAAGEFL Aging list flags with defaults
set. This full byte is copied
into Monitor (STORSG.RSAAGEFL).
1... .... RSAAGEFX X'80' RSAAGEFX Aging list is a
fixed size.
..1. .... RSAAGEEW X'20' RSAAGEEW Early writes
enabled (default).
...1 .... RSAAGEKS X'10' RSAAGEKS Specifies that the
auxiliary paging slot to which a
page was written during frame
replenish remains allocated after
the page is read in
107B 4219 Bitstring 1 RSAAGETS TS lock for serializing updates
to the aging list target size
RSAAGESZ and RSAAGEPC.
107C 4220 Signed 4 * Reserved for IBM use.
1080 4224 Address 8 RSAAGUWH Head of unwritten section of
Aging List. Points to self when
empty.
1088 4232 Address 8 RSAAGUWT Tail of unwritten section of
Aging List. Points to head when
empty.
1090 4240 Dbl-Word 8 RSAAGINC Count of frames on the aging list
1098 4248 Address 8 RSAAGRCH Head of reclaimable section of
Aging List. Points to self when
empty.
10A0 4256 Address 8 RSAAGRCT Tail of reclaimable section of
Aging List. Points to head when
empty.
10A8 4264 Signed 8 RSAAGINL (6) Spin lock that governs updates to
ASCCTAGLa2g/b2g
10D8 4312 Address 8 RSAAGLRL (Debug only) Address of last lock
releaser.
10E0 4320 Address 8 RSAAGLKS (Debug only) Time lock obtained.
10E8 4328 Address 8 RSAAGLKE (Debug only) Time lock released.
10F0 4336 Dbl-Word 8 RSAEWNDD Number of frames on the Aging
List that need to be written they
are known to be changed
10F8 4344 Dbl-Word 8 RSAEWRFO Number of frames on the Aging
List, above the early write ptr,
that are referenced-only and do
not need to be written
1100 4352 Signed 4 RSAEWCIF Number of changed frames that are
absent from the Aging List b/c
they are in flight for an "early
write
1104 4356 Signed 4 RSAEWRIF Number of ref'd-only frames
absent from the Aging List b/c
they are in flight for an "early
write
1108 4360 Dbl-Word 8 RSAAGRdy Number of reclaimable frames
below the early write pointer.
This is a total value. The pages
may or may not have been
rewritten.
1110 4368 Dbl-Word 8 RSAReclaimHT Target size of the reclaimable
section.
1118 4376 Dbl-Word 8 RSAReclaimLT Trigger writes when reclaimable
section falls below this value.
1120 4384 Dbl-Word 8 RSAAGRdyRefNw Number of reclaimable frames
below the early write ptr whose
pages were referenced-only and
not written.
1128 4392 Dbl-Word 8 RSAAGRdyRefWrt Number of reclaimable frames
below the early write ptr whose
pages were referenced-only and
written for load balancing.
1130 4400 Signed 4 RSANXTSC VMDBK to resume scanning at. When
updating to replace a specific
value in the field, use
compare-and-swap. Otherwise store
can be used.
1134 4404 Signed 4 RSAVUFSZ Latest VUFO size
1138 4408 Address 4 RSADSFHD DSFBK head; zero if DSFBK list is
empty; head DSFBK.DSFBPNT will be
0.
113C 4412 Address 4 RSADSFTL DSFBK tail; zero if DSFBK list is
empty; tail DSFBK.DSFFPNT will be
0.
1140 4416 Address 4 RSADSFCR DSFBK cursor. If Demand Scan
active, this is the DSFBK
currently in use. If Demand Scan
is not active, this is the next
DSFBK to be used. If Demand Scan
never started, or if all DSFBKs
have been removed, this pointer
is zero.
1144 4420 Address 4 RSADSFBK DSFBK bank. Push down stack of
unused DSFBKs using DSFFPNT,
terminated with a pointer value
of all FFs.
1148 4424 Signed 2 RSADSFCT Count of preallocated DSFBKs
114A 4426 Signed 2 RSADSUCT Count of preallocated DSUBKs per
DSFBK.
114C 4428 Signed 4 RSAAGDFC Deficit: The number of frames by
which HCPALGTA came up short when
handling a request; increased by
HCPALGTA, decreased by HCPALGIR;
when non-zero, HCPALGIR will send
frames directly to frame manager
rather than putting them on Aging
List reclaimable section.
Serialized with CS.
1150 4432 Signed 4 RSADFCHW RSAAGDFC high water mark
1154 4436 Signed 4 * Reserved for IBM use.
| Anti-Aliasing data area |
NOTES : When HCPISGTP decides that the storage configuration
supports anti-aliasing it will turn on RSAAAON,
initialize RSAAAPFX to be the top half megabyte of
lowest online range of storage, and set RSAAASXS to
the value to use for SYSSXSSZ. When RSAAAON is set
frame table and SXSTB initialization will use the
alternate origins specified in RSAAAFTO and RSAAASTO,
respectively.
1158 4440 Signed 4 RSAAAFLG (0) Anti-aliasing status flags
1158 4440 Bitstring 3 * RESERVED
115B 4443 Bitstring 1 RSAAASTA Anti-Aliasing status
1... .... RSAAAON X'80' RSAAAON ON = Anti-aliasing
is active
115C 4444 Signed 4 RSAAAPFX Alternate processor PFXPG table
origin when using anti-aliasing.
1160 4448 Dbl-Word 8 RSAAASXS (0) Anti-aliasing SYSSXSSZ value.
1160 4448 Bitstring 8 * DEFAULT VALUE TO USE WHEN
ANTI-ALIASING IS ON, AND
SYSGTORS=8G-1 OR SYSGTORS=2G-1,
AND SYSSXSSZ WAS NOT REDUCED BY
USE OF A REGULATOR RANGE.
1168 4456 Dbl-Word 8 RSAAAFTO (0) Frame Table Origin when using
1168 4456 Bitstring 8 * ANTI-ALIASING. (5G-112M)
1170 4464 Dbl-Word 8 RSAAASTO (0) SXSTB Origin when using
1170 4464 Bitstring 8 * ANTI-ALIASING. (2T+1G-32M)
| Emergency PGMBK allocation section |
NOTES :
If HCPPPIGF attempts to obtain a PGMBK but fails
too many times, an emergency PGMBK will be allocated
from this queue.
1178 4472 Dbl-Word 8 * (0) Alignment
1178 4472 Bitstring 1 RSAemTS Test-and-Set controls access to
these next fields
1179 4473 Bitstring 1 RSAemFL Emergency PGMBK pool flags
.... 1... RSAemRP X'08' RSAemRP Replenishment
required
117A 4474 Bitstring 1 * (2) Reserved for IBM use
117C 4476 Signed 4 RSAemERG Count of all attempts to get an
emergency PGMBK, including when
the pool was empty. May wrap.
1180 4480 Address 8 RSAemFMT A(FRMTE that starts the queue)
1188 4488 Signed 4 RSAemCPc Count of emergency PGMBKs. Number
of frames is equal to RSAemCPc *
2
118C 4492 Signed 4 RSAemDFR Count of deferrals of guests. May
wrap.
1190 4496 Signed 4 RSAemBLO Count of times when the pool
dipped below RSAemLO. May wrap.
1194 4500 Signed 4 RSAemPTY Count of times the pool was
empty. May wrap.
1198 4504 Address 4 RSAemCPq A(deferred CPEBK queue)
119C 4508 Address 4 RSAemRPT A(replenishment task CPEBK)
End of fields controlled by RSAemTS.
11A0 4512 Signed 4 RSAemLO Lo threshold. Updated only under
the VARY PROCESSOR lock. Computed
value is PGMBKperPROC * #online
processors
11A4 4516 Signed 4 RSAemHI Hi threshold. Updated only under
the VARY PROCESSOR lock.
11A8 4520 Signed 8 RSAemDire Count of times the emergency
PGMBK was asked for a frame in a
dire situation.
| Demand Scan Steal Counts: |
All of the fields in this section are cumulative counters
and are serialized by RSADSLOK, except where noted.
11B0 4528 Signed 8 RSADSTmAct Amount of time (in TOD units)
demand scan was running.
11B8 4536 Signed 4 RSAChgWrtOld Changed pgs written to old slot.
11BC 4540 Signed 4 RSAChgWrtNew Changed pgs written to new slot.
11C0 4544 Signed 4 RSARefWrtBypass
Ref-only & PNR (aka RABI) pages
not rewritten
11C4 4548 Signed 4 RSARefWrtNew Ref-only & PNR (aka RABI) pages
rewritten for load balancing.
11C8 4552 Signed 4 RSAAGReclm Frames reclaimed.
11CC 4556 Signed 4 RSAPgQHi High water mark for paging queue
backlog. Serialized by CS. Zeroed
by Monitor at each sample.
11D0 4560 Signed 4 RSAPgOvr Times a paging overrun detected.
11D4 4564 Signed 4 RSAExMet Times demand scan exited because
need met.
11D8 4568 Signed 4 RSAExTim Times demand scan exited because
it exceeded time limit.
11DC 4572 Signed 4 RSAExCPU Times demand scan exited because
it was running on suboptimal CPU.
11E0 4576 Signed 4 * Reserved for IBM use.
11E4 4580 Signed 4 RSAInvUFO UFO pages invalidated.
11E8 4584 Signed 4 RSAInvVUFO VUFO (private VDisk) pages
invalidated.
11EC 4588 Signed 4 RSAInvSUFO SUFO pages invalidated.
11F0 4592 Signed 4 RSARvlUFO UFO pages revalidated. Serialized
by CS.
11F4 4596 Signed 4 RSARvlVUFO VUFO (private VDisk) pages
revalidated. Serialized by CS.
11F8 4600 Signed 4 RSARvlSUFO SUFO pages revalidated.
Serialized by CS.
11FC 4604 Signed 4 RSARvlAGL Aging List pages revalidated.
Serialized by RSAAGINL.
1200 4608 Signed 4 RSAWrtOnDmd Frames reclaimed immediately
after page content written to
aux. Serialized by RSAAGINL.
1204 4612 Signed 4 RSADSCycle Complete iterations through -
VUFO - Adjuncts - MDC, VMLAN, and
relocation - SUFO - Global Cyclic
List
1208 4616 Signed 4 RSAUsrVisit Count of users visited and one or
more pages were made IBR.
120C 4620 Signed 4 RSAUsrSkip Count of users skipped because of
serialization or SET RESERVED.
1210 4624 Signed 4 RSAAGRvlRefNw Ref-only pgs revalidated without
first being rewritten.
1214 4628 Signed 4 RSAAGRvlRefWrt Ref-only pgs revalidated after
being rewritten.
1218 4632 Signed 4 RSAAGRvlChgNw Changed pgs revalidated without
first being rewritten.
121C 4636 Signed 4 RSAAGRvlChgWrt Changed pgs revalidated after
being rewritten.
In most cases when a frame reaches the bottom of the Aging
List it can be immediately reclaimed. However, situations
arise where this is not the case. Each of the following
RSAALSKx counters identify a situation preventing reclaim.
1220 4640 Signed 4 RSAALSKL Frames that were locked/pinned.
1224 4644 Signed 4 RSAALSKF Frames for which frame
serialization could not be
obtained.
1228 4648 Signed 4 RSAALSKP Frames for which page
serialization could not be
obtained.
122C 4652 Signed 4 RSAALSKR Frames requeued because of SET
RESERVED setting.
1230 4656 Signed 4 RSARVHST Glbl revalidation historical rate
1234 4660 Signed 4 RSAIVHST Glbl invalidation historical rate
1238 4664 Signed 4 RSARVCT Glbl recent revalidation count
123C 4668 Signed 4 RSAIVCT Glbl recent invalidation count
1240 4672 Signed 4 RSASRABI Count of pages that were read in
as part of a block but not used
(as seen by demand scan),
formerly known as XSTSRABI. This
field is incremented in paths
that update RSAAGReclm.
1244 4676 Signed 4 * (3) Reserved for IBM use.
| Frame Table Extent Block data: |
We wish to verify that
1) the FTXBKs that we allocate here inside the RSMBK
are of the correct size, and
2) the COPY and the PLXCOPY versions of the RSMBK match.
Since most modules do not include HCPFTXBK, the equate
FTXSIZE generally will not be defined. If it is not
defined yet, we will define it here so that search
engines can find it here.
- If it is defined already, that means HCPFTXBK has been
included, so the CKMAINT will perform a true test.
- If HCPFTXBK is included later, then the compile will
get a "duplicate definition" error and the order of
includes will need to be fixed.
- If the FTXBK control block is changed, this CKMAINT
check will fail, so this COPY file will need to be
fixed, which should lead one to fix the PLXCOPY file
as well.
00000008 FTXSIZE 8 FTXBK is 8 dwords
The following two pre-allocated FTXBKs are mapped by the
FTXBK DSECT in HCPFTXBK COPY and must be kept consistent if
changes are made to either HCPRSMBK or HCPFTXBK.
1250 4688 Dbl-Word 8 RSAFTXBL (0)
1250 4688 Dbl-Word 8 * (8)
1250 4688 Address 4 * Next FTXBK address
1254 4692 Address 4 * Previous FTXBK address
1258 4696 Address 4 * Global "next" chain
1290 4752 Dbl-Word 8 RSAFTXBG (0)
1290 4752 Dbl-Word 8 * (8)
1290 4752 Address 4 * Next FTXBK address
1294 4756 Address 4 * Previous FTXBK address
1298 4760 Address 4 * Global "next" chain
12D0 4816 Signed 8 * (2) Reserved for IBM
End of Frame Table Extent Block data
| QDIO fields |
12E0 4832 Address 8 RSAFOBSL FOB Supply List anchor
12E8 4840 Address 8 RSAFOBRL FOB Release List anchor
12F0 4848 Address 4 RSATGTSK A(TG task CPEBK)
12F4 4852 Signed 4 RSAFOBCT Count of FCP Operation Blocks
(FOBs) that are currently in the
system. This includes all FOBs
that are on processor local
available lists as well as those
that are currently in use.
12F8 4856 Signed 4 RSAFOBGC Count of FOBs on Global Lists
12FC 4860 Signed 4 RSAFOBGH High threshold for FOBs on Global
Lists
1300 4864 Signed 4 RSAFOBGZ Count of Global Pool gone empty
1304 4868 Bitstring 1 RSAFOBLK Lock for FOB Supply List
1305 4869 Bitstring 1 RSAFOBTK HCPFOB tasks started? X'FF' means
'yes'
1306 4870 Bitstring 1 * RESERVED FOR IBM USE
1307 4871 Bitstring 1 * RESERVED FOR IBM USE
| Fields for reserved frame counts |
| |
| Notes : |
| - The fields in this section along with the reserved |
| frame setting in the VMDBK (VMDMXRVP) are serialized |
| with the RSARSDLK. |
| - Either RSARSDLK or the applicable global SNTBK lock |
| is sufficient to run an RSDBK chain (NSUSGQLK for |
| RSARSDDC and NSUSYQLK for RSARSDNS). However, both |
| a share of the global SNTBK lock AND exclusive access |
| to RSARSDLK are needed to update any RSDBK in the |
| chain. This ensures the state of the NSS or DCSS |
| does not change while the RSDBK is being manipulated. |
| - No serialization is required to read RSARSVPG |
| or RSARSDMX (for example, by Monitor). |
1308 4872 Dbl-Word 8 RSARSDLK (3) Reserved frames defer lock.
1320 4896 Signed 4 RSARSVSS Total count of frames reserved
for NSSs and DCSSs only.
1324 4900 Signed 4 RSARSVPG Total count of frames reserved
for users, NSSs, and DCSSs.
1328 4904 Signed 8 RSARSDMX Maximum number of frames that can
be reserved as specified on the
STORAGE RESERVED SYSMAX config
statement or via the SET RESERVED
SYSMAX command.
1330 4912 Signed 4 RSARSDDC Chain of RSDBKs containing the
reserved frame settings for DCSSs
that are not loaded.
1334 4916 Signed 4 RSARSDNS Chain of RSDBKs containing the
reserved frame settings for NSSs
that are not loaded.
| Managed Buffer Set Circular Linked List |
| This anchor (RSAFMBBK) is serialized by the spin lock |
| RSAMBSLK. This lock also serializes the fields MBBNEXT |
| and MBBPREV in each HCPMBBK that is part of this |
| circular linked list, since these fields are the next |
| and back pointers for this list's elements. |
| This circular linked list is managed by the module |
| HCPMBS. |
1338 4920 Address 4 RSAFMBBK Anchor to the Managed Buffer Set
circular linked list.
133C 4924 Bitstring 1 RSAMBSLK Managed Buffer Set spin lock. It
serializes RSAFMBBK; it also
serializes the MBBNEXT and
MBBPREV fields of the HCPMBBKs
that are part of this list.
133D 4925 Bitstring 3 * Reserved for IBM
| Managed Frame Request Circular Linked List. |
| This anchor (RSAFRQCR) is serialized by the spin lock |
| RSAFRQLK. This lock also serializes the fields FRQNEXT |
| and FRQPREV in each HCPFRQBK that is part of this |
| circular linked list, since these fields are the next |
| and back pointers for this list's elements. |
| This circular linked list is managed by the module |
| HCPFRQ. |
1340 4928 Address 4 RSAFRQCR Pointer to current frame request
being serviced by HCPFRQ.
1344 4932 Bitstring 1 RSAFRQLK HCPFRQBK queue mgmt spin lock. It
serializes RSAFRQCR; it also
serializes the FRQNEXT and
FRQPREV fields of the HCPFRQBKs
that are part of this list.
1345 4933 Bitstring 1 RSAFRQAA HCPFRQAA task active indicator
X'FF' means 'active'
1346 4934 Bitstring 2 * Reserved for IBM
1348 4936 Address 8 RSAFRQFF Address of 1st frame on list
1350 4944 Address 8 RSAFRQLF Address of last frame on list
1358 4952 Signed 4 RSAFRQCT Count of frames on list for
current FRQBK
135C 4956 Signed 4 RSAFRQND Count of frames still needed for
current FRQBK
1360 4960 Signed 4 RSAFRQAC Count of frames needed for ALL
FRQBKs (for RAS)
1364 4964 Signed 4 RSAFRQDS Cumulative count of frames that
FRQDS released during demand scan
1368 4968 Signed 4 RSAFRQFS Cumulative count of times
HCPFRQFS was called
136C 4972 Signed 4 RSAFRQSV SVGBK address used when taking
desperate measures to avoid
FRF002
| Live Guest Relocation Global Values |
1370 4976 Signed 8 RSACPTRG Initial value of changed pages
threshold used to determine when
to discontinue the pre-quiesce
memory passes. This value is
stored in RLOCPTRG prior to
memory move. RLOCPTRG is
re-evaluated and updated by
HCPRLSCM after several memory
move passes have been made.
1378 4984 Signed 4 RSAMXPAS Maximum number of pre-quiesce
memory passes. This value is
stored in RLOMXPAS prior to
memory move. The number of
pre-quiesce memory passes may
actually be much less that this
value due to the algorithms in
HCPRLSCM for limiting passes if
substantial progress in reaching
the changed page threshold
(RLOCPTRG) is not being made or
if the the threshold is reached.
137C 4988 Signed 4 RSASNDMX Maximum number of outstanding
sends allowed before the memory
move send task delays. This value
is stored in RLOSNDMX prior to
memory move. The delay prevents
the memory move task from getting
too far ahead of the ISFC
communication link.
1380 4992 Signed 4 RSARMMAX The maximum number of memory move
messages awaiting recovery before
the send task delays. This value
is stored in RLORMMAX prior to
memory move. The delay allows the
outstanding Recover_Message tasks
to run.
1384 4996 Signed 4 RSATSLMF Value used in computation to
determine whether to open a
window to allow other CP tasks to
run. It is used by the LGR PGMBK
walker and the destination side
receive loop. This value is
multiplied with the dispatch
minor time slice and then
compared against time elapsed
since a window was last opened.
Generic TLB/ALB Purge DAT Table Aging List area
The Generic TLB/ALB Purge DAT Table Aging List (GTPAL for
short) is for blocks previously used as DAT tables which
cannot be returned for reuse until all real processors
have purged their TLBs and ALBs.
The blocks are either 2K blocks from absolute aligned
free, or 1-4 frames from HCPGETFR.
This is a doubly linked circular list that includes the
header, but the forward and backward pointers of the
blocks are non-standard.
See the AGINBLK DSECT in HCPHRU for details of the
queueing and timestamp and type representation within the
aging blocks on the queue.
All fields from here down to RSAGTPLK are serialized by
RSAGTPLK.
1388 5000 Address 8 RSAGTPAF Aging list forward pointer,
64-bit host absolute address of
the first block on the chain.
Initialized to point to its own
header (empty)
1390 5008 Address 8 RSAGTPAB Aging list backward pointer,
64-bit host absolute address of
the last block on the chain.
Initialized to point to its own
header (empty)
1398 5016 Signed 4 RSAGTPAC Count of blocks on queue (total)
Note these next 5 counts must be
kept in order in their respective
positions, as they are maintained
by indexing based on the number
of frames in the block (or 0 for
a page table).
139C 5020 Signed 4 RSAGTPAP Count of 2048 byte page tables
(from AFR) on queue
13A0 5024 Signed 4 RSAGTPA1 Count of single frames on queue
13A4 5028 Signed 4 RSAGTPA2 Count of 2 frame sets on queue
13A8 5032 Signed 4 RSAGTPA3 Count of 3 frame sets on queue
13AC 5036 Signed 4 RSAGTPA4 Count of 4 frame sets on queue
13B0 5040 Signed 4 RSAGTPLK Aging queue lock This is an
informal spin lock. RSAGTPLK is
set to the address obtaining the
lock. When free, its value is
zero. Use Compare-and-Swap to
update.
13B4 5044 Signed 4 * Reserved for IBM use
Frame table chain pointers
13B8 5048 Address 8 RSAFTOFTE Host real addr of FRMTE for frame
used for first frame table page.
13C0 5056 Address 8 RSASTOFTE Host real addr of FRMTE for frame
used for first SXS table page.
13C8 5064 Signed 4 RSAFTCKS Checksum for FRMTEs on the
RSAFTOFTE chain.
13CC 5068 Signed 4 RSASTCKS Checksum for FRMTEs on the
RSASTOFTE chain.
Stand-alone dump crashkernel memory allocation info.
The SAD crashkernel memory is allocated during system
initialization, and will not span across the 2G line.
Only one of RSACKMB2G or RSACKMA2G will be non-zero.
For more information about the Stand-alone dump
crashkernel memory see HCPDMO.
13D0 5072 Address 8 RSACKMEM Absolute address of crashkernel
memory used for stand-alone dump
when allocated; otherwise 0. This
field is only updated during
system initialization.
00008000 RSACKMSZ 32768 The number of contiguous
frames allocated for stand-alone
dump crashkernel memory. This
number specifies the size of
crashkernel memory required by
the currently supported version
of stand-alone dump.
13D8 5080 Signed 4 RSACKMB2G Count of CP frames below 2G
allocated as stand-alone dump
crashkernel memory. The count is
not included in RSADmpCP. This
field is only updated during
system initialization. (Maintain
MRMTRMEM)
13DC 5084 Signed 4 RSACKMA2G Count of CP frames above 2G
allocated as stand-alone dump
crashkernel memory. The count is
not included in RSADmpCP. This
field is only updated during
system initialization. (Maintain
MRMTRMEM)
Start of RSM Dynamic Memory Upgrade work area
This area will be used to accumulate the changes to be
applied once all the new frames, lists, counts, and
whatever else is affected by the SET STORAGE command
have been prepared.
Definitions for fields that are not part of the
real RSMBK common area
13E0 5088 Signed 8 rsaPFXFTLEN Length of frame table
13E8 5096 Signed 8 rsaPFXSTLEN SXSTB size
13F0 5104 Bitstring 1 rsaPFXGPFLG General purpose flag PFX2GU -
usable storage exists >2G
(flag)
13F1 5105 Bitstring 1 rsaVMDLOWW0 work bit VMDINI2G - >2G frame
initialization required
13F2 5106 Bitstring 6 * Reserved for IBM
13F8 5112 Signed 8 rsaSYSGTORS - new SYSGTORS
1400 5120 Signed 8 rsaSYSSXSSZ - new SYSSXSSZ
1408 5128 Signed 8 * - Reserved for IBM use.
1410 5136 Signed 4 rsaSYSTORS - new SYSTORS
Delta-Pinned-Page-Count Array
- DPPA for page class 1
- accumulated system pin counts
Delta-Pinned-Page-Count Array (DPPCA) for page class 1
Used by both hardware and software to maintain pinned
page counts for page class 1 pages. Page class 1 is
used for NSS/DCSS imbedded shared pages. This array
is pointed to by the class 1
Delta-Pinned-Page-Count-Array Origin in the prefix
area, PFXDPPCAO. The page class 0 array is used for
base address space pages owned by the user and
resides in the virtual configuration's base ASCBK.
System total Pinned-Page-Count page class 0 B2G
System total Pinned-Page-Count page class 0 A2G
Accumulated by HCPLALRU at pin count roll-up
System total Pinned-Page-Count page class 1 B2G
System total Pinned-Page-Count page class 1 A2G
Accumulated by HCPLALRU at pin count roll-up
1418 5144 Dbl-Word 8 RSADPPCA (0) Delta-pinned-page count array
1418 5144 Signed 4 RSADPPB Delta-pinned-page count for all
class 1 pages pinned below 2G
141C 5148 Signed 4 RSADPPA Delta-pinned-page count for all
class 1 pages pinned at or above
2G
1420 5152 Signed 8 RSApin0B System total class 0 B2G
1428 5160 Signed 8 RSApin0A System total class 0 A2G
1430 5168 Signed 8 RSApin1B System total class 1 B2G
1438 5176 Signed 8 RSApin1A System total class 1 A2G
1440 5184 Address 1 RSAPINWP PCIe pinned count warning percent
1441 5185 Address 1 RSAPINFP PCIe pinned count fail percent
1442 5186 Bitstring 1 RSAPINLW PCIe pinned last reported warning
1443 5187 Bitstring 1 * Reserved
1444 5188 Signed 4 * reserved
1448 5192 Signed 4 RSAPINWC Count of times pin warning issued
144C 5196 Signed 4 RSAPINFC Count of times pin failed
1111 1111 RSAPINNC X'FF' Default Value for RSAPINWP
and RSAPINFP indicating no pin
checking should be done.
1450 5200 Signed 8 * Reserved for IBM
1458 5208 Signed 8 RSAAGCHW RSAAGINC high water mark; ser'd
by Aging List lock
Paging / Demand Scan handshaking fields - current as of the
most recent paging I/O completion (serialized by CPVOL
list lock)
1460 5216 Signed 4 RSAPgAvlMWBwd Available paging MW bandwidth -
the number of additional page
writes that can be started before
write bandwidth "fills up",
according to existing MW queue
lengths and the HCPSMOWF tuning
factor
1464 5220 Signed 4 RSAPgTotQS Total queued single reads&writes
on active paging volumes
1468 5224 Signed 4 RSAPgTotQMR Total queued MultiReads on active
paging volumes
146C 5228 Signed 4 RSAPgTotQMW Total queued MultiWrites on
active paging volumes
Throttle counts
1470 5232 Signed 4 RSAwrThrots Count of times write throttling
affected decisions
1474 5236 Signed 4 RSAdmThrots Count of times demand throttling
affected decisions
1478 5240 Signed 4 RSAthrDQskip Count of times demand throttle dq
had to skip user-type deferred
request
147C 5244 Signed 4 RSAprThrots Count of times a partial write
throttle occurred because the
need was limited by bandwidth
1480 5248 Signed 8 RSAIOAT (16) IO ADDRESS TABLE work area
Controls for System Reset Clear timing
1500 5376 Bitstring 64 RSASRClp Mask of CPUs doing low prty wrk
1540 5440 Dbl-Word 8 RSASRCht High Thresh % of SRMCTSMP
1548 5448 Signed 4 RSASRCr Nbr tasks doing clearing
154C 5452 Bitstring 3 * Reserved for IBM use.
154F 5455 Bitstring 1 RSASRCql RSASRCq lock
1550 5456 Address 4 RSASRCq Head SVGBK on delay queue
1554 5460 Address 4 RSASRCe End SVGBK on delay queue
Pageable PGMBK processing area:
There are two "no spin" TS locks used to control the
the stacking and processing of pageable PGMBKs by HCPALRPP.
RSAPPGSL is the "stack lock", used to obtain rights to
stack a PGMBK processing task (either as a stacked goto
to HCPALRPG, which then calls HCPALRPP, or as an MP deferred
call via HCPMPDFL). Tasks which cannot process inline (due
to being on a static savearea, or not being on SYSTEM or
SYSTEMMP VMDBKs in R11, or serialization reasons) have to
use the stacking technique when demand for contigs in
general and/or PGMBKs specifically requires it.
Notes : Do not spin on this lock, as it is sometimes held over
a loss of control.
RSAPPGPL is the "processing lock", which gives rights to
actually run HCPALRPP. It is obtained and released only by
HCPALRPP. If it cannot be obtained, HCPALRPP simply exits,
as another processor is already running it.
Notes : Do not spin on this lock, as it is sometimes held over
a loss of control.
The rationale for this two stage triggering process is to
allow both:
- Any logical trigger point should be able to trigger PPGMBK
processing no matter how "deep" it is in the call chain.
- Any logical trigger point that can run HCPALRPP inline
(must be both dynamic and on SYSTEM or SYSTEMMP in R11)
should be able to do so immediately, without waiting for
a previously stacked request to unstack.
1558 5464 Bitstring 1 RSAPPGSL Pageable PGMBK Processing Stack
Lock (TS with no spin to try to
obtain right to stack or use
HCPRSMPP savearea)
1559 5465 Bitstring 1 RSAPPGPL Pageable PGMBK Processing Lock
(TS with no spin to try to obtain
right to process)
155A 5466 Signed 2 * Reserved for IBM use
155C 5468 Bitstring 1 RSAPPGFL Pageable PGMBK processing flags,
serialized by RSAPPGPL
1... .... RSAPPGXS X'80' RSAPPGXS Try paging
pageable PGMBKs out to xstore
before sending them to DASD
155D 5469 Bitstring 3 * Reserved for IBM use.
1560 5472 Signed 4 * Reserved for IBM use.
Handshaking area for coordination between PPGMBK processing
and LGR (now specific to PPGMBK processing rather than
demand scan in general).
1564 5476 Signed 4 RSARLRDV Stack of CPEBKs to be redriven by
ALRPP after DPPL processing.
Serialized by CS. Relocations
push a CPEBK onto this stack;
ALRPP harvests the entire stack
at once. Initialized and reset to
0; ALRPP sets to -1 to tell
relocation tasks to open a PTIL
window; contains a CPEBK address
when at least one relocation task
is waiting to be redriven by
ALRPP. CPEBKs chained by CPEXFPNT
and terminated by -1.
1568 5480 Signed 8 RSARLOWS Time stamp of the last time
DSCRLRDV was set to -1.
1570 5488 Signed 8 RSARLOWR Time stamp of the last time
DSCRLRDV was reset to 0.
NDMBK global recycle queue data
1578 5496 Signed 4 RSANDMREC Count of times a global reclaim
task has been initiated.
157C 5500 Signed 4 RSANDMRND Count of NDMBKs that have been
returned to free storage because
a global reclaim task released
NDMBKs from the global NDMBK
recycle queue.
System Execution Space Low Water mark fields
1580 5504 Signed 8 RSASXSLT Timestamp of SXS low water mark
1588 5512 Signed 4 RSASXSLW SXS Low Water mark
Counts for Pageable PGMBK Prefetching
Historical counts:
158C 5516 Signed 4 RSAPFPSS STEs scanned
1590 5520 Signed 4 RSAPFPII Prefetch I/Os issued - PPGMBKs
1594 5524 Signed 4 RSAPFPIP Prefetch I/Os issued - HCPPAGMR
calls
1598 5528 Signed 4 RSAPFPIC Prefetch I/Os completed
159C 5532 Signed 4 RSAPFPPR Prefetch PTRM revalidations
completed
15A0 5536 Signed 4 RSAPFPSR Prefetch STE revalidations
completed
15A4 5540 Signed 4 RSAPFPOM Prefetch "opportunities missed" -
count of paged-out PPGMBKs found
by mainline paths of prefetch
exploiters (currently only
release processing)
Outstanding state counts:
15A8 5544 Signed 4 RSAPFPOI Prefetch I/Os outstanding,
nothing back yet
15AC 5548 Signed 4 RSAPFPO1 Prefetch I/Os outstanding, half
done, half not yet
15B0 5552 Signed 4 RSAPFPOP Prefetch I/Os fully completed,
PTRM revalidation outstanding
DPPL Processing RAS fields
15B4 5556 Signed 4 RSAPPRns MI count of times HCPALRPP ran
(not including times simply
exited without doing work)
15B8 5560 Signed 4 RSAPPNth MI count of times HCPALRPP ran
(not including times simply
exited without doing work) but
freed up nothing
15BC 5564 Signed 4 RSAPPRmv Cum. count of PGMBKs removed from
the DPPL by HCPALRPP processing
15C0 5568 Signed 4 RSAPPVis Cum. count of PGMBKs visited on
the DPPL by HCPALRPP processing
15C4 5572 Signed 4 * Reserved for IBM use
15C8 5576 Dbl-Word 8 RSAPPRtm Cum. total HCPALRPP runtime
15D0 5584 Dbl-Word 8 RSAPPRm2 Cum. total: Sigma(RSAPPRmv
squared)
15D8 5592 Dbl-Word 8 RSAPPVi2 Cum. total: Sigma(RSAPPVis
squared)
15E0 5600 Dbl-Word 8 RSAPPRt2 Cum. total: Sigma(RSAPPRtm
squared)
Memory Configuration Initialization Data
15E8 5608 Signed 8 RSASTPRM Number of bytes - 1 that are
PERManent storage as specified on
the STORAGE PERManent system
config statement.
15F0 5616 Signed 8 RSASTRCF Number of bytes - 1 that are
RECONFIGurable storage as
specified on the STORAGE
RECONFIGurable system config
statement. Exception: 0 bytes is
stored as 0
15F8 5624 Bitstring 1 RSASTFLG Storage Flags configuration.
1... .... RSARESKP X'80' RSARESKP During reipl after
a restart (CP abend or PSW
Restart), memory will be
re-established to the
configuration as it was at
shutdown. (KEEP)
.1.. .... RSASHTKP X'40' RSASHTKP During reipl after
a shutdown reipl command, memory
will be re-established to the
configuration as it was at
shutdown. (KEEP)
...1 .... RSARECOK X'10' RSARECOK Reconfigurable
Storage is allowed on this
system.
.... 1... RSASTREQ X'08' RSASTREQ Indicates that an
IPL parameter of STORE= was
specified.
.... .1.. RSASTINI X'04' RSASTINI Indicates that an
IPL parameter of STORE=INITIAL
was specified.
15F9 5625 Bitstring 1 RSAIPLST IPL Storage Flags configuration.
1... .... RSASTEQL X'80' RSASTEQL IPL'd with STORE=
.1.. .... RSASYSCF X'40' RSASYSCF IPL'd with System
config file statementes
..1. .... RSANONE X'20' RSANONE IPL'd with no
STORE= or sys config file storage
statements.
...1 .... RSAKEEP X'10' RSAKEEP IPL'd with KEEP in
effect
.... 1... RSAABEND X'08' RSAABEND IPL'd because of
ABEND
.... .1.. RSASHUT X'04' RSASHUT IPL'd because of
shutdown reipl
15FA 5626 Bitstring 1 * (2) Reserved for IBM Mem Config use.
15FC 5628 Signed 4 RSADMDHS Dynamic Memory Downgrade history;
chain of inactive VACBKs and
subordinate blocks representing
up to the last RSADMDHistMax
downgrade attempts (since IPL)
0000000A RSADMDHistMax 10 Keep up to last 10 downgrades
1600 5632 Signed 4 RSAVACBK Addr of VACBK for current memory
downgrade, if any
1604 5636 Signed 4 * Reserved for IBM Mem Config use.
1608 5640 Signed 8 RSARQPRM Number of bytes - 1 that are
PERManent storage as requested
during IPL of the system
1610 5648 Signed 8 RSARQRCF Number of bytes - 1 that are
RECONFIGurable storage as
requested during IPL of the
system Exception: 0 bytes is
stored as 0
1618 5656 Signed 8 RSAACPRM Number of bytes - 1 that are
PERManent storage after IPL of
the system completes
1620 5664 Signed 8 RSAACRCF Number of bytes - 1 that are
RECONFIGurable storage after IPL
of the system completes
Exception: 0 bytes is stored as 0
These fields are added here at the end
to maintain offsets once a customer has
received code for the release.
1628 5672 Signed 8 * (12) Reserved for IBM use.
End of RSM common area
000002D1 RSASZD (*-RSMBK+7)/8 Size in D-words
Define a local DSECT that can be used to adjust the
thresholds for the available list requests.
There are three types of requests (with thresholds)
- Type any singles requests. (TAS)
- Type any contigs requests. (TAC)
- Type <2G only singles requests. (AKA Type 2, T2, T2S)
There are three types of thresholds. (PT, HT, and LT)
- Protect threshold (PT) some type of protection.
- High threshold (HT) stop replenishment.
- Low threshold (LT) begin replenishment.
Thus we have:
o TAC.PT - the value (+1) at which we will
give singles pageable frame requests
a frame from a contigs list.
o T2S.PT - the value (+1) at which we will
give singles pageable frame requests
a frame from a <2G available zone.
o TAC.HT - the value at which we will stop
TAS.HT replenishment functions. (Demand
T2S.HT scan, PGMBK manufacturing, T2 frame
table scan for replenishment.)
o TAC.LT - the value (-1) at which we will start a
TAS.LT replenishment function.
T2S.LT
| |