ISGLID — Identify a latch set

Description

The ISGLID callable service provides a latch set creator the ability to attach a latch identity array (in ISGLMASM or ISGLMC) to the latch set for the purposes of identifying the individual latches in the latch set. The LIDArray must be in the primary space. The following callable services are related to the ISGLID service:
  • ISGLCRT
  • ISGLCRT64
  • ISGLID
  • ISGLID64

Environment

The requirements for the caller are:

Environmental factor Requirement
Minimum authorization: Supervisor state or PKM allowing key 0-7
Dispatchable unit mode: Task or SRB
Cross memory mode: Primary= the space of the latch set creator
AMODE: 31-bit
ASC mode: Primary
Interrupt status: Enabled for I/O and external interrupts
Locks: No locks held
Control parameters: Control parameters must be accessible from the primary address space.

Programming requirements

After the latch identity pointer array has been attached to the latch set, the attached LIDArray cannot be deleted. However, the LIDArray can be replaced by calling the service again and specifying a new array. To change the latch identity for a particular latch, allocate a new latch identity block, fill it out, and update the corresponding array entry. Then, you can delete the previous latch identity block.

Restrictions

None.

Input register information

Before calling the ISGLID service, the caller must ensure that the following general purpose registers (GPRs) contain the specified information:

Register
Contents
13
Address of a standard 72-byte save area located in the primary address space.

Output register information

When control returns to the caller, the GPRs contain:
Register
Contents
0-1
Used as work registers by the system.
2-13
Unchanged.
14-15
Used as work registers by the system.
When control returns to the caller, the ARs contain:
Register
Contents
0-1
Used as work registers by the system.
2-13
Unchanged.
14-15
Used as work registers by the system.

Performance implications

None

Syntax

Write the call as shown on the syntax diagram. You must code all parameters on the CALL statement in the order shown.

Assign values to the following parameters:
  • lsetToken
  • LIDArray
  • LIDEntryVersion
ISGLID returns values in the following parameter:
  • retcode
Syntax Description

CALL ISGLID

 
,(lsetToken
,LIDPtrArray
,LIDEntryVersion
,retcode)
 

Parameters

All input to callable services is in the form of RX-type addresses.

The parameters are explained as follows:

lsetToken
Specifies an 8-character field that contains the latch set token returned from ISGLCRT.
LIDPtrArray
Specifies the latch identity pointer array.
LIDEntryVersion
Specifies a 1-byte area that contains the version of the LID entries.
RetCode
Specifies a 4-byte or 32-bit area that contains return code from the ISGLID service.

ABEND codes

The caller might encounter abend code X'9C6' for certain errors. See z/OS MVS System Codes for explanations and responses for these codes.

Return codes

When the ISGLID service returns control to your program, the RetCode parameter contains a hexadecimal return code. The following table identifies the hexadecimal reason codes and meaning associated with each reason code:

Table 1. ISGLID Return Codes
Return code and Equate symbol Meaning and action

00000000
ISGLID_SUCCESS

Meaning: The ISGLID service completed successfully.

Action: None.

xxxx0401
ISGLID_REPLACED

Meaning: Latch identity pointer array is replaced. A previous latch identity pointer array existed for this latch set. It has been replaced.

Action: None.

Example