Peter 

Thanks when is you say not every CDE is built  by z/os are you referring to the 
IDENTIFY 

Macro which a user can could a CDE using a. Address in storage 

Also I noticed that the retry address is only 4 bytes 

I guess then to  you would have to retry to a label in the program that has RP 
instruction 

And have your recovery set it up before returning to RTM

Thanks 

> On Dec 25, 2023, at 12:18 PM, Joseph Reichman <[email protected]> wrote:
> 
> 
> Thank you 
> 
> Peter I started looking at it while trying to enhance the GRECOV 
> 
>>> On Dec 25, 2023, at 8:48 AM, Peter Relson <[email protected]> wrote:
>>> 
>> <snip>
>> If bit CDCEX in the CDE  meaning there is an CDE extension would that imply
>> the module is RMODE 64  since CDXEntpt64 is a double word
>> </snip>
>> 
>> A simple glance at a CDE in storage for a module that is not RMODE 64 would 
>> show you that this is not the case.
>> 
>> Every CDE built by z/OS has a CDX, as does every LPDE. The CDCDEX / LPDECDEX 
>> bit is on in each..
>> Not every CDE is necessarily built by z/OS (to our regret).
>> 
>> A module is RMODE 64 (or has an RMODE 64 extent) if it has an extent that is 
>> above 2G.
>> Extents are normally in the area pointed to by CDXLMJP of a major 
>> (non-alias) CDE.
>> Since those extents have only 4 bytes for the extent address, that won't cut 
>> it for RMODE 64.
>> 
>> A CDX (when it exists) might have an "XTL64". The interface parts of a CDX 
>> are mapped by IHACDX. The extent list 64 (mapped by IHAXTL64) has an 8-byte 
>> address for an extent.
>> 
>> There is also the fine point of whether you are talking about "is the module 
>> defined as RMODE 64" or "is the module in 64-bit storage" or "is some extent 
>> of the module in 64-bit storage".
>> 
>> The answer to the first question is within the directory entry. AMBLIST is 
>> one way to display that information (or doing a BLDL or a DESERV GET).
>> The answer to the second and third questions lies with looking at the XTL64.
>> If CDXXTLST64Addr is not 0 and if every extent is above 64 then you'd 
>> consider the answer to the second question to be "yes".
>> If CDXXTLST64Addr is not 0 and if some extent is above 64 then you'd 
>> consider the answer to the third question to be "yes".
>> If CDXXTLST64Addr is 0 then the answers to the 2nd and 3rd questions are 
>> "no".
>> 
>> It does happen to be the case that if you look at the extent list pointed to 
>> by CDXLMJP, if one of the extents has an address >= x'7FFFF000', that 
>> correlates to "the extent is actually above 2G" and in that same entry the 
>> length is "1" (these being indicators that the real extent definition is in 
>> the XTL64 because it does not fit in the XTLST.
>> 
>> Peter Relson
>> z/OS Core Technology Design
>> 
>> 
>> ----------------------------------------------------------------------
>> For IBM-MAIN subscribe / signoff / archive access instructions,
>> send email to [email protected] with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to