There’s no way to avoid an ABEND unless you use FRR, ARR,ESTAE etc. or unless your thread of execution has some explicit or implicit lock on the virtual storage. There’s no “safe “ instruction that serves you purpose.
The archives are replete with discussions on this topic IIRC Regards, Keven > On Mar 5, 2022, at 16:11, Tony Thigpen <[email protected]> wrote: > > My thoughts. > > Since I support software that is called by any number of users, I would like > to validate that they provided valid parms. As a called subsystem, I can't be > messing with the callers error handling routines that may already be handling > SOC4s. I don't want to know if it's 'in storage', just that it is accessible > even if a page-fault is needed. > > I wish there was a simple: > TEST MEMORY AND BRANCH INVALID > operands R1 is a register pair with R1=address and R1+1=length to validate. > (Like an MVCL.) > > Instead of a SOC4, just branch to the address provided as the second operand > where I have placed an error handler. > > > > Tony Thigpen > > Paul Gilmartin wrote on 3/5/22 16:48: >>> On Mar 5, 2022, at 05:44:41, João Reginato wrote: >>> >>> Which is the best instruction to test if a virtual address is still valid to >>> avoid an unexpected S0C4? >>> >> How is that information useful? >> Is its usefulness diminished by "an unexpected S0C4"? >> -- >> gil
