Why not have a separate subpool for page-protected storage with Fetch enabling 
store temporarily?


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Charles Mills [charl...@mcn.org]
Sent: Monday, February 8, 2021 11:57 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: LINK vs LOAD/CALL.

Storage protection is page by page. So ... design tradeoff decision:

- Leave any part of the program that occupies a partial page unprotected.
- "Waste" the remainder of the partially-occupied page.

IBM obviously chose the former.

Charles


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
Behalf Of Seymour J Metz
Sent: Monday, February 8, 2021 8:51 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: LINK vs LOAD/CALL.

> Therefore, any parts of the program that are on partial pages are not
page-protected.

Ouch! Why?


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of
Peter Relson [rel...@us.ibm.com]
Sent: Monday, February 8, 2021 9:13 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: LINK vs LOAD/CALL.

<snip>
The effect of REFRPROT has long been enforced for modules loaded
from APF libraries.
</snip>

Only for non-key-0 programs. Putting code into key 0 storage is not all
that REFRPROT does.

<snip>
Does REFRPROT have a "warn" setting?
</snip>
No. What would it warn about? That you loaded a refreshable program? You
can't know it won't work until it doesn't work. It is easy enough to scan
your libraries for things that are marked refreshable.

<snip>
... one of our interface routines to Adabas has done this for more than 40
years.
</snip>
But now there is an intrinsic penalty from mixing I-cache and D-cache but
presumably not enough to merit changing.

<snip>
Any LMOD marked "RF" (REFR) will abend S0C4-4 if it modifies
itself during execution.
</snip>
If not key 0, yes. If key 0, only if executing within one of the full
pages of the load module. If the module storage occupies a partial page,
that partial page is not protected:
"Use the REFRPROT statement type to specify that REFR programs are
protected from modification by placing them in key 0, non-fetch protected
storage, and page protecting the full pages. Therefore, any parts of the
program that are on partial pages are not page-protected."

Peter Relson
z/OS Core Technology Design


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to