Page 1 of 2

Query with LPALIB concatenation

PostPosted: Mon Jul 23, 2012 1:54 pm
by sendaun
Dear all,

I have a query with LPALIB concatenation. Below is my scenario:

I am intending to load my version of SMF Exit (IEFU29) into LPA region. I succeeded doing it dynamically with SETPROG:
=> SETPROG LPA,ADD,MODNAME=IEFU29,DSNAME=<My-Load-Library> {Re-pointing of new Exit done}

Next to make it work after my next IPL, i placed the copy of my IEFU29 exit in one of the load libraries in my LPALST concatination:
=> LPA=(PC,&VER.) ** LPALSTxx sequence in IEASYSxx

=> SYS1.PARMLIB(LPALSTPC) - 01.27 Columns 00001 00072
Command ===> Scroll ===> CSR
****** ***************************** Top of Data ******************************
000001 SYS1.LPALIB.PLEXC, <= My version of IEFU29 Placed here
.
.
****** **************************** Bottom of Data ****************************

After the system re-IPL, i noticed that my version on IEFU29 exit is not loaded in LPA. Instead the default version of the IEFU29
exit (that is offered by IBM) is loaded into LPA from SYS1.LPALIB.

After this i realised that even though my LPALST concatenation says that the sequence should be LPALSTPC, LPALST&VER. (LPA=(PC,&VER.)), the
system will consider LPALST00 as the first level in the concatenation.

=> SYS1.PARMLIB(LPALST00) - 01.27 Columns 00001 00072
Command ===> Scroll ===> CSR
****** ***************************** Top of Data ******************************
000001 SYS1.LPALIB, <= IBM default version of IEFU29 resides here
*******************************************************************************

This is the reason why the system failed to load my copy of the exit routine into LPA.

In my enviornment, i cannot update my version of IEFU29 exit to SYS1.LPALIB. So to overcome this without disturbing the LPALIB concatenation
sequence, i tried tweaking PROGxx by including the LPA ADD statement:

VIEW SYS1.PARMLIB(PROGPC) - 01.65 Columns 00001 00072
Command ===> Scroll ===> CSR
****** ***************************** Top of Data ******************************
000001 APF FORMAT(DYNAMIC)
.
.
000004 LPA ADD MODNAME(IEFU29) DSNAME(SYS1.LINKLIB.PLEXC) <= My version of IEFU29 Placed here



After this i could see my version of the IEFU29 module loaded in LPA in all the machines in my Plex which are in z/OS 1.12 or z/OS 1.13
But still in few machines which are in z/OS 1.11 or below, the older version of IEFU29 is loaded into LPA.

Here are my questions:
=====================

(1) Is there is any way to alter my LPA concatenation sequence to LPALSTPC followed be LPALST00? [Please note i cannot edit my LPALST00]
(2) Why the LPA ADD statement that i quoted above (in PROGPC), is not taking effect in z/OS 1.11 of below versions?


Hope i made it clear pls?

Re: Query with LPALIB concatenation

PostPosted: Mon Jul 23, 2012 2:28 pm
by Robert Sample
Does your IEASYSxx member have CLPA specified? If not, the LPA won't be refreshed during the IPL.

Re: Query with LPALIB concatenation

PostPosted: Mon Jul 23, 2012 2:59 pm
by sendaun
@Robert:
Yes CLPA is specified in my IEASYSxx. As i mentioned earlier i could see the LPA refreshed after IPL in few machines which are in z/OS 1.12/13 versions. I am facing problem only with lower versions.

Re: Query with LPALIB concatenation

PostPosted: Mon Jul 23, 2012 3:18 pm
by jaggz
Hi,

I pressume you are automating the SMF dump . So Under Prog Member the syntax would look like below for Exit.

EXIT ADD EXITNAME(SYS.IEFU29) MODNAME(IEFU29) DSNAME(SYS1.LPALIB)
EXIT ADD EXITNAME(SYSSTC.IEFU29) MODNAME(IEFU29) DSNAME(SYS1.LPALIB)

Did you update the SMFPRMXX ?

Jaggz

Hope you have update

Re: Query with LPALIB concatenation

PostPosted: Mon Jul 23, 2012 3:19 pm
by jaggz
IEFU29 at SYS1.LPALIB is just a IBM stub with a length 00020. So you can also replace after taking necessary backup.

Re: Query with LPALIB concatenation

PostPosted: Mon Jul 23, 2012 3:33 pm
by sendaun
@Jaggz:
> I do included the EXIT ADD statements in my PRGxx (though i havent shown in my post). And the SMFPRMxx member is update with the IEFU29 Exit as well.
> I cant replace the dummy IEFU29 that resides in my SYS1.LPALIB. The reason being this is a test environment where the system maintanance is done at a remote site and we use to update our SYSRES pack frequently from our remote site. When ever we bring a new SYSRES pack from our remote site (for code refresh), i will get a new copy of SYS1.LPALIB. In that case i have to replace the dummy IEFU29 each time after my systems code refresh. Which is really a troublesome in my environment, hence looking for an alternate solution.

Re: Query with LPALIB concatenation

PostPosted: Mon Jul 23, 2012 3:42 pm
by jaggz
I was little confused by your Prog statement :

000004 LPA ADD MODNAME(IEFU29) DSNAME(SYS1.LINKLIB.PLEXC) <= My version of IEFU29 Placed here

Did you compare with the one I gave at the above statement ?

Re: Query with LPALIB concatenation

PostPosted: Mon Jul 23, 2012 3:50 pm
by sendaun
Sorry. This is my PROGxx content:

VIEW SYS1.PARMLIB(PROGPC)
Command ===> Scroll ===> CSR
****** ***************************** Top of Data ******************************
000001 APF FORMAT(DYNAMIC)
000002 LPA ADD MODNAME(IEFU29) DSNAME(SYS1.LINKLIB.PLEXC)
000003 EXIT ADD EXITNAME(SYS.IEFU29) MODNAME(IEFU29)
000004 EXIT ADD EXITNAME(SYSSTC.IEFU29) MODNAME(IEFU29)

Re: Query with LPALIB concatenation

PostPosted: Mon Jul 23, 2012 4:10 pm
by jaggz
Dear,

"LPA ADD MODNAME(IEFU29) DSNAME(SYS1.LINKLIB.PLEXC) "

Above statement in PROG is something new to me. Did you add your "SYS1.LINKLIB.PLEXC" to APF ?

Jaggz

Re: Query with LPALIB concatenation

PostPosted: Mon Jul 23, 2012 4:21 pm
by sendaun
@jagzz
> Info about LPA add statement is found at http://publib.boulder.ibm.com/infocente ... 0/prog.htm
> Yes the library "SYS1.LINKLIB.PLEXC" is added to APF