> And that means that PSW and your code need to be in fixed or DREF storage.

Not arguing at all, just trying to educate myself ... why? I don't see
anything in PoOp about STNSM needing fixed storage.

Charles

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On
Behalf Of Jim Mulder
Sent: Friday, December 16, 2016 4:42 PM
To: [email protected]
Subject: Re: Question on SPKA and Control Register 3

> >> After it showed up on a customer's STROBE report, we switched over 
> >> to using LPSW instead...
> > If you're unlucky enough to hit the edge case, you will lose the PER
bit
> > by doing so.
> 
> Actually, that's a good point. If we get interrupted after the STOSM 
> and

> before the LPSW, and the system decides to turn on/off PER bit, etc. 
> on the very next dispatch, we would have the wrong value until it was 
> corrected on the next dispatch.
> 
>       STOSM PSWMASK,0               Retain the current system mask
>       MVZ   PSWBYTE1,TSOPKF         Set Key
>       OI    PSWBYTE1,PSWPROB        Problem state
>       LPSW  PSW                     Switch to TCB key and prob state
> 
> Not sure if we would ever care about such a thing, but I moved the 
> STOSM

> so the routine now looks as follows. That should reduce the likelihood 
> of that happening to even nearer zero than it already was...
> 
>       MVZ   PSWBYTE1,TSOPKF         Set Key
>       OI    PSWBYTE1,PSWPROB        Problem state
>       STOSM PSWMASK,0               Retain the current system mask
>       LPSW  PSW                     Switch to TCB key and prob state

 It won't get corrected on the next dispatch, and will continue to have the
wrong value.  z/OS does not recompute the setting of the PSW PER bit on
every dispatch. 

  If that caused someone's SLIP trap to not match, they would likely care a
lot about that, and open a PMR.  And if we were very lucky and a dump was
taken very shortly after the SLIP got enabled, we might see in system trace
where the EXT  EMS that SLIP used to enable for PER has an external old PSW
that points to the LPSW in your code, and know that the problem was due to
your code defect.  More likely, we would not be so lucky, and that PMR would
go unsolved, after spending a lot of time looking for a nonexistent bug in
SLIP.

  Your code must be changed from STOSM PSWMASK,0 to STNSM PSWMASK,X'FC' .
And that means that PSW and your code need to be in fixed or DREF storage.

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

Reply via email to