z/OS MVS Programming: Callable Services for High-Level Languages
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Return codes

z/OS MVS Programming: Callable Services for High-Level Languages
SA23-1377-02

When the Latch_Release service returns control to your program, return_code contains a hexadecimal return code. The following table identifies return codes in hexadecimal and decimal (in parentheses), the equate symbol associated with each return code, the meaning of each return code, and a recommended action:

Table 1. ISGLREL Return Codes
Return code and Equate Symbol Meaning and Action

00
(0)
ISGLREL_SUCCESS

Meaning: The Latch_Release service completed successfully. The caller released ownership of the specified latch request.

Action: None.

04
(4)
ISGLREL_NOT_OWNED_ECB_REQUEST

Meaning: The requestor that originally called the Latch_Obtain service is still expecting the system to post an ECB (to indicate that the requestor has obtained the latch). The call to the Latch_Release service specified a release_option of ISGLREL_COND (value of 1). The latch manager does not post the ECB at the address specified on the original call to Latch_Obtain. The latch manager releases the latch.

Action: Validate the integrity of the resource associated with the latch (the requestor might have used the resource without waiting on the ECB). If the resource is undamaged, no action is necessary (a requestor routine may have been in the process of cancelling the request to obtain the latch).

08
(8)
ISGLREL_STILL_SUSPENDED

Meaning: Program error. The request specified a correct latch token, but the program that originally requested the latch is still suspended and waiting to obtain the latch.

The latch requestor originally specified an obtain_option of ISGLOBT_SYNC on the call to the Latch_Obtain service. The call to the Latch_Release service specified a release_option of ISGLREL_COND (value of 1). The latch manager does not release the latch. The latch requestor remains suspended.

Action:
  • Wait for the latch requestor to obtain the latch and receive control back from the system; then call the Latch_Release service again, or
  • End the program that originally requested the latch.

0C
(12)
ISGLREL_INCORRECT_LATCH_TOKEN

Meaning: The latch manager could not find a granted or pending request associated with the value on the latch token parameter. The latch manager does not release a latch.

This return code does not indicate an error if a routine calls Latch_Release to ensure that a latch is released. For example, if an error occurs when a requestor calls the Latch_Obtain service, the requestor's recovery routine might call Latch_Release to ensure that the requested latch is released. If the error prevented the requestor from obtaining the latch, the recovery routine receives this return code.

Action: If the return code is not expected, validate that the latch token is the same latch token returned to the caller of Latch_Obtain.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014