WWwsswWW
----- Original Message -----
From: IBM Mainframe Discussion List <[email protected]>
To: [email protected] <[email protected]>
Sent: Wed Nov 18 15:14:23 2009
Subject: Re: Reentrant Programs and Protected Storage
>I grew up believing that if a program is link edited as reentrant AND
>it is loaded from an authorized library, it gets loaded into
>protected storage. That is what the manual says, too. However, that
>is not what appears to be happening.
>We are on z/OS 1.10. There is a non-reentrant program which, when
>executed via JCL from an authorized library, fails with a S0C4. When
>the failing program is physically copied to another library and
>executed from there, it runs correctly. This is entirely repeatable.
Did you browse the load library directory and verify the program is not linked
as RENT? Based on what you've written, it sound like the system is treating
the program as if it had the RENT attribute.
BTW, One reference to how laoder handles RENT is in MVS Program
Management: User's Guide and Reference:
<quote>
RENT
The module is reenterable. It can be executed by more than one task at
a time. A task can begin executing it before a previous task has
completed execution. A reenterable module is ordinarily expected not
to modify its own code. In some cases, MVS protects the reentrant
module's virtual storage so that it cannot be modified except by a
program running in key 0. These cases include programs which the
system treats as having been loaded from an authorized library, and
also programs running under UNIX unless a debugging environment has
been specified.
</quote>
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html