There is a quite a bit of misunderstanding (and/or misinformation) in this 
thread.
Bypassing the normal "call stack" for return but instead to "reset" it is 
generally a bad idea. But recovery (both ESTAE-type and FRR) is defined very 
carefully in this regard. The time-of-recovery-set linkage stack address is 
used as the default linkage stack level for retry (and, to the extent it is 
safe, this can be adjusted via SDWALSLV). It is true that upon recovery-routine 
percolation the linkage stack address does not change. But upon 
recovery-routine retry it does, back to the time-of-set value.
If you truly have a desired linkage stack level and you want to bypass the call 
stack, then setting a recovery routine while at that linkage stack level and 
having that recovery routine get control and retry is the way to go.
Recovery routines cannot issue a PR for a BAKR that was issued by the mainline. 
z/OS protects against that, via the linkage stack unstack suppression feature 
of the architecture. Specifically, you cannot PR past an RB boundary. The 
linkage stack level when an RB is created is saved and is used when setting 
things up to enforce this.
Peter Relson

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

Reply via email to