Running the DFHCSVCJ job

The DFHCSVCJ job runs the DFHCSVCU utility program to dynamically update the MVS SVC number that is specified in the PARM statement to invoke the required module, and so removes the need to restart the z/OS LPAR in order to use a new or updated SVC. You can use the DFHCSVCU utility program only if you have the required authorization.

The DFHCSVCU utility updates or adds a single SVC entry in the SVC table with a pointer containing the entry point of the supplied module. For an existing SVC number, before the SVC is updated, all CICS regions using that SVC number must be shut down, otherwise results can be unpredictable.

Before the DFHCSVCU utility program is run, the target program must be loaded into the MVS link pack area (LPA) using the following MVS console command:

SETPROG LPA,ADD,MODNAME=module, DSNAME=data set

Where:
  • module is the module to be invoked by the SVC and
  • data set is the load library where the module resides.
Because this utility issues SVCs (supervisor calls) it must be invoked from an authorized library by an operator who has sufficient authority to run the program.
The SVCnnn=module parameter identifies the number of the SVC to be modified and the program to be invoked by the SVC. The following checks are made by the utility program before any update is attempted:
  1. A PARM statement is specified on the EXEC JCL card.
  2. The PARM statement contains an SVCnnn= keyword statement.
  3. The number specified is greater than 199 and less than 256.
  4. The SVC type for the specified SVC number is 3 or 4.
  5. The module name is less than or equal to 8 characters in length.
If any of these checks fail, the utility ends with the return code set to 12. If you do not load the target program into the MVS LPA, the utility ends with the return code set to 28.

When an existing SVC is to be updated the utility asks the operator to confirm that the SVC update is to proceed. Any response other than Yes results in the utility ending with the return code set to 12.

Note: Updates that are made by the DFHCSVCU utility are temporary, and are only valid until the system is restarted or another instance of the utility program is executed. For the updates to be permanent, member IEASVCxx in SYS1.PARMLIB must be updated with the changes.