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? :> :>@Peter, @Jim -- if you're following this, I'm testing on V2R2 but could :>readily try on V2R1 or V1R13. :> :>Charles :> :>-----Original Message----- :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On :>Behalf Of Charles Mills :>Sent: Tuesday, December 13, 2016 6:48 AM :>To: IBM-MAIN@LISTSERV.UA.EDU :>Subject: Re: Question on SPKA and Control Register 3 :> :>Okay, there is just no doubt in my mind that the use of MODESET precludes :>the use of SPKA (and I'm not certain how to get around it other than to use :>MODESET (with its attendant SVC) rather than SPKA). It's code that runs :>millions of times per hour on multiple LPARs so I am trying to minimize :>gratuitous overhead. Here is the exact failing code (unedited, and yes, I :>know it's dumb -- I'm trying to illustrate the problem) :> :> 868 MODESET KEY=NZERO :>Make sure we are in Key 8 :> 869+* MACDATE Y-3 81030 :> :>00055C 871+ CNOP 0,4 :> :>00055C 4510 C564 00564 872+ BAL 1,*+8 :> :>000560 00000020 873+ DC :>B'00000000000000000000000000100000' :>000564 5810 1000 00000 874+ L 1,0(0,1) :> :>000568 0A6B 875+ SVC 107 :> :> 876 MODESET MODE=PROB :>Allow SPKA 8 :> 877+* MACDATE Y-3 81030 :> :>00056A 0700 879+ CNOP 0,4 :> :>00056C 4510 C574 00574 880+ BAL 1,*+8 :> :>000570 00000004 881+ DC :>B'00000000000000000000000000000100' :>000574 5810 1000 00000 882+ L 1,0(0,1) :> :>000578 0A6B 883+ SVC 107 :> :> 884 MODESET KEY=ZERO :>Get access to CSA :> 885+* MACDATE Y-3 81030 :> :>00057A 0700 887+ CNOP 0,4 :> :>00057C 4510 C584 00584 888+ BAL 1,*+8 :> :>000580 00000030 889+ DC :>B'00000000000000000000000000110000' :>000584 5810 1000 00000 890+ L 1,0(0,1) :> :>000588 0A6B 891+ SVC 107 :> :>00058A B20A 0080 00080 892 SPKA X'80'(0) :>*** Total experiment *** :> :>And here is the result (unedited): :> :> CEE3202S The system detected a privileged-operation exception :>(System Completion Code=0C2). :> Location: :> :> Program Unit: Entry: DIRECTOR Statement: Offset: +000000DA :> :> Machine State: :> :> ILC..... 0004 Interruption Code..... 0002 :> :> PSW..... 070D0400 A4991406 :> :> GPR0..... ********_00022798 GPR1..... ********_00000030 GPR2..... :>********_00F898C4 GPR3..... ********_00000001 :> GPR4..... ********_2499A9F8 GPR5..... ********_25E98940 GPR6..... :>********_2499CB38 GPR7..... ********_25E71528 :> GPR8..... ********_26093E70 GPR9..... ********_1C7AC560 GPR10.... :>********_000223BC GPR11.... ********_25E9336C :> GPR12.... ********_24990E78 GPR13.... ********_000226C8 GPR14.... :>********_A4991388 GPR15.... ********_00000000 :> FPC...... 00000000 :> :> FPR0..... 45EA1145 00000000 FPR1..... 43169000 00000000 :> :> FPR2..... 4D5438B2 C38FA400 FPR3..... 35000000 00000000 :> :> FPR4..... 433E8000 00000000 FPR5..... 41A00000 00000000 :> :> FPR6..... 35000000 00000000 FPR7..... 33000000 00000000 :> :> FPR8..... 00000000 00000000 FPR9..... 00000000 00000000 :> :> FPR10.... 00000000 00000000 FPR11.... 00000000 00000000 :> :> FPR12.... 00000000 00000000 FPR13.... 00000000 00000000 :> :> FPR14.... 00000000 00000000 FPR15.... 00000000 00000000 :> :> :> :> Storage dump near condition, beginning at location: 249913F2 :> :> +000000 249913F2 07004510 C5840000 00305810 10000A6B B20A0080 :>A73E0002 A7840011 E32090F8 |....Ed.........,....x...xd..T..8| :> :>---------------------------------------------------------------------- :>For IBM-MAIN subscribe / signoff / archive access instructions, :>send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- Binyamin Dissen <bdis...@dissensoftware.com> http://www.dissensoftware.com Director, Dissen Software, Bar & Grill - Israel Should you use the mailblocks package and expect a response from me, you should preauthorize the dissensoftware.com domain. I very rarely bother responding to challenge/response systems, especially those from irresponsible companies. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN