z/OS JES2 Macros
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


$FRELOK – Free the MVS CMS lock, LOCAL, or JES2 job lock

z/OS JES2 Macros
SA32-0996-00

Use $FRELOK to free the CMS lock, LOCAL, or JES2 job lock obtained through the $GETLOK macro instruction, and specify any JES2 follow-up processing.

Format description

Read syntax diagramSkip visual syntax diagram
>>-+--------+--$FRELOK------------------------------------------>
   '-symbol-'            

>--+-------------------------------------+---------------------->
   |          .-CMS--------------------. |   
   '-TYPE--=--+-LOCAL------------------+-'   
              '-JOB--,--JQE--=--relexp-'     

>--+------------------+--+-------------------+------------------>
   |          .-NO--. |  |           .-YES-. |   
   '-POST--=--+-YES-+-'  '-TRACE--=--+-NO--+-'   

>--+------------------+----------------------------------------><
   |          .-NO--. |   
   '-WAIT--=--+-YES-+-'   

TYPE=
Specifies the lock to be freed as follows:
CMS (default)
The cross-memory services lock is freed. All other operands are ignored.
LOCAL (valid in the HASPFSSM environment only)
The local lock is freed. All other operands are ignored.
JOB (valid in the JES2 main task only)
The JES2 job lock is freed; you must specify a job queue element address (JQE=).
JQE=
Specifies the address of a fullword containing the address of the JQE.
POST=
Specifies whether (YES) or not (NO), JES2 should issue a $#POST when the indicated lock is freed.
Note:
  1. POST= is only valid if you code TYPE=JOB.
  2. If you specify POST=NO, JES2 does not issue a $#POST, possibly causing SYSOUT to not be selected by ready devices. Therefore, if you do specify POST=NO, do so only if:
    • No JOEs or null data sets were created for the job or
    • Only spin data sets exist for the job.
TRACE=
Specifies whether (YES) or not (NO) a rolling trace entry should be created when the indicated lock is freed.
WAIT=
WAIT=NO (NO is the default) results in the unlocking of the JQE being automatically deferred if:
  • A real JQE or a READ mode JQA is provided through the JQE= parameter and the BERT lock is not available.
  • An UPDATE mode JQA is provided and it takes more BERTs to hold the data for the job than it would when the UPDATE mode JQA is obtained and there aren't enough BERTs to satisfy the request.

The deferred request is handled through $DILBERT. The caller is not notified that the unlocking has been deferred.

Environment

  • Main task and functional subsystem (HASPFSSM).
  • $WAIT can occur.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014