Programming Interface Information: This information is NOT intended to be
used as Programming Interfaces of VM/ESA. It is to be used for diagnosis only.

CPEBK

Prolog  

Control Block Contents  

CPEBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  

CPEBK Prolog

 NAME       : HCPCPEBK
 DESCRIPTION: CP TASK EXECUTION BLOCK
 DSECT      : CPEBK
 FUNCTION   : HCPCPEBK MAINTAINS REGISTER VALUES AND ADDRESSING
              INFORMATION (MODULE ADDRESS OR ENTRY POINT ADDRESS)
              TO ALLOW CODE TO BE EXECUTED ASYNCHRONOUSLY.  NOTE:
              A CPEBK IS IDENTICAL TO A SAVBK.
 LOCATED BY : CPEXFPNT  DOUBLY CHAINED
              CPEXBPNT  DOUBLY CHAINED
              CACXRCPX  FIELD OF HCPCACBK   (X-SIDE CHANNEL RECONNECT)
              CACYRCPX  FIELD OF HCPCACBK   (Y-SIDE CHANNEL RECONNECT)
              DIOQUEUE  FIELD OF HCPDIOBK   (PENDING CRW TASKS FOR
              THE CORRESPONDING RDEV)
              GSDCPEX   FIELD OF HCPGSDBK
              LCKQUE    FIELD OF HCPLCKBK   (OBTAIN LOCK QUEUE)
              PIOCPEX   FIELD OF HCPPIOBK   (PAGING I/O)
              RDEVWTDV  FIELD OF HCPRDEV    (WAIT-DEVICE)
              SYSDCPEX  FIELD OF HCPSYSCM   (DIRECTORY SWAP CONTROL BLOCK)
              VDSDSTK   FIELD OF HCPVDSBK   (DEFERRED STACK FOR DEVICE)
              VMDQURCP  FIELD OF HCPVMDBK   (URGENT CPEBK STACK)
              VMDQCPEF  FIELD OF HCPVMDBK   (NORMAL CPEBK STACK)
              HCPPAGQ   FIELD OF HCPPAG     (TASKS IN TRANSIT - ACTIVE I/O)
              HCPPTRKQ  FIELD OF HCPPTR     (TASKS IN PAGE WAIT FROM A
              STEAL TASK WRITE)
              HCPPTRRQ  FIELD OF HCPPTR     (PAGING READ REQUEST QUEUE)
              HCPPTRWQ  FIELD OF HCPPTR     (PAGING WRITE REQUEST QUEUE)
              FREEQ     FIELD OF HCPPTR     (TASKS WAITING FOR FREE FRAME)
              STACKQ    FIELD OF HCPPTR     (RELATED TASKS WAITING FOR A
              PAGE)
              WAITQ     FIELD OF HCPPTR     (TASKS WAITING FOR USERS IN
              PAGE WAIT)
 CREATED BY : HCPABN   SWITCH BACK TO ORIGINAL USER DURING SOFT ABEND
              HCPCSP   SWITCH TO BASE VMDBK DURING CLOSE OR SPOOL COMMAND
              HCPCTC   SUSPEND COMMANDS DURING CTCA PROCESSING
              HCPFRE   SWITCH TO MASTER PROCESSOR DURING FREE STORAGE
              EXTEND
              HCPGDS   SIMULATE DASD UNSOLICITED INTERRUPT
              HCPGFS   SWITCH TO RDEVUSER FOR FULLSCREEN PROCESSING
              HCPGMC   STACKED GOTO ENDOP TO REFLECT MACHINE CHECK
              HCPGRF   TRANSFER CONTROL DURING LOGON, SWITCH TO BASE VMDBK
              IF NEEDED AFTER CALL TO HCPIOSRQ
              HCPGRS   DEFERRED WRITE TO PRINTER FOR PF COPY
              HCPIOS   DEFERRED DEVICE INTERVENTION-REQUIRED TASK
              HCPLOC   WAIT FOR LOCK TO BECOME UNLOCKED
              HCPLOG   DEFERRED RECONNECT, AUTOLOG, LOGON OF V=R USER
              HCPMCH   CALL HCPGMC ASYNCHRONOUSLY TO REFLECT MACHINE
              CHECK, ARRANGE FOR MACHINE CHECK SLIH TO RUN
              ASYNCHRONOUSLY
              HCPMCW   CALL HCPGMC ASYNCHRONOUSLY TO REFLECT MACHINE
              HCPMPF   DEFERRED UNDEDICATE PROCESSOR TASK DURING SWITCH
              MASTER PROCESSOR
              HCPPAG   DEFERRED PAGING I/O ERROR MESSAGE
              HCPPGT   DEFERRED PAGING/SPOOLING SPACE FULL MESSAGE
              HCPPTR   DEFERRED TASKS (STEAL TASK, PAGING DURING FREE
              STORAGE EXTEND, PUT USER IN PAGE I/O WAIT)
              HCPQCO   DEFERRED COMPLETION RESPONSE TO COMBK ORIGINATOR
              HCPRES   DEFERRED COMPLETION RESPONSE (PATH-MANAGEMENT
              CONTROL)
              HCPRFC   (RFCNT)  PENDING CRW TASK -OR- CRW TASK
              STACKED ON THE SYSTEM.
              HCPRSP   DEFERRED SPOOL DEVICE REQUEST
              HCPSFR   DEFERRED SPOOL FILE DELETION
              HCPSTK   DEFERRED RELEASE OF VMDBK STORAGE DURING LOGOFF
              HCPUDR   DEFERRED DIRECTORY SWAP TASK
              HCPUSO   DEFERRED LOGOFF OF FORCED-OFF USER
              HCPVSP   DEFERRED VIRTUAL SPOOLING REQUEST
              HCPVUR   DEFERRED VIRTUAL UNIT RECORD DEVICE REQUEST
 DELETED BY : HCPSVC   CPEBKS ARE DELETED AS SAVBKS
 SERIALIZED : SERIALIZATION IS PROVIDED BY THE DISPATCH LOCK EXCEPT
              FOR CPEXCPRQ WHICH IS SERIALIZED BY TRQBK AND BY THE
              MP DEFER FUNCTION.
 COMMENTS   : CPEXFPNT AND CPEXBPNT ARE USED TO MAINTAIN VARIOUS
              CPEBK QUEUES AND STACKS.  ROUTINES MAY USE THESE
              FIELDS IF THE CPEBK IS NOT CURRENTLY ON A QUEUE OR
              STACK.  AN EXAMPLE IS THE SAVBK (A CPEBK SYNONYM)
              USED ON A DYNAMIC CALL.
              IF A ROUTINE CALLS ANOTHER ROUTINE TO STACK A CPEBK
              ONTO A QUEUE, THE CALLING ROUTINE SHOULD BE AWARE
              THAT THE CPEXFPNT AND CPEXBPNT FIELDS MAY HAVE BEEN
              CHANGED AS A RESULT OF THE CALL.  THE CALLING
              ROUTINES SHOULD REFRAIN FROM USING THESE FIELDS.
 NOTES      : THE CPEXFPNT, CPEXBPNT AND CPEXSFQP ARE ASSUMED
              TO BE THE FIRST THREE WORDS IN THIS CONTROL
              BLOCK BY PROCESSING IN HCPFTH.  THUS, IF YOU
              CHANGE THE LOCATION OF THESE FIELDS THEN YOU MUST
              ALSO UPDATE HCPFTH

 

