z/OS MVS Installation Exits
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


IEFUJP — Job Purge Exit

z/OS MVS Installation Exits
SA23-1381-00

IEFUJP receives control from the job entry subsystem (JES2 or JES3) when a job is ready to be purged from the system, meaning that the job terminated and the system has written all SYSOUT output pertaining to the job. A return code from IEFUJP indicates whether the SMF job purge record (type 26) is to be written to the SMF data set.

Defining the Exit in SMFPRMxx

To allow the system to invoke IEFUJP, define the exit in the SMF parmlib member (SMFPRMxx). Specify IEFUJP on the EXITS option of the SUBSYS parameter for the STC subsystem. If your installation chooses not to define a SUBSYS parameter for STC, you can specify IEFUJP on the EXITS option of the SYS parameter.

For more information about coding the EXITS option, see the description of SMFPRMxx in z/OS MVS Initialization and Tuning Reference.

Controlling the Exit Routine Through the Dynamic Exits Facility

IBM® has defined the IEFUJP installation exit to the dynamic exits facility. You can refer to the exit by the name SYS.IEFUJP or SYSyyy.IEFUJP. See the description of the SMFPRMxx parmlib member in z/OS MVS Initialization and Tuning Reference for an explanation of the naming conventions for SMF exit routines. You can use the EXIT statement of the PROGxx parmlib member, the SETPROG EXIT operator command, or the CSVDYNEX macro to control this exit and its exit routines.

To define IEFUJP to the dynamic exits facility, you must specify the exit in both PROGxx and SMFPRMxx. The system does not call the exit if it is defined in PROGxx only. If you do not plan to use the dynamic exits facility for this exit, you need only define IEFUJP in SMFPRMxx.

If you do not associate any exit routines with exit IEFUJP in PROGxx, the system defaults to using the exit routine name that matches the exit name (IEFUJP).

If you associate exit routines with this exit in PROGxx, the system does not use the default exit routine. If you need the default exit routine, you should explicitly add it to PROGxx.

You can use the ADDABENDNUM and ABENDCONSEC parameters on the CSVDYNEX REQUEST=ADD macro or the ABENDNUM parameter of the SETPROG EXIT operator command to limit the number of times the exit routine abnormally ends before it becomes inactive. An abend is counted when both of the following conditions exist:
  • The exit routine does not provide recovery, or the exit routine does provide recovery but percolates the error
  • The system allows a retry; that is, the recovery routine is entered with bit SDWACLUP off.
By default, the system does not disable the exit routine.

Exit Routine Environment

IEFUJP receives control in the following environment:

  • Enabled for interrupts.
  • In supervisor state with PSW key 1.
  • In AMODE 31.

Exit Recovery

IBM strongly recommends that you set up an ESTAEX recovery routine to handle errors that might occur during the execution of IEFUJP.

An ESTAE-type recovery routine is set up by the module that calls IEFUJP; the recovery routine, if it gets control, will allow the job to continue processing if the exit routine abnormally ends.

Whether or not the exit routine continues to be invoked depends on the abend processing of the dynamic exits facility.

Exit Routine Processing

IEFUJP receives control from the job entry subsystem SMF writer. The addresses of the SMF common exit parameter list and the type 26 SMF record (SMF job purge record) are parameters that the exit routine can use to determine whether or not to write the SMF record.

At the end of its processing, IEFUJP sets a return code to indicate to the JES SMF writer whether to write the SMF record.

Programming Considerations

SMF automatically provides a replaceable module for an unused exit. If an installation includes IEFUJP, certain programming conventions must be followed:
  • The exit routine must follow standard linkage conventions.
  • Code the exit routine to be reentrant and refreshable.
  • If you use installation-defined data sets with IEFUJP, you must define them with a DD statement in the job entry subsystem cataloged procedure.

Macro Instructions and Restrictions: When issuing a WTOR macro, specify LONG=YES on the WAIT macro. Do not use a WTO with a routing code of 11 to send a message to the JESYSMSG data set for started tasks or TSO users.

Entry Specifications

The job entry subsystem provides the addresses of the SMF record and the common exit parameter area for the exit routine to use.

Registers at Entry: The contents of the registers on entry to the exit are as follows.

Register
Contents
0
Not applicable
1
Contains address of parameter list
2-12
Not applicable
13
Register save area
14
Return address
15
Entry point address of IEFUJP
Parameter Descriptions: Register 1 points to the following list of addresses:
Word 1
The address of the common exit parameter area. (See Table 1.)
Word 2
The address of an area containing the SMF job purge record (type 26) to be written to the SMF data set.
Figure 1. IEFUJP Input Parameter Structure
ieae4ujp

Return Specifications

A return code from IEFUJP indicates whether the SMF type 26 record is to be written.

If you associate multiple exit routines with IEFUJP, you can specify how the return information is to be handled using the ATTRIB KEEPRC function of the SETPROG EXIT command, the EXIT statement of PROGxx, or CSVDYNEX services. If multiple exit routines match the ATTRIB KEEPRC criteria, the system returns information from the exit routine that finished first.

If you do not specify the ATTRIB KEEPRC function, the system returns the information from the exit routine whose return value was the greatest. If multiple exit routines return with the same highest value, the return information from the exit routine that finished first will be returned.

If you associate multiple exit routines with exit IEFUJP, and any of those exit routines return with a value of 4, the system will not write the SMF type 60 record.

Registers at Exit: Upon return from the exit processing, the register contents must be as follows.

Register
Contents
0-14
Restored to contents at entry
15
One of the following return codes:
Return Code
Explanation
Value of 4
Job purge record is not to be written to the SMF data set.
Value other than 4
Job purge record is to be written to the SMF data set.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014