Prior to invoking this service, your exit routine must place information
into BLSAPCQE. There are two methods that you can use:
- If you are writing non-reentrant code, you can issue the BLSAPCQE
mapping macro using the DSECT=NO parameter. This method is used in Figure 1, where PCQESYNM
and PCQEJOBN are not explicitly provided, but are filled in because
DSECT=NO is specified on BLSAPCQE at label PCQE.
- If you are writing reentrant code, you can issue BLSAPCQE two
times, once specifying DSECT=YES to describe a dynamic parameter list,
and once specifying DSECT=NO to create an initialized image. Before
invoking the service, copy required information from the initialized
image to the dynamic parameter list.
- Field
- Description
- RSA
- A
pointer to a buffer containing the resource name.
- ADA
- A
pointer to additional data for owners of a resource. The additional
data is optional. If additional data is provided, it should contain
data relevant to debugging.
- RSL
- The
length of the resource name.
- ADL
- The
length of any additional data.
- SYNM
- The
system name (SYSNAME) where the unit of work is running. This must
be provided when the resource has cross system contention. The name
of the dumped system is in CVTSNAME. If a SYSNAME is different from
CVTSNAME, no attempt is made to access the current dump on behalf
of this request; for example, the ASCB and TCB are not accessed to
produce further status. The SYSNAME should be left justified and
padded with blanks.
- EAS
- An instance of the BLSRDATS macro within BLSAPCQE. Specify in
BLSRDATS the following:
- Field AS1: The central processor address, which is used
to uniquely identify active system request blocks (SRBs).
For CPU(n), specify X'00000000' for processor 0, X'00000001',
for processor 1, and so forth.
If the unit of work is not associated
with a particular processor, specify the value ZZZAS1NO to indicate
NOCPU.
- Field AS2: The address space identifier (ASID) of the
unit of work: ASID(n).
- DTD
- DTD
in PCQED indicates the type of work being performed (such as TCB,
SRB, or any name up to 31 characters). This control block name is
used in the analysis process to call the CBSTAT service to extract
more information about a unit of
work. In order to conform to the IPCS standard for structure names,
the name should start with an alphabetic character and contain only
alphanumeric characters.
- LAD
- The
address of the control block.
- OW
- Indicates
whether the unit of work owns (C‘O ’) or is waiting (C‘W ’) for this
resource.
- JOBN
- An
optional 8-character JOBNAME. This should be filled in by exit routines
that are producing contention entries that describe contention caused
by another system. This must be done because the ASCB for another
system is not available in the dump. The job name should also be
provided when the work being performed has a special relationship
to the address space, as in the case of SRBs that are performing a
service and always run in an address space such as MASTER.
If the
job name has not been saved in an easily accessible control block,
it is recommended that you let the ANALYZE exit routine find it in
the ASCB. The ANALYZE exit routine can determine the job name from
the ASID.
Initially, the exit routine sets PEQEJOBN to zero.
When the exit routine fills in the field, the job name should be
left-justified and padded with blanks.
- MODN
- An
optional 8-byte field that contains the CSECT name of the module calling
the CQE create service. This field is used in error messages to identify
the caller that passed a bad parameter list.
If an incorrect PCQE is passed to the CQE create service, IPCS
issues message BLS01001I to help diagnose the problem.