> 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
