Thanks. Yes, adding MODE=SUP to my KEY=ZERO MODESET would obviously solve the problem, short-term. I have resisted that for three reasons, listed below roughly in order of importance as I see it. I would welcome comments on my logic.
1. How do I get back to problem state? I don't want to run the whole application, which runs for days at a time, mostly in LE C++, in supervisor state. Using MODESET/SVC 107 to get back defeats the whole purpose of this exercise. If I don't mind the SVC 107 I could just forget the SPKA entirely and simply use MODESET KEY=NZERO. Am I correct that there is no "simple" machine instruction that sets the Problem bit off? 2. I believe in least privilege. I never run supervisor state when program state will do. It seems a shame to run supervisor state just to work around an MVS gotcha. 3. I wonder if adding MODE=SUP to MODESET KEY=ZERO slows it down significantly. Does it double the path length in MVS? Charles -----Original Message----- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Binyamin Dissen Sent: Tuesday, December 13, 2016 9:28 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Question on SPKA and Control Register 3 Yep, it is a bug. The PSW key mask has key 0 and key9 after the combination. Not key 8. I would not expect MODESET to alter the key mask. Of course, I have never found the occasion to run key zero problem state (since it doesn't prevent overlays). I would use supervisor state and switch out of key when needed. On Tue, 13 Dec 2016 08:27:41 -0800 Charles Mills <charl...@mcn.org> wrote: :>Just to continue the experiment and confirm my conclusion, all I have to do :>to get the below to "work" is remove the last MODESET: :> :> MODESET KEY=NZERO Make sure we are in Key 8 :> MODESET MODE=PROB Allow SPKA 8 :>* *** MODESET KEY=ZERO Get access to CSA :> SPKA X'80'(0) *** Total experiment *** :> :>So I rest my case: a MODESET leaves you in a state where you can do any SPKA :>you want so long as it is for the key you already are in. :> :>Or, turning this from a complaint to the underlying question: if you had :>code that was executed *very* frequently and needed to be in Key 0 briefly, :>what would you do? Is there any way to avoid the SVC when returning to Key :>8? ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN