Binyamin
I move the SDWA to another address space orignally I thought the didn't work
in fact it did it was just that recovery routine was getting called
repeatdly
MYRECOV CSECT
MYRECOV AMODE 31
MYRECOV RMODE ANY
YREGS
AR0 EQU 0
AR1 EQU 1
AR2 EQU 2
AR3 EQU 3
AR4 EQU 4
AR5 EQU 5
AR6 EQU 6
AR7 EQU 7
AR8 EQU 8
AR9 EQU 9
AR10 EQU 10
AR11 EQU 11
AR12 EQU 12
AR13 EQU 13
AR14 EQU 14
AR15 EQU 15
**********************************************************************
* Address Space Recovery Rtn | 6
* | 7
* Determine Address Space and Type of Abend | 8
* | 9
* Give user OPtion of Sdump | 10
*+--------------------------------------------------------------------+ 34
LR R3,R15
USING MYRECOV,R3
LR R13,R0 Save area
LR R4,R1 Save Sdwa Address
*
* *---------------------------------------* 41
* * SET ADDRESSABILITY SDWA EXTENSION * 42
* *---------------------------------------* 43
USING WS_DSECT,R13
ST R14,SAVE14
ST R2,USER_PARM
USING SDWA,R4 Address SDWA
*
*
* Get Storage For SDWA
*
LA R0,((SDWAEND-SDWA)+(SDWASEND-SDWARC1)+(SDWAIEND-SDWARC2)X
+(SDWALEND-SDWARC3)+(SDWAEEND-SDWARC4)+(SDWAPEND-SDWAPTRX
S)+(SDWAPTRS-SDWAPEND)+(SDWAREND-SDWANRC1)+(SDWASEN-SDWAX
NRC2)+(SDWADEND-SDWANRC3))
ST R0,SDWA_LEN
STORAGE OBTAIN,LENGTH=(R0),ADDR=(R6),SP=0,OWNER=PRIMARY
ST R6,SDWA_ADDRESS
LA R7,SDWAEND-SDWA
LR R11,R7
LR R10,R4
MVCL R6,R10
L R8,SDWAXPAD ADDRESS SDWA EXTENSION PTRS 44
L R10,SDWADSRP-SDWAPTRS(R8) ADDREESS RECORDABLE XTNS 45
MVC 0(SDWAREND-SDWANRC1,R6),0(R10) move
LA R6,SDWAREND-SDWANRC1(,R6)
L R10,SDWASRVP-SDWAPTRS(R8) DDRESS OF RECORDABLE XTNSION 45
LA R11,SDWASEND-SDWARC1
LR R7,R11
MVCL R6,R10
L R10,SDWAXIOM-SDWAPTRS(R8) ADDRESS OF RECORDERABLE EXT 45
MVC 0(SDWAIEND-SDWARC2,R6),0(R10) DD CMP
LA R6,SDWAIEND-SDWARC2(,R6)
L R10,SDWAXSPL-SDWAPTRS(R8) ADDRESS OF RECORDABLE XTNSION 45
MVC 0(SDWASEN-SDWANRC2,R6),0(R10) DD CMP
LA R6,SDWASEN-SDWANRC2(,R6)
L R10,SDWAXLCK-SDWAPTRS(R8) ADDRESS OF RECORDABLE XTNSION 45
MVC 0(SDWALEND-SDWARC3,R6),0(R10) DD CMP
LA R6,SDWALEND-SDWARC3(,R6)
L R10,SDWADSPP-SDWAPTRS(R8) ADDRESS OF RECORDABLE XTNSION 45
MVC 0(SDWADEND-SDWANRC3,R6),0(R10) DD CMP
LA R6,SDWADEND-SDWANRC3(,R6)
L R10,SDWAXEME-SDWAPTRS(R8) ADDRESS OF RECORDABLE XTNSION 45
LA R11,SDWAEEND-SDWARC4
LR R7,R11
MVCL R6,R10
L R2,USER_PARM Get Paramter Area Back
USING ESTPARM,R2
*
LA R8,1
*
AXSET AX=(R8) Give us Authority TO MOVE TO SRV
*
XR R5,R5
*
ICM R5,B'0011',SERVASID Get Server asid
*
SSAR R5 Set it SASN
*
LAM AR0,AR15,=16F'0' Zero it out
*
ICM R8,B'1111',SDWA@ADR Get Server Address
L R9,SDWA_ADDRESS Get our Address
*
*
XR R0,R0
L R0,SDWA_LEN
*
LAM AR8,AR8,=F'1' Secondary alet
*
SAC 512 Asc Ar mode
*
MVC_LOOP DS 0H
C R0,=F'255'
BH MOVEIT
BCTR R0,0 DOWN BY 1
EX R0,MOVELAST
B POSTIT
MOVEIT DS 0H
MVC 0(256,R8),0(R9)
S R0,=F'256'
LA R8,256(,R8) bump out put
LA R9,256(,R9)
B MVC_LOOP
POSTIT DS 0H
*
LAM R8,R8,=F'0'
SAC 0 Back to Primary
*
L R15,CVTPTR R15 -> cvt JOE
L R15,CVTASVT-CVT(,R15) R15 -> asvt JOE
USING ASVT,R15 JOE
LA R15,ASVTENTY-ASVT(,R15) Get first asvt slot JOE
XR R0,R0
LH R0,SERVASID Get asid in question JOE
BCTR R0,0 Down By 1 JOE
SLL R0,2 Multiply by 4 JOE
AR R15,R0 Point to ASCB JOE
LR R2,R15 Point to Entry
L R2,0(,R2) Point to Ascb
LR R5,R2
*
L R2,USER_PARM Restore Paramter
ICM R6,B'1111',SDWAECB@
*
* XMEM POST WITH ASCB KILLS ALL REGS BESIDES R9
*
STM R0,R15,SAVE_REGS
LR R9,R13
POST (R6), X
C'MRC', X
ASCB=(R5), X
ECBKEY=0, X
LINKAGE=BRANCH, X
ERRET=ISSMES
LR R13,R9
LM R0,R15,SAVE_REGS Restore
*
CONTIN DS 0H
LR R1,R4
SETRP RC=0
L R14,SAVE14
XR R15,R15
BSM 0,R14
ISSMES WTO 'ERROR POSTING..',LINKAGE=BRANCH
B CONTIN
*
MOVELAST MVC 0(0,R8),0(R9)
LTORG
*---------------------------------------------------------------------* 579
* MAP WORK AREA * 580
*---------------------------------------------------------------------* 581
*---------------------------------------------------------------------* 588
* OTHER DSECTS * 589
*---------------------------------------------------------------------* 590
WS_DSECT DSECT
SAVE14 DS A
USER_PARM DS A
SAVE_REGS DS 16F
SDWA_ADDRESS DS A
SDWA_LEN DS F
WS_LEN EQU *-WS_DSECT
IHASDWA
ESTPARM
CVT DSECT=YES,LIST=YES
IHAASVT
IHAPSA
IHAFRRS
END 592
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On
Behalf Of Binyamin Dissen
Sent: Thursday, June 16, 2016 2:47 PM
To: [email protected]
Subject: Re: Recovery Routine not Percolating
On Thu, 16 Jun 2016 13:51:47 -0400 michealbutz <[email protected]>
wrote:
:>Hi
:>
:>
:>
:>It seems my Recovery Routine a FRR for a SRB is getting called repeatdly
:>again again for the same abend at the same location.
How many times did you schedule the SRB?
How do you know it is being called repeatedly?
:>I thought if I did SETRP RC=0 it should percolate and go to the next
:>recovery on the Chain I double checked and R1 points to the SDWA.
It should.
:>After the SETRP I do a BSM 0,R14.
Show the complete code of the FRR.
--
Binyamin Dissen <[email protected]> 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 [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