z/VSE and running on the callers TCB (for several z/VSE related reasons).

Tony Thigpen

Seymour J Metz wrote on 3/5/22 19:35:
As a subsystem, you should have your own recovery environment, so what you do 
won't interfere with the caller's error recovery. Using a recovery routine, 
whether to handle a program check or to handle the ABEND from an unhandled 
program check, has two advantages:

  1. It works when the data were paged out

  2. It solves the time-of-check to time-of-use problem.


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

________________________________________
From: IBM Mainframe Assembler List [ASSEMBLER-LIST@LISTSERV.UGA.EDU] on behalf 
of Tony Thigpen [t...@vse2pdf.com]
Sent: Saturday, March 5, 2022 5:11 PM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Testing address validity

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

Reply via email to