CPEBK Control Block Content


CPEBK DSECT

Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure CPEBK CP TASK EXECUTION BLOCK NOTES : THIS CONTROL BLOCK IS IDENTICAL TO SAVBK. CPEBK IS DEFINED AS A SAVBK WITH DIFFERENT NAMES TO ALLOW ADDRESSABILITY TO BOTH SAVBK AND CPEBK WITHIN ONE MODULE. 0000 0 Signed 4 CPEXFPNT GENERAL FORWARD POINTER 0004 4 Signed 4 CPEXBPNT GENERAL BACKWARD POINTER (BACKWARD POINTER NOT USED FOR SINGLE-THREAD LISTS) 0008 8 Address 4 CPEXSFQP SAVBK FRAME QUEUE POINTER 000C 12 Address 4 CPEXCPRQ CROSS PROCESSOR RETURN QUEUE ADDR 0010 16 Dbl-Word 8 CPEXSCHD (0) SAVBK STACKING CONTROL FIELDS 0010 16 Bitstring 1 CPEXSCHC HCPSAVBK DISPATCHING CONTROLS 1... .... SAVENOFR X'80' DO NOT FRET SAVBK ON DISPATCH .1.. .... SAVESKCR X'40' THIS IS A STACKED RETURN ..1. .... SAVESKCL X'20' THIS IS A STACKED CALL ...1 .... SAVERTNF X'10' "RETURN" WITH NO FRET .... 1... SAVEUCFM X'08' STACK AS CONSOLE FUNCTION CPEBK .... .1.. SAVEURGT X'04' STACK AS AN URGENT CPEBK .... ...1 SAVEDMCO X'01' DISPATCH ON THE MASTER CPU ONLY 0011 17 Bitstring 1 CPEXCALC SAVEBK USAGE STATUS 1... .... SAVEOPEN X'80' SAVBK IN USE FOR A CALL .1.. .... SAVEGET X'40' SAVBK OBTAINED VIA 'GET SAVBK' ..1. .... SAVEPGLK X'20' CALLEE MODULE IS PAGEABLE, AND WAS LOCKED ...1 .... SAVEPGWT X'10' CALL WAITING ON PAGEABLE MODULE TO BE PAGED IN .... 1... SAVESPAR X'08' SAVBK IS NOT ACTIVE 0012 18 Signed 2 * RESERVED 0014 20 Address 4 CPEXRETN RETURN LINKAGE ROUTINE ADDRESS 0018 24 Bitstring 64 CPEXREGS (0) CALLERS REGISTERS - R0 TO R15 0018 24 Signed 4 CPEXR0 REGISTER 0 001C 28 Signed 4 CPEXR1 REGISTER 1 0020 32 Signed 4 CPEXR2 (0) REGISTER 2 THE FOLLOWING BYTE DEFINITIONS FOR CPEXR2 ARE FOR TESTING OF PARAMETERS PASSED BETWEEN MODULES. 0020 32 Bitstring 1 CPEXR2B0 REGISTER 2 BYTE 0 0021 33 Bitstring 1 CPEXR2B1 REGISTER 2 BYTE 1 0022 34 Bitstring 1 CPEXR2B2 REGISTER 2 BYTE 2 0023 35 Bitstring 1 CPEXR2B3 REGISTER 2 BYTE 3 0024 36 Signed 4 CPEXR3 REGISTER 3 0028 40 Signed 4 CPEXR4 REGISTER 4 002C 44 Signed 4 CPEXR5 REGISTER 5 0030 48 Signed 4 CPEXR6 REGISTER 6 0034 52 Signed 4 CPEXR7 REGISTER 7 0038 56 Signed 4 CPEXR8 REGISTER 8 003C 60 Signed 4 CPEXR9 REGISTER 9 0040 64 Signed 4 CPEXR10 REGISTER 10 0044 68 Signed 4 CPEXR11 REGISTER 11; ALSO VMDBK ADDRESS OF USER ON WHICH CPEBK IS SCHEDULED 0048 72 Signed 4 CPEXR12 REGISTER 12 004C 76 Signed 4 CPEXR13 REGISTER 13; ALSO PREVIOUS SAVE AREA ADDRESS ON CALL 0050 80 Signed 4 CPEXR14 REGISTER 14; ALSO RETURN ADDRESS ON CALL OR STACKED SAVBK RETURN 0054 84 Signed 4 CPEXR15 GOTO ADDRESS ON SCHEDULED CPEBK EXECUTION 0058 88 Bitstring 40 CPEXWRK (0) WORK AREA 0058 88 Signed 4 CPEXWRK0 WORK AREA 005C 92 Signed 4 CPEXWRK1 WORK AREA 0060 96 Signed 4 CPEXWRK2 WORK AREA 0064 100 Signed 4 CPEXWRK3 WORK AREA 0068 104 Signed 4 CPEXWRK4 WORK AREA 006C 108 Signed 4 CPEXWRK5 WORK AREA 0070 112 Signed 4 CPEXWRK6 WORK AREA 0074 116 Signed 4 CPEXWRK7 WORK AREA 0078 120 Signed 4 CPEXWRK8 WORK AREA 007C 124 Signed 4 CPEXWRK9 WORK AREA 00000010 CPEXSIZE (*-CPEBK+7)/8 SIZE IN DOUBLE WORDS

 

