Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
ALEBK
Control Block Contents
ALEBK DSECT
Cross Reference (Contains links to field and bit definitions)
ALEBK Prolog
NAME : HCPALEBK DESCRIPTION: Access List Entry DSECT : ALEBK FUNCTION : ALEBK maps the storage associated with one entry of an Access List. The entries are used in access register translation. LOCATED BY : Access register translation. An Access List Entry is part of an Access List Entry Table. The beginning of the table is pointed to by an entry in the Dispatchable Unit Control Table (DUCT) or by the primary ASN Second Table Entry (ASTE). The access list entry table is indexed into by an access list entry number (ALETEN). CREATED BY : ALEs designating entries in access lists created and managed by CP are formed by HCPALMAD. DELETED BY : ALEs designating entries in access lists created and managed by CP are deleted by HCPALMDL. SERIALIZED : This DSECT is to map guest storage, the user of the DSECT is responsible for serialization. It also maps ALEs in access lists created and managed by CP. The ALCBK lock (ALCLOCK) is the serialization for changes to those entries. RELOCATION CONSIDERATIONS : None
ALEBK Control Block Content
ALEBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure ALEBK Access List Entry 0000 0 Bitstring 16 ALE (0) 0000 0 Signed 4 ALEW0 (0) The first word of the ALEBK .... .... ALEW0INV X'80000000' ALEW0INV Invalid bit in ALE word 0 000ALEW0 ALEW0SNM X'00FF0000' ALEW0SNM ALE sequence number in word 0 000ALEW0 ALEW0SIG X'83FFFFFF' ALEW0SIG Defined bits in ALE word 0 0000 0 Bitstring 1 ALE0 First byte of entry 1... .... ALEINV X'80' ALEINV Access List Entry INValid bit - '1'B = the access-list entry is invalid. During AR translation involving this ALE, an ALEN-translation exception is recognized. .... ..1. ALEFONLY X'02' ALEFONLY Fetch only bit - indicates fetch only access to address space .... ...1 ALEPRIV X'01' ALEPRIV PRIVate Bit - '0'B = any program can use this entry. '1'B = programs must have an EAX (in CR8) which is identical to ALEAX, or the EAX (in CR8) must select an authority table secondary bit with a value of 1. 0001 1 Bitstring 1 ALESN ALE Sequence Number - is compared against the ALETSN in the ALET during access-register translation. Inequality causes an ALE-sequence exception to be recognized. 0002 2 Signed 2 ALEAX ALE Authorization IndeX - may be used to determine whether the program for which AR translation is being performed is authorized to use the access-list entry. See ALEPRIV for more info. 0004 4 Bitstring 4 * Reserved Bits 0 and 28-30 of the following field must be zeros. 0008 8 Address 4 ALEASTE (0) ASN Second Table Entry origin - the address of the ASTE for the specified address space. 00FFFFC0 ALEASTOM X'7FFFFFC0' Significant bits of ASTE origin. ANDed with ALEASTE to isolate address. 0008 8 Bitstring 1 * (3) Skip first three bytes of ASTEO 000B 11 Bitstring 1 ALEFLAGS Flag byte origin. ..1. .... ALERPRG1 X'20' Reserved for programming (in use) ALERPGR1 has two programming use definitions, one for use in the CP-use access list (ALENTDSP) and one for use in guest access lists (ALEPFAUL). Since an individual Access List Entry cannot be in both types of list at once, these two redefinitions of ALERPRG1 do not overlap. ..1. .... ALENTDSP X'20' When set in the CP-use access list, indicates the ALE designates an address space not owned by the dispatched user. ..1. .... ALEPFAUL X'20' When set in a guest access list, indicates page faults are eligible for asynchronous processing. (Pseudo page-fault bit) ...1 .... ALERPRG2 X'10' Reserved for programming (in use) ...1 .... ALERACC X'10' When set in a host access list, indicates the ALE designates that the address space be accessed with r-access. Otherwise, i-access should be used. 000C 12 Bitstring 4 ALEASTSN ASTE Sequence Number - compared against an ASTE sequence number (ASTSN) in the designated ASTE during access-register translation. 00000010 ALELEN *-ALEBK Entry size in bytes 00000002 ALESIZE (ALELEN+7)/8 Size in doublewords of the ALE *cmnt** ORG ALEBK+ALELEN Redefinition for second ALE in an access list: 0010 16 Bitstring 8 * Reserved Area reserved for programming... 0018 24 Address 4 ALEALCBK In access lists built by CP, the second access-list entry in each access list (the one with ALEN=1) contains a pointer to the ALCBK, CP's access-list control block. 001C 28 Signed 4 * Reserved for programming 00000004 ALENSHFT 4 Shift needed to transform ALEN into byte offset into access list.
ALEBK Storage Layout
*** ALEBK - Access List Entry * * +------+------+-------------+---------------------------+ * 0 |ALE0 |ALESN | ALEAX |///////////////////////////| * +------+------+------+------+---------------------------+ * 8 |////////////////////|:FLAGS| ALEASTSN | * +--------------------+------+---------------------------+ * 10 |///////////////////////////////////////////////////////| * +---------------------------+---------------------------+ * 18 | ALEALCBK |///////////////////////////| * +---------------------------+---------------------------+ * 20 * *** ALEBK - Access List Entry
ALEBK Cross Reference
Symbol Dspl Value -------------- ---- ----- ALE 0000 ALEALCBK 0018 ALEASTE 0008 ALEASTOM 0008 00FFFFC0 ALEASTSN 000C ALEAX 0002 ALEFLAGS 000B ALEFONLY 0000 02 ALEINV 0000 80 ALELEN 000C 00000010 ALENSHFT 001C 00000004 ALENTDSP 000B 20 ALEPFAUL 000B 20 ALEPRIV 0000 01 ALERACC 000B 10 ALERPRG1 000B 20 ALERPRG2 000B 10 ALESIZE 000C 00000002 ALESN 0001 ALEW0 0000 ALEW0INV 0000 00 ALEW0SIG 0000 000ALEW0 ALEW0SNM 0000 000ALEW0 ALE0 0000
Copyright IBM Corporation, 1990, 2011