TDBK | Back to Index page

| Prolog Control Block Contents TDBK DSECT Storage Layout Cross Reference (Contains links to field and bit definitions) |
Programming Interface Information: This information is NOT intended to be used as Programming Interfaces of z/VM.

TDBK Prolog | Top of page

     NAME       : HCPTDBK
     DESCRIPTION: Transaction Diagnostic Block
     DSECT      : TDBK
     FUNCTION   : Transaction Diagnostic Block as defined by
                  the Transactional Execution facility of z
                  architecture.
     LOCATED BY : SIEITDBA, VMDITDBA also embedded in the
                  guest prefix area at UOPPITDB, and optionally
                  presented as a operand of the TBEGIN
                  instruction.
     CREATED BY : HCPVTX and HCPWVS
     DELETED BY : HCPRST
     SERIALIZED : i-stream when referencing the ITDB or
                  guest PITDB
     COMPATIBILITY AND MIGRATION CONCERNS : N/A
      OTES  - None.
     RELOCATION CONSIDERATIONS :
                  HCPTDBK maps the TBEGIN TDB, the Interception
                  TDB and the Program Interruption TDB. Guest
                  TBEGINB TDBs are not referenced by CP and have no
                  relocation considerations. (This would also apply
                  to a second level CP should it choose to exploit
                  transactional execution). The host references the
                  ITDB pointed to by VMDITDBA and SIEITDBA and the
                  PITDB embedded in the guest's prefix area. Both
                  of these have relocation considerations arising
                  from the fact that translated addressed are
                  obtained for both types. On relocation, locked
                  translations of the PITDB must be released. The
                  ITDB is not relocated but instead is eventually
                  released when the source VMDBK is released.
                  However TX is deactivated by setting ECB.3=0
                  under the source VMDBK.
                  The target system must retranslate and lock the
                  PITDB and allocate a new ITDB on successful
                  relocation. This is achieved by forcing
                  the guest through TX initialization by leaving
                  ECB.3=0 (the default) value for each VMDBK
                  at the target system.
                  When the guest next issues a TX instruction, that
                  instruction will be intercepted and TX will be
                  re-initialized at the target system, which
                  includes locking the guest's prefix area,
                  saving the host logical translated address for
                  page 1, allocating an ITDB and saving the logical
                  and real addresses of the ITDB in the VMDITDBA
                  and SIEITDBA respectively. Then, finally, seting
                  ECB.3=1
                  If relocation fails, the guest resumes execution
                  under the source VMDBKs. TX will have been
                  deactivated prior to relocation (ECB.3 set to 0).
                  Subsequent use of a TX instructions will force the
                  source system through TX initialization where it
                  is recognised in HCPVTX that an ITDB is already
                  allocated and a short cut to re-initialization
                  employed.

TDBK Control Block Content | Top of page

     TDBK DSECT
    Top of page

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      TDBK           Transaction Diagnostic Block
    0000    0 Bitstring    1 TDBFMT         Validity and format indication
              00000000       TDBFMT0        X'00' TDBFMT0 Remaining fields of
                                            TDB are unpredictable
              00000001       TDBFMT1        X'01' TDBFMT1 A format-1 TDB
    0001    1 Bitstring    1 TDBFLAGS       Flag byte
              00000080       TDBCTV         X'80' TDBCTV Conflict Token
                                            Validity
              00000040       TDBCTI         X'40' TDBCTI
                                            Constrained-Transaction
                                            Indication on - CPU in
                                            constrained x
                                            transactional-execution mode x
                                            off - CPU in nonconstrained x
                                            transactional-execution mode
    0002    2 Bitstring    4 *              Reserved
    0006    6 Bitstring    2 TDBTND         Transaction Nesting Depth
    0008    8 Bitstring    8 TDBTAC (0)     Transaction Abort Code
    0008    8 Bitstring    7 *              TABORT second-operand address
    000F   15 Bitstring    1 TDBACODE       Abort codes 0-255 are reserved
                                            for x transactions that are
                                            implicitly x aborted by the CPU
              00000002       TDBEXTIN       2 External interruption
              00000004       TDBPGMIN       4 Program interruption
                                            (unfiltered)
              00000005       TDBMCHCK       5 Machine-check interruption
              00000006       TDBIOINT       6 I/O interruption
              00000007       TDBFTCHO       7 Fetch overflow
              00000008       TDBSTORO       8 Store overflow
              00000009       TDBFTCHC       9 Fetch conflict
              0000000A       TDBSTORC       10 Store conflict
              0000000B       TDBRSTDI       11 Restricted instruction
              0000000C       TDBPRGEX       12 Program exception (filtered)
              0000000D       TDBNDPTH       13 Nesting depth exceeded
              0000000E       TDBCFTCH       14 Cache fetch-related
              0000000F       TDBCSTOR       15 Cache store-related
              00000010       TDBCOTHR       16 Cache other
              00000011       TDBTAC17       17 Reserved for IBM use
              00000012       TDBTAC18       18 Reserved for IBM use
              000000FF       TDBMISC        255 Miscellaneous condition
    0010   16 Bitstring    8 TDBCT          Conflict Token
    0018   24 Bitstring    8 TDBATIA        Aborted-Transaction Instr Addr
    0020   32 Bitstring    1 TDBEAID        Exception Access Identification
    0021   33 Bitstring    1 TDBDXC         Data-Exception/Vector-data Code
    0022   34 Bitstring    1 * (2)          Reserved
    0024   36 Bitstring    4 TDBPII         Program Interruption
                                            Identification
    0028   40 Bitstring    8 TDBTEI         Translation Exception
                                            Identification
    0030   48 Bitstring    8 TDBBEA         Breaking-Event Address
    0038   56 Bitstring   72 *              Reserved for IBM use
    0080  128 Dbl-Word     8 TDBGPRS (16)   General Purpose Register save
                                            area
    0080  128 Dbl-Word     8 TDBGPR0        General Purpose Register 0
    0088  136 Dbl-Word     8 TDBGPR1        General Purpose Register 1
    0090  144 Dbl-Word     8 TDBGPR2        General Purpose Register 2
    0098  152 Dbl-Word     8 TDBGPR3        General Purpose Register 3
    00A0  160 Dbl-Word     8 TDBGPR4        General Purpose Register 4
    00A8  168 Dbl-Word     8 TDBGPR5        General Purpose Register 5
    00B0  176 Dbl-Word     8 TDBGPR6        General Purpose Register 6
    00B8  184 Dbl-Word     8 TDBGPR7        General Purpose Register 7
    00C0  192 Dbl-Word     8 TDBGPR8        General Purpose Register 8
    00C8  200 Dbl-Word     8 TDBGPR9        General Purpose Register 9
    00D0  208 Dbl-Word     8 TDBGPR10       General Purpose Register 10
    00D8  216 Dbl-Word     8 TDBGPR11       General Purpose Register 11
    00E0  224 Dbl-Word     8 TDBGPR12       General Purpose Register 12
    00E8  232 Dbl-Word     8 TDBGPR13       General Purpose Register 13
    00F0  240 Dbl-Word     8 TDBGPR14       General Purpose Register 14
    00F8  248 Dbl-Word     8 TDBGPR15       General Purpose Register 15
              00000100       TDBKLEN        *-TDBK Size of architected data
                                            in bytes
              00000020       TDBKSIZE       (*-TDBK+7)/8 Size of TDB in
                                            double-words rounded up
              00000100       TDBBSIZE       TDBKSIZE*8 Size in bytes

TDBK Storage Layout | Top of page

    *** TDBK - Transaction Diagnostic Block
    *
    *     +------+------+---------------------------+-------------+
    *   0 |TDBFMT|:FLAGS|///////////////////////////|   TDBTND    |
    *     +------+------+---------------------------+------+------+
    *   8 |////////////////////////////////////////////////|:ACODE|
    *     +------------------------------------------------+------+
    *  10 |                        TDBCT                          |
    *     +-------------------------------------------------------+
    *  18 |                       TDBATIA                         |
    *     +------+------+-------------+---------------------------+
    *  20 |:EAID |TDBDXC|/////////////|          TDBPII           |
    *     +------+------+-------------+---------------------------+
    *  28 |                        TDBTEI                         |
    *     +-------------------------------------------------------+
    *  30 |                        TDBBEA                         |
    *     +-------------------------------------------------------+
    *  38 |///////////////////////////////////////////////////////|
    *     =///////////////////////////////////////////////////////=
    *     |///////////////////////////////////////////////////////|
    *     +-------------------------------------------------------+
    *  80 |                                                       |
    *     =                       TDBGPRS                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 100
    *
    *** TDBK - Transaction Diagnostic Block

    *** Overlay for TDBGPRS in TDBK
    *
    *     +-------------------------------------------------------+
    *  80 |                       TDBGPR0                         |
    *     +-------------------------------------------------------+
    *  88 |                       TDBGPR1                         |
    *     +-------------------------------------------------------+
    *  90 |                       TDBGPR2                         |
    *     +-------------------------------------------------------+
    *  98 |                       TDBGPR3                         |
    *     +-------------------------------------------------------+
    *  A0 |                       TDBGPR4                         |
    *     +-------------------------------------------------------+
    *  A8 |                       TDBGPR5                         |
    *     +-------------------------------------------------------+
    *  B0 |                       TDBGPR6                         |
    *     +-------------------------------------------------------+
    *  B8 |                       TDBGPR7                         |
    *     +-------------------------------------------------------+
    *  C0 |                       TDBGPR8                         |
    *     +-------------------------------------------------------+
    *  C8 |                       TDBGPR9                         |
    *     +-------------------------------------------------------+
    *  D0 |                       TDBGPR10                        |
    *     +-------------------------------------------------------+
    *  D8 |                       TDBGPR11                        |
    *     +-------------------------------------------------------+
    *  E0 |                       TDBGPR12                        |
    *     +-------------------------------------------------------+
    *  E8 |                       TDBGPR13                        |
    *     +-------------------------------------------------------+
    *  F0 |                       TDBGPR14                        |
    *     +-------------------------------------------------------+
    *  F8 |                       TDBGPR15                        |
    *     +-------------------------------------------------------+
    * 100
    *
    *** Overlay for TDBGPRS in TDBK

TDBK Cross Reference | Top of page

    Symbol         Dspl Value
    -------------- ---- -----
    TDBACODE       000F
    TDBATIA        0018
    TDBBEA         0030
    TDBBSIZE       00F8 00000100
    TDBCFTCH       000F 0000000E
    TDBCOTHR       000F 00000010
    TDBCSTOR       000F 0000000F
    TDBCT          0010
    TDBCTI         0001 00000040
    TDBCTV         0001 00000080
    TDBDXC         0021
    TDBEAID        0020
    TDBEXTIN       000F 00000002
    TDBFLAGS       0001
    TDBFMT         0000
    TDBFMT0        0000 00000000
    TDBFMT1        0000 00000001
    TDBFTCHC       000F 00000009
    TDBFTCHO       000F 00000007
    TDBGPRS        0080
    TDBGPR0        0080
    TDBGPR1        0088
    TDBGPR10       00D0
    TDBGPR11       00D8
    TDBGPR12       00E0
    TDBGPR13       00E8
    TDBGPR14       00F0
    TDBGPR15       00F8
    TDBGPR2        0090
    TDBGPR3        0098
    TDBGPR4        00A0
    TDBGPR5        00A8
    TDBGPR6        00B0
    TDBGPR7        00B8
    TDBGPR8        00C0
    TDBGPR9        00C8
    TDBIOINT       000F 00000006
    TDBKLEN        00F8 00000100
    TDBKSIZE       00F8 00000020
    TDBMCHCK       000F 00000005
    TDBMISC        000F 000000FF
    TDBNDPTH       000F 0000000D
    TDBPGMIN       000F 00000004
    TDBPII         0024
    TDBPRGEX       000F 0000000C
    TDBRSTDI       000F 0000000B
    TDBSTORC       000F 0000000A
    TDBSTORO       000F 00000008
    TDBTAC         0008
    TDBTAC17       000F 00000011
    TDBTAC18       000F 00000012
    TDBTEI         0028
    TDBTND         0006

This information is based on z/VM 7.2.0 Last updated on 24 Jun 2020 at 09:31:15 EDT.
Copyright IBM Corporation, 1990, 2020