Programming Interface Information: This information is NOT intended to be used as Programming Interfaces of z/VM.

#### LOCBK

Prolog

Control Block Contents
LOCBK DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### LOCBK Prolog

     Name       : HCPLOCBK
     Description: C System Services Lock block
     DSECT      : LOCBK
     Function   : C System Services Lock block used to describe the
                  spin lock used by platform specific C Services
     Located by : Passed as argument on lock, unlock, testLock
                  and eventWait services
     Created by : allocateLock service
     Deleted by : deallocateLock service
     Serialized : CP lock routines
     Notes      : This COPY file was modeled after HCPSYNBK so the
                  existing CP spin lock routines could be utilized.

#### LOCBK Control Block Content

#### LOCBK DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      LOCBK          C System Services Lock block
    0000    0 Dbl-Word     8 LOCSLOCK (3)   Spin lock
    0018   24 Dbl-Word     8 LOCTHRED       Pointer to thread which holds
                                            lock
              00000020       LOCBSIZE       *-LOCBK size in bytes
              00000004       LOCSIZE        (*-LOCBK+7)/8 size in double
                                            words
    0000    0 Signed       4 LOCLOCK        Lock word (0 = not held, else CPU
                                            id)
    0004    4 Signed       4 LOCHOLDR       Macro address last obtaining this
                                            lock
    0008    8 Dbl-Word     8 LOCTIME        Elapsed spin time on this lock
    0010   16 Signed       4 LOCCOUNT       Number of spins on this lock
    0014   20 Signed       4 *              Reserved for future IBM use

#### LOCBK Storage Layout

    *** LOCBK - C System Services Lock block
    *
    *     +-------------------------------------------------------+
    *   0 |                                                       |
    *     =                       LOCSLOCK                        =
    *     |                                                       |
    *     +-------------------------------------------------------+
    *  18 |                       LOCTHRED                        |
    *     +-------------------------------------------------------+
    *  20
    *
    *** LOCBK - C System Services Lock block

    *** Overlay for LOCSLOCK in LOCBK
    *
    *     +---------------------------+---------------------------+
    *   0 |         LOCLOCK           |         LOCHOLDR          |
    *     +---------------------------+---------------------------+
    *   8 |                       LOCTIME                         |
    *     +---------------------------+---------------------------+
    *  10 |         LOCCOUNT          |///////////////////////////|
    *     +---------------------------+---------------------------+
    *  18
    *
    *** Overlay for LOCSLOCK in LOCBK

#### LOCBK Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    LOCBSIZE       0018 00000020
    LOCCOUNT       0010
    LOCHOLDR       0004
    LOCLOCK        0000
    LOCSIZE        0018 00000004
    LOCSLOCK       0000
    LOCTHRED       0018
    LOCTIME        0008

This information is based on z/VM V5R2.0. Last updated on 12 Apr 2006 at 17:03:02 EDT.
Copyright IBM Corporation, 1990, 2005