CPEBK Storage Layout

*** CPEBK - CP TASK EXECUTION BLOCK
*
*     +---------------------------+---------------------------+
*   0 |         CPEXFPNT          |         CPEXBPNT          |
*     +---------------------------+---------------------------+
*   8 |         CPEXSFQP          |         CPEXCPRQ          |
*     +------+------+-------------+---------------------------+
*  10 |:XSCHC|:XCALC|/////////////|         CPEXRETN          |
*     +------+------+-------------+---------------------------+
*  18 |          CPEXR0           |          CPEXR1           |
*     +------+------+------+------+---------------------------+
*  20 |:XR2B0|:XR2B1|:XR2B2|:XR2B3|          CPEXR3           |
*     +------+------+------+------+---------------------------+
*  28 |          CPEXR4           |          CPEXR5           |
*     +---------------------------+---------------------------+
*  30 |          CPEXR6           |          CPEXR7           |
*     +---------------------------+---------------------------+
*  38 |          CPEXR8           |          CPEXR9           |
*     +---------------------------+---------------------------+
*  40 |         CPEXR10           |         CPEXR11           |
*     +---------------------------+---------------------------+
*  48 |         CPEXR12           |         CPEXR13           |
*     +---------------------------+---------------------------+
*  50 |         CPEXR14           |         CPEXR15           |
*     +---------------------------+---------------------------+
*  58 |         CPEXWRK0          |         CPEXWRK1          |
*     +---------------------------+---------------------------+
*  60 |         CPEXWRK2          |         CPEXWRK3          |
*     +---------------------------+---------------------------+
*  68 |         CPEXWRK4          |         CPEXWRK5          |
*     +---------------------------+---------------------------+
*  70 |         CPEXWRK6          |         CPEXWRK7          |
*     +---------------------------+---------------------------+
*  78 |         CPEXWRK8          |         CPEXWRK9          |
*     +---------------------------+---------------------------+
*  80
*
*** CPEBK - CP TASK EXECUTION BLOCK

 

CPEBK Cross Reference

(contains links to field and bit definitions)
Symbol         Dspl Value
-------------- ---- -----

CPEXBPNT 0004

CPEXCALC 0011

CPEXCPRQ 000C

CPEXFPNT 0000

CPEXREGS 0018

CPEXRETN 0014

CPEXR0 0018

CPEXR1 001C

CPEXR10 0040

CPEXR11 0044

CPEXR12 0048

CPEXR13 004C

CPEXR14 0050

CPEXR15 0054

CPEXR2 0020

CPEXR2B0 0020

CPEXR2B1 0021

CPEXR2B2 0022

CPEXR2B3 0023

CPEXR3 0024

CPEXR4 0028

CPEXR5 002C

CPEXR6 0030

CPEXR7 0034

CPEXR8 0038

CPEXR9 003C

CPEXSCHC 0010

CPEXSCHD 0010

CPEXSFQP 0008

CPEXSIZE 007C 00000010

CPEXWRK 0058

CPEXWRK0 0058

CPEXWRK1 005C

CPEXWRK2 0060

CPEXWRK3 0064

CPEXWRK4 0068

CPEXWRK5 006C

CPEXWRK6 0070

CPEXWRK7 0074

CPEXWRK8 0078

CPEXWRK9 007C

SAVEDMCO 0010 01

SAVEGET 0011 40

SAVENOFR 0010 80

SAVEOPEN 0011 80

SAVEPGLK 0011 20

SAVEPGWT 0011 10

SAVERTNF 0010 10

SAVESKCL 0010 20

SAVESKCR 0010 40

SAVESPAR 0011 08

SAVEUCFM 0010 08

SAVEURGT 0010 04


This information is based on VM/ESA 2.4.0.
Last updated on 3 Aug 1999 at 11:47:58 EDT.
Copyright IBM Corporation, 1990, 1999