Your routine will always return R15=0 because the last thing you do a zero R15.
I think your code should look like:
PROG_RETURN DS 0H
L R14,12(,R13) Restore R14
LM R0,R12,20(R13) Restore the rest
*** XR R15,15 delete this instruction
BR R14 go back
Chris Blaicher
Principal Software Engineer, Software Development
Syncsort Incorporated
50 Tice Boulevard, Woodcliff Lake, NJ 07677
P: 201-930-8260 | M: 512-627-3803
E: [email protected]
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf
Of MichealButz
Sent: Tuesday, October 15, 2013 12:46 PM
To: [email protected]
Subject: Re: 0C4 reason code 4 TSO command processor returning from verify exit
I made a break point right after CALLTSSR EP=IKJPARS With BR R14 as the first
instruction of the exit everything works
I also set the break point at the BR R14 in its normal place the last
instruction in the exit That breakpoint is executed with no problem
And then breakpoint right after the CALLTSSR that's where I get the problem
IEA995I SYMPTOM DUMP OUTPUT
SYSTEM COMPLETION CODE=0C4 REASON CODE=00000004
TIME=07.32.35 SEQ=00035 CPU=0000 ASID=003F
PSW AT TIME OF ERROR 078D0000 8438EA48 ILC 6 INTC 04
NO ACTIVE MODULE FOUND
NAME=UNKNOWN
DATA AT PSW 0438EA42 - D4021001 10014770 B1C29620
GR 0: 00054AD8 1: 00000000
2: 00000000 3: 00000002
4: 00054AD7 5: 00054AD8
6: 008C0E31 7: 0438EA04
8: 8438CBEC 9: 8438CB4E
A: 0438F8F8 B: 8438E8FA
C: 008C0E4F D: 008C0770
E: 00000001 F: 04391742
END OF SYMPTOM DUMP
Abend 0C4000 hex occurred processing command 'SPSWT '.
Here is the verify exit it's apf authorized program but at this point its
running in problem state
I put a BR R14 right at the beginning of the exit and it worked ok I also
checked the values of the registers
On entry and exit and outside of R15 which is 0 they are the same
PROGLOOK DS 0H
STM R14,R12,12(R13) STORE USER REGISTERS
LR R12,R15 R12 BASE AT THIS POINT
USING PROGLOOK,R12 ADDRESS EXIT
USING VEPL,R1 PAramter list
L R2,VEPLPPE Get PPE Entry
USING PPE,R2 Address
L R3,VEPLWRKA Get Work Area Address
AA USING PROGNAME,R3 Address it
XR R4,R4 Clear 4
LH R4,PPEOPLEN Get Length
BCTR R4,0 No;
L R5,PPEOPER Get Operand
EX R4,MOVE_PROG Get String pointer
LA R4,ADDR
*
* Look If program is in core jpa/lpa
*
CSVQUERY INEPNAME=(R3), X
OUTEPA=AA.PROG_ADDR, X
SEARCH=JPALPA,MF=(E,CSV_LST)
*
LTR R15,15 Q . found Ok
BZ PROG_FOUND Yes;
*
* look in steplib task lib
*
* LA R1,7 Move 8 bytes
MVC NAME,0(R3)
*
BLDL 0,LIST_ADDR
*
LTR R15,R15 q. Prog Found
BZ PROG_FOUND Set Good Return Code
NO_PROG DS 0H
LA R15,4
* MVC VAL_MSG,=A(NOTFND)
B PROG_RETURN
PROG_FOUND DS 0H
LOAD DE=NAME
ST R0,AA.PROG_ADDR Store Address
GOOD_RC DS 0H
XR R15,R15
PROG_RETURN DS 0H
LM R14,R12,12(R13) Restore everyting except r15
XR R15,15
BR R14 go back
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf
Of Lizette Koehler
Sent: Tuesday, October 15, 2013 10:50 AM
To: [email protected]
Subject: Re: 0C4 reason code 4 TSO command processor returning from verify exit
I think it would be helpful if you could post the Summary Dump from the abend.
PSW and REGs
Also, is this an APF Authorized module? Is it running from an APF Authorized
Library? Is it marked RENT?
Thanks
Lizette
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf
Of MichealButz
Sent: Tuesday, October 15, 2013 7:36 AM
To: [email protected]
Subject: 0C4 reason code 4 TSO command processor returning from verify exit
Hi,
I am getting S0C4 reason code 4 after I return from a TSO verify exit IKJUNFLD
VERIFCK=PROGLOOK
Points to note
. I display all the registers on entry and they are the same on exit
with the exception of R15 which is 0
. Since a S0C4/4 says you are trying to access storage which is in
different key that you are in, I did a LISTPSW and I am in KEY 8 on entry and
exit
. The documentation for the verify exit is very sparse it doesn't say
what registers are on entry and what they should be on exit
. I am using CSVQUERY and BLDL in my exit both should run in the
environment I am in. I have AMODE=31,RMODE=ANY however I believe I was loaded
below the line.
Any help appreciated I can post the code if necessary
Thanks
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send email to
[email protected] with the message: INFO IBM-MAIN
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send email to
[email protected] with the message: INFO IBM-MAIN
ATTENTION: -----
The information contained in this message (including any files transmitted with
this message) may contain proprietary, trade secret or other confidential
and/or legally privileged information. Any pricing information contained in
this message or in any files transmitted with this message is always
confidential and cannot be shared with any third parties without prior written
approval from Syncsort. This message is intended to be read only by the
individual or entity to whom it is addressed or by their designee. If the
reader of this message is not the intended recipient, you are on notice that
any use, disclosure, copying or distribution of this message, in any form, is
strictly prohibited. If you have received this message in error, please
immediately notify the sender and/or Syncsort and destroy all copies of this
message in your possession, custody or control.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN