A copy of the assembler listing might be helpful. Tony Thigpen
Sebastian Welton wrote on 9/5/19 5:39 AM:
A colleague of mine has been developing an MPF exit which calls System REXX but this seems to have thrown up a weird type of error. The program compiles fine, is placed in LNKLST, MPFLST is updated and so on however upon the first two invocations of the exit a S0C4 with reason code 11 abend occurs but after reactivating the exit again, it all works fine. Neither of us is an experienced assembler programmer but looking through the code it seems fine: Eventually I managed to get a dump which throws up the following information: Dump Title: COMPON=CNZ,COMPID=SC1CK,ISSUER=CNZMIREC,MODULE=CNZS1MPF+1B46CF1A,ABEND=S00C4,REASON=00000011 PIDS/5752SC1CK RIDS/GENMSGTR#L AB/S00C4 PRCS/00000011 REGS/0C0DA RIDS/CNZMIREC#R Symptom Description ------- ----------- PIDS/5752SC1CK Program id: 5752SC1CK RIDS/ITCAUTOT#L Load module name: GENMSGTR AB/S00C4 System abend code: 00C4 PRCS/00000011 Abend reason code: 00000011 REGS/0C0DA Register/PSW difference for R0C: 0DA RIDS/CNZMIREC#R Recovery routine csect name: CNZMIREC OTHER SERVICEABILITY INFORMATION Recovery Routine Label: CNZMIPCE Subfunction: Consoles SERVICEABILITY INFORMATION NOT PROVIDED BY THE RECOVERY ROUTINE Csect name Date Assembled Module Level Time of Error Information PSW: 07041000 80000000 00000000 1ECDE102 Instruction length: 06 Interrupt code: 0011 Failing instruction text: 60224110 D088D7D7 10001000 Translation exception address: 00000000_1F701800 Breaking event address: 00000000_1ECDE05E Basically the MPF exit just traps certain messages which are then passed to a System REXX, evaluated and then an action is performed depending upon certain criteria so nothing really too complex and as I said, it works once the initial 2 failures have gone by. We've looked at the CTXT Data Areas and the code looks fine in regards to that so we're going on the possibility that the error lies elsewhere. Just for information, this is running on z/OS 2.3 but on a ZD&T system (allows him to develop this type of stuff without affecting anyone else) with 24GB of memory allocated. Looking at the S0C4 error code, we also suspect that it is the second problem although the program does obtain storage: • Page-translation exception. This error is caused by one of the following: o A program that was running disabled attempted to reference storage while that storage was paged out. To correct the error, page-fix the storage before a program running disabled attempts to reference it. o A program attempted to reference storage that had not been obtained. To correct the error, allocate the storage before attempting to reference it. o A program running in a subspace attempted to reference storage that was not accessible to the subspace at the time of error. To correct the error, ensure that the program running in a subspace references only the storage assigned to that subspace, or storage that can be referenced by all subspaces. I'm not too sure where he obtained the initial assembler program from but am told that it worked elsewhere and I can post excerpts here if required. Any pointers, hints or tips would be gratefully accepted. Sebastian. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN