This topic describes what you must do to enable CICS® to use modules from the MVS link pack area, and what you can do to specify that CICS is not to use eligible modules from the MVS link pack area.
The methods for controlling the use of modules from the MVS link pack area do not apply to the modules DFHCSVC, DFHDSPEX, and DFHIRP. These modules can be used only from the MVS link pack area.
CICS uses standard MVS™ load facilities for modules installed in the MVS link pack area from the CICS APF-authorized library, hlq.SDFHAUTH. That is, such a module is used from the first of the following locations that it is found in:
To use any of the CICS modules installed in the MVS link pack area from the hlq.SDFHAUTH library you must remove any version of the module from the hlq.SDFHAUTH library (or any other library in the STEPLIB concatenation).
You can prevent CICS using modules installed in the MVS link pack area from the hlq.SDFHAUTH library by installing versions of those modules in a library in the STEPLIB concatenation. CICS then uses the versions of the modules from the STEPLIB concatenation into the CICS address space, rather than any versions that may be in the MVS link pack area.
The use of CICS modules installed in the MVS link pack area from the hlq.SDFHLOAD library is controlled by CICS system initialization parameters and resource definitions.
The hlq.SDFHLOAD library is used for non-nucleus CICS modules, and some CICS nucleus modules. You can also use the library for your own user application programs.
To use any of the CICS modules installed in the MVS link pack area from the hlq.SDFHLOAD library:
/* Not loaded from LPA unless USELPACOPY is set to Y in the CSD */
For each CICS-supplied LPA-eligible module that needs USELPACOPY(YES) specified in its associated PROGRAM resource definition, you must create your own resource definition with USELPACOPY(YES) specified, and use it instead of the CICS-supplied resource definition. This is because you cannot modify the CICS-supplied resource definitions. For example, you could use the DFHCSDUP utility program to:
Once the program definitions have been changed on the CSD you should:
A sample DFHCSDUP job for all CICS LPA-eligible jobs is in Figure 6.
For every non-nucleus CICS module or user application program that you have moved to the MVS link pack area (that is, have removed from the DFHRPL concatenation), ensure that you have specified USELPACOPY(YES) on the associated PROGRAM resource definition. Otherwise, CICS isnot be able to find the module, and may fail to start up successfully.
You can prevent CICS using modules installed in the MVS link pack area from the hlq.SDFHLOAD library by either:
This prevents CICS from using any modules installed into the MVS link pack area from the hlq.SDFHLOAD library. CICS tries to load the modules from libraries in the DFHRPL concatenation.
You might use this option when you want to run CICS to test a lot of LPA-eligible modules before installing them in the MVS link pack area. For example, you could add the hlq.SDFHLPA library to the DFHRPL concatenation while testing CICS modules for the MVS link pack area. Once you have verified the use of those modules from the MVS link pack area, you should specify the LPA=YES system initialization parameter, and remove the hlq.SDFHLPA library from the DFHRPL concatenation.
PRVMOD={name|(name1,name2,...)}
This prevents CICS from using the specified modules from the MVS link pack area for only the run of CICS on which the PRVMOD parameter is specified. You might use the PRVMOD parameter when you want to run CICS to test a new version of an LPA-eligible module before replacing the version already in the MVS link pack area.
Specify the full module name on the PRVMOD parameter, including any suffix (for example, DFHMCP1$). If only one module is named, the parentheses are optional. The PRVMOD parameter may span input lines. However, do not split module names across lines, because CICS system initialization adds a comma at the end of every input line that does not already end with a comma. The only validity check performed on a module name is to ensure that it does not exceed eight characters.
You cannot code the PRVMOD parameter in the DFHSIT module; you can specify it in the PARM parameter, in the SYSIN data set, or through the system console.
/* Not loaded from LPA unless USELPACOPY is set to Y in the CSD */
You might use the USELPACOPY(NO) option of the PROGRAM resource definition for a more permanent exclusion of an LPA-resident module than for the single run of CICS control provided by the PRVMOD system initialization parameter.
While verifying new versions of modules to be installed into the MVS link pack area, you can instruct a CICS region to use the new versions from the DFHRPL concatenation by any of the following options:
For further information about these options, see Using modules from DFHRPL
In all cases, you must install the new versions of the modules into the hlq.SDFHLOAD library, or another library in the DFHRPL concatenation.
If you are verifying many CICS LPA-eligible modules, you might like to add the hlq.SDFHLPA library to the DFHRPL concatenation. This allows you to check that the modules you have installed in the MVS link pack area are being loaded from there.
After you have installed and verified the use of modules from the MVS link pack area, you should remove the versions of the modules from the DFHRPL concatenation of your CICS startup job.
You can find out whether CICS is loading modules from the MVS link pack area or the DFHRPL concatenation by reviewing the index of a system dump for the CICS region started with the system initialization parameter LPA=YES. Modules loaded from the MVS link pack area have the dump option LD=3.
CICS issues message DFHLD0107I if it searches the MVS link pack area for a module installed there from hlq.SDFHLOAD and fails to find it.
If you encounter this message, check that you have specified USELPACOPY(YES) on the associated PROGRAM resource definition (if applicable). For further information about using modules loaded in the MVS link pack area from the hlq.SDFHLOAD library, see Modules in the MVS link pack area from hlq.SDFHLOAD.
CICS uses console routing code 11 for this particular message, which allows you to control the output of this message. For example, you can:
VARY devnum,CONSOLE,ROUT=(rtcode,rtcode,.,.,.)
Alternatively, you can remove route code 11 from those already defined by using the following VARY command:
VARY devnum,CONSOLE,DROUT=(11)
CICS assumes that the following PL/1 modules are LPA eligible and issues message DFHLD0107I if it fails to find them there: