Re: COBOL2 Issues
Harold, Is this enough information? Condition Information for Active Routines Condition Information for OFDBINIT (DSA address 0003DBA0) CIB Address: 0003ECA0 Current Condition: CEE0198S The termination of a thread was signaled due to an unhandled condition. Original Condition: CEE3204S The system detected a protection exception (System Completion Code=0C4). Location: Program Unit: OFDBINIT Entry: OFDBINIT Statement: Offset: +1C6E Machine State: ILC. 0006Interruption Code. 0004 PSW. 078D 000920EC GPR0. 0005E528 GPR1. 0003E2F8 GPR2. 000B50B8 GPR3. 00E34040 GPR4. 000B0038 GPR5. F738 GPR6. GPR7. 00063200 GPR8. 000905C8 GPR9. 0005E360 GPR10 000B00B8 GPR11 00091D6A GPR12 00090574 GPR13 0003DBA0 GPR14 500920DA GPR15 Storage dump near condition, beginning at location: 000920D6 +00 000920D6 908005EF 58C090E8 58409128 40F04008 D2033004 8208D201 302A81E2 D201302C |...Y. j. 0 .K...b.K...aSK...| Thanks -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: COBOL2 Issues
Ok instruction stream, my short hand balr 14,15 L 12,9/E8 STH 14 4/8 mvc 3 3/004 8/208 mvc 1 3/02a 8/1e2 but if you look at register 3, 00E34040, that value looks bogus. according to abendaid, R3 00E34040 14,893,120 A(ISPSUBX ) + 1040 I don't remember if this was a batch program, but I suspect you are not really using ISPSUBX. So my next guess is that something got tromped and when R3 was loaded it got bad data. I.E. T blank, blank I know a long time ago, cobol vs, I used to use subroutines that fiddled with the file DCBs in a cobol program, but along the way IBM changed them to FCB or something like that and the DCB were off some other chain. I never tracked it down. Are you perhaps calling a subroutine and passing a FD name? So much for guesses. You'll have to open the program OFDBINIT, and look at the code. It might help to recompile OFDBINIT with the LIST option to see the code that is generated and match it to what the PSW is pointing at (to be sure you are at the right part of the code) Then try and figure out what the cobol source statement is doing. If you have the offset option in the parm you can just look in the offset map at location 1C6E to find the cobol statement, but this won't tell you what was the source for register 3. - Original Message - From: David DeBervec [EMAIL PROTECTED] To: IBM-MAIN@BAMA.UA.EDU; Harold Zbiegien [EMAIL PROTECTED] Sent: Thursday, April 13, 2006 4:14 PM Subject: Re: COBOL2 Issues Harold, Is this enough information? Condition Information for Active Routines Condition Information for OFDBINIT (DSA address 0003DBA0) CIB Address: 0003ECA0 Current Condition: CEE0198S The termination of a thread was signaled due to an unhandled condition. Original Condition: CEE3204S The system detected a protection exception (System Completion Code=0C4). Location: Program Unit: OFDBINIT Entry: OFDBINIT Statement: Offset: +1C6E Machine State: ILC. 0006Interruption Code. 0004 PSW. 078D 000920EC GPR0. 0005E528 GPR1. 0003E2F8 GPR2. 000B50B8 GPR3. 00E34040 GPR4. 000B0038 GPR5. F738 GPR6. GPR7. 00063200 GPR8. 000905C8 GPR9. 0005E360 GPR10 000B00B8 GPR11 00091D6A GPR12 00090574 GPR13 0003DBA0 GPR14 500920DA GPR15 Storage dump near condition, beginning at location: 000920D6 +00 000920D6 908005EF 58C090E8 58409128 40F04008 D2033004 8208D201 302A81E2 D201302C |...Y. j. 0 .K...b.K...aSK...| Thanks -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: COBOL2 Issues
Harold, I'm trying to find and compile/assemble the all the source that makes up the main load module. I will incorporate the suggestions that you and others have made. Thanks for bearing with me in this endeavor because its been a while since I've have to deal with this sort of this. Thanks -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
COBOL2 Issues
We ran into a program that was compiled and executed in a COBOL2 environment successfully. When we re-compiled and executed the program with Enterprise COBOL, it returned a S0C4 abend (rc4). The load module is a combination of COBOL and assembler code. Anyone know if this is a COBOL issue or LE? The first thing I would check is if you have the (typical) invalid LNKLST concatenation order of VS COBOL II (COB2LIB) ahead of LE (SCEERUN). Both libraries have the same names except for the bootstrap routine, so if COB2LIB is ahead of SCEERUN and you try to run an Enterprise COBOL program you will get the LE library starting up and then VS COBOL II trying to run! 0C4 would be a typical result. See the COBOL Migration Guide, it was never supported to have VS COBOL II ahead of SCEERUN for Enterprise COBOL programs. I recommend migrating to LE first (remove COB2LIB from LNKLST) and then you can start using the new compiler. Note that COB2LIB is not supported at all, even behind LE in LNKLST. If you want to create a real mess, start using STEPLIB for each program that gets recompiled from VS COBOL II to Enterprise COBOL!! Cheers, Tom Ross COBOL is the Language of the Future! -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: COBOL2 Issues
Sorry I haven't had a chance to respond you your assistance and replies, but there was more pressing business that required my attention. I'm presently rounding up all the pieces that I can find that make up the load module. I have secured the Enterprise COBOL manuals. I checked linklst and it contains no COBOL2 load libraries. I am including a portion of the ABEND-AID dump that was produced. I hope to have more information and questions in the near future. Thank you for your assistance, David Abend-Aid piece: The IBM message that corresponds to the condition is: 0CEE3204S The system detected a protection exception (System Completion Code=0C4). *** * Error Location * *** 0The next sequential instruction to be executed in program OFDBINIT was at displacement 1C74. 0The program was compiled on 22 MAR 2006 and is 6AC8 bytes long. 0It is part of load module DBINIT. 0The module was loaded from JOBLIB library TDM692.PRIVATE.CORE.R122005.LOADLIBB. 0The module was link edited on 24 MAR 2006 and is 00021668 bytes long. 0The last known I/O request or call in the program above was issued with a return address at displacement 1C62. *** * Call Trace Summary* 1 A B E N D - A I DPAGE 3 0*** ***Calling*** Return ***Called Load-Mod Program Type Value Program Load-Mod *SYSTEMLinks to BLB3050 BLB3050 BLB3050 BLB3050 CallsCEEBTOR CEEBINIT CEEBINIT CEEBTOR CallsBLB3050 BLB3050 BLB3050 BLB3050 DISP 083E CallsINITOFFL BLB3050 BLB3050 INITOFFL DISP 1916 CallsDBIO BLB3050 BLB3050 DBIO DISP 0BFE CallsIGZCFCC IGZCPAC IGZCPAC IGZCFCC DISP 0320 CallsIGZCD24 IGZCD24 IGZCD24 IGZCD24 DISP 006A CallsDBINIT DBINIT DBINITDBINIT DISP 00C4 CallsOFDBINIT DBINIT * DBINITOFDBINIT DISP 1C62 CallsDBFILEIO DBINIT DBINITDBFILEIO Calls CEEPLPKA CEEPLPKA DISP 048300B6 CallsLEAIDLEAID LEAID LEAIDDISP 0ADC CallsSNAPAID LEAID Program Causing Error * 0One or more modules loaded from the LINKLIST. Current LINKLIST library set is LNKLST00 --- Load-ModAmode Rmode Resides in DBINIT 24 24TDM692.PRIVATE.CORE.R122005.LOADLIBB BLB3050 24 24TEC414.TLR.COBOL.LOAD CEEBINIT 24 24CEE.SCEERUN IGZCPAC 31ANYCEE.SCEERUN IGZCD24 31 24CEE.SCEERUN CEEPLPKA 31ANYEPLPA LEAID31ANYSYS3.AA.R090500.SPAALOAD --- *** * Application Program Attributes * *** 1 A B E N D - A I DPAGE 4 0 Load-Mod Program Compile Date LengthLanguage BLB3050 BLB3050 06 APR 2006 8F9F COBOL Z/OS V3R3M1 BLB3050 INITOFFL 24 MAR 2006 39FC COBOL Z/OS V3R3M1 BLB3050 DBIO 24 MAR 2006 1074 COBOL Z/OS V3R3M1 DBINITDBINIT22 MAR 2006 1ADE HLASM DBINITOFDBINIT 22 MAR 2006 6AC8 COBOL Z/OS V3R3M1 DBINITDBFILEIO 22 MAR 2006 2001 HLASM *** * Supporting Environmental Data * *** Abend PSW - 078D 000920EC A(OFDBINIT) + 1C74 Prog PSW - 078D 000920EC A(OFDBINIT) + 1C74 Load Module - DBINITEntry Point Address - 0008E998 ILC - 06, INTC - 04 Load Point Address - 0008E998 Registers at time of error (Descriptions based on 24 bit addresses) 0REG HEX Decimal Description R0 0005E528 386,344 A(0003C000) + 00022528, PVT SP=001 ALLOC R1 0003E2F8 254,712 A(0003C000) + 22F8, PVT SP=001 ALLOC R2 000B50B8 741,560 A(000B) + 50B8, PVT SP=002 ALLOC R3 00E34040 14,893,120 A(ISPSUBX ) + 1040 R4 000B0038 720,952 A(000B) + 0038, PVT SP=002 ALLOC R5 F738 63,288 A(BLB3050 ) + 79A8 R6 0 R7 00063200 406,016
Re: COBOL2 Issues
what are the bytes around the PSW address, particularly before, It would be nice to see the instruction that caused the error and a few leading up to it. - Original Message - From: David DeBervec [EMAIL PROTECTED] Newsgroups: bit.listserv.ibm-main To: IBM-MAIN@BAMA.UA.EDU Sent: Wednesday, April 12, 2006 6:14 PM Subject: Re: COBOL2 Issues Sorry I haven't had a chance to respond you your assistance and replies, but there was more pressing business that required my attention. I'm presently rounding up all the pieces that I can find that make up the load module. I have secured the Enterprise COBOL manuals. I checked linklst and it contains no COBOL2 load libraries. I am including a portion of the ABEND-AID dump that was produced. I hope to have more information and questions in the near future. Thank you for your assistance, David Abend-Aid piece: The IBM message that corresponds to the condition is: 0CEE3204S The system detected a protection exception (System Completion Code=0C4). *** * Error Location * *** 0The next sequential instruction to be executed in program OFDBINIT was at displacement 1C74. 0The program was compiled on 22 MAR 2006 and is 6AC8 bytes long. 0It is part of load module DBINIT. 0The module was loaded from JOBLIB library TDM692.PRIVATE.CORE.R122005.LOADLIBB. 0The module was link edited on 24 MAR 2006 and is 00021668 bytes long. 0The last known I/O request or call in the program above was issued with a return address at displacement 1C62. *** * Call Trace Summary* 1 A B E N D - A I DPAGE 3 0*** ***Calling*** Return ***Called Load-Mod Program Type Value Program Load-Mod *SYSTEMLinks to BLB3050 BLB3050 BLB3050 BLB3050 CallsCEEBTOR CEEBINIT CEEBINIT CEEBTOR CallsBLB3050 BLB3050 BLB3050 BLB3050 DISP 083E CallsINITOFFL BLB3050 BLB3050 INITOFFL DISP 1916 CallsDBIO BLB3050 BLB3050 DBIO DISP 0BFE CallsIGZCFCC IGZCPAC IGZCPAC IGZCFCC DISP 0320 CallsIGZCD24 IGZCD24 IGZCD24 IGZCD24 DISP 006A CallsDBINIT DBINIT DBINITDBINIT DISP 00C4 CallsOFDBINIT DBINIT * DBINITOFDBINIT DISP 1C62 CallsDBFILEIO DBINIT DBINITDBFILEIO Calls CEEPLPKA CEEPLPKA DISP 048300B6 CallsLEAIDLEAID LEAID LEAIDDISP 0ADC CallsSNAPAID LEAID Program Causing Error * 0One or more modules loaded from the LINKLIST. Current LINKLIST library set is LNKLST00 --- Load-ModAmode Rmode Resides in DBINIT 24 24TDM692.PRIVATE.CORE.R122005.LOADLIBB BLB3050 24 24TEC414.TLR.COBOL.LOAD CEEBINIT 24 24CEE.SCEERUN IGZCPAC 31ANYCEE.SCEERUN IGZCD24 31 24CEE.SCEERUN CEEPLPKA 31ANYEPLPA LEAID31ANYSYS3.AA.R090500.SPAALOAD --- *** * Application Program Attributes * *** 1 A B E N D - A I DPAGE 4 0 Load-Mod Program Compile Date LengthLanguage BLB3050 BLB3050 06 APR 2006 8F9F COBOL Z/OS V3R3M1 BLB3050 INITOFFL 24 MAR 2006 39FC COBOL Z/OS V3R3M1 BLB3050 DBIO 24 MAR 2006 1074 COBOL Z/OS V3R3M1 DBINITDBINIT22 MAR 2006 1ADE HLASM DBINITOFDBINIT 22 MAR 2006 6AC8 COBOL Z/OS V3R3M1 DBINITDBFILEIO 22 MAR 2006 2001 HLASM *** * Supporting Environmental Data * *** Abend PSW - 078D 000920EC A(OFDBINIT) + 1C74 Prog PSW - 078D 000920EC A(OFDBINIT) + 1C74 Load Module - DBINITEntry Point Address - 0008E998 ILC - 06, INTC - 04 Load Point Address - 0008E998 Registers at time of error (Descriptions based on 24 bit addresses) 0REG HEX Decimal Description R0 0005E528 386,344 A(0003C000) + 00022528, PVT SP=001 ALLOC R1 0003E2F8 254,712 A(0003C000) + 22F8, PVT SP=001 ALLOC R2 000B50B8 741,560
Re: COBOL2 Issues
OMNSHO, neither. You should always approach these kinds of issues as an application problem. If you do, then you will be right the vast majority of the time and arrive at a resolution much quicker. Yes, I know it worked before. But it doesn't work now and you need to understand why. My first guess would be addressing issues in the assembler code. That might point to inappropriate compiler options. HTH and good luck. -Original Message- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of David DeBervec Sent: Thursday, April 06, 2006 5:21 PM To: IBM-MAIN@BAMA.UA.EDU Subject: COBOL2 Issues We ran into a program that was compiled and executed in a COBOL2 environment successfully. When we re-compiled and executed the program with Enterprise COBOL, it returned a S0C4 abend (rc4). The load module is a combination of COBOL and assembler code. Anyone know if this is a COBOL issue or LE? Thanks -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: COBOL2 Issues
Did anybody ever look to see what the AMODE and RMODE of the assembler subroutine(s) is? If they're old programs that haven't been upgraded to LE or are still AMODE or RMODE = 24, they may expect any parameters passed to them to be located in 24-bit memory. By default, COBOL/390 programs move working storage memory in 31-bit territory. That usually results in a S0C4 shortly after entry into the assembler subroutine. You might want to recompile the COBOL program with option DATA(24). Or perhaps you can upgrade the assembler code to be 31-bit and/or LE compliant. Regards, Ulrich Krueger Mainframe Systems Services National Semiconductor Corp. Santa Clara, CA 95051 Tel: (408) 721-8071 Email: [EMAIL PROTECTED] -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: COBOL2 Issues
Some other possibilities: * Especially with Assembler code involved, might be a AMODE24/RMODE24 issue of some kind, which could be related to Binder parameters if static calls used. * Could be a file problem - might be getting unexpected Status Code on OPEN, misinterpreting failure as success (or ignoring the status code), and then attempting I/O on a file that is not OPEN. Mike Bell wrote: COBOL by itself doesn't usually s0C4 - COBOL in combination with ASM is different. Things to check 1. dynamic vs static call 2. ASM module marked as RENT or REUS 3, ASM truly coded as RENT or REUS 4. structure of the parm list passed to ASM -- Mike -- Joel C. Ewing, Fort Smith, AR[EMAIL PROTECTED] -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: COBOL2 Issues
-Original Message- From: IBM Mainframe Discussion List On Behalf Of Charles Mills [ snip ] BTW, rc4 would not generally be synonymous with S0C4. But in context it might mean reason code, of which eight are listed for S0C4 in the MVS System Codes manual: http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2H740/2.1 73?SHELF=IEA2BK41DT=20040109094217CASE= The rc4 (Protection Exception) is probably the most frequently seen in conjunction with problem-state application code. -jc- -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
COBOL2 Issues
We ran into a program that was compiled and executed in a COBOL2 environment successfully. When we re-compiled and executed the program with Enterprise COBOL, it returned a S0C4 abend (rc4). The load module is a combination of COBOL and assembler code. Anyone know if this is a COBOL issue or LE? Thanks -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: COBOL2 Issues
Anyone know if this is a COBOL issue or LE? A dump, error messages, register diagnostics, compiler, or link edit (binder) error messages would help. A S0C4 is a memory exception. There are many reasons for one. I'm not trying to obfuscate, but saying it's a S0C4, is like saying it's hot! What a Californian can take is a lot more than a Canadian can! - -teD O-KAY! BLUE! JAYS! Let's PLAY! BALL! -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: COBOL2 Issues
This is not really an answer. I'm only a semi-COBOL-versions-expert, but I suspect there's not enough information here for anyone to give you a good answer. At the very least, you could post the mini-dump that prints out with the JES messages (PSW, registers, data at address in PSW). A wild guess is that this is a dynamic versus static linkage issue, but that's only a wild guess. My guess is that it is neither a COBOL nor an LE issue - it's a user program/options compatibility from COBOL II to Ent. COBOL issue. BTW, rc4 would not generally be synonymous with S0C4. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of David DeBervec Sent: Thursday, April 06, 2006 3:21 PM To: IBM-MAIN@BAMA.UA.EDU Subject: COBOL2 Issues We ran into a program that was compiled and executed in a COBOL2 environment successfully. When we re-compiled and executed the program with Enterprise COBOL, it returned a S0C4 abend (rc4). The load module is a combination of COBOL and assembler code. Anyone know if this is a COBOL issue or LE? -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: COBOL2 Issues
COBOL by itself doesn't usually s0C4 - COBOL in combination with ASM is different. Things to check 1. dynamic vs static call 2. ASM module marked as RENT or REUS 3, ASM truly coded as RENT or REUS 4. structure of the parm list passed to ASM -- Mike -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: COBOL2 Issues
COBOL by itself doesn't usually s0C4 - COBOL in combination with ASM is different. I don't remember the OP saying a thing regarding assembler. These off-hand comments really confuse the issue! - -teD O-KAY! BLUE! JAYS! Let's PLAY! BALL! -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Fw: COBOL2 Issues
As others have pointed out, you really haven't provided NEARLY enough information for us to help, but given what you have provided, I would suggest: 1) Check your original (VS COBOL II) vs new (Enterprise COBOL) compiler options. Particularly: - RES/NORES (Enterprise COBOL only supports RES behavior; VS COBOL II NORES was AMODE(24) - DATA(24) vs (31) - DYNAM vs NODYAM - RENT / NORENT - Was the VS COBOL II compiled with CMPR2? IF so, this isn't supported with Enterprise COBOL 2) You say mixed COBOL and Assembler - Which is the MAIN program? 3) Have you read all the information in both the Enterprise COBOL Programming Guide and Migration Guide on mixed Assembler and COBOL applications? If not, I suggest you do so. David DeBervec [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED]... We ran into a program that was compiled and executed in a COBOL2 environment successfully. When we re-compiled and executed the program with Enterprise COBOL, it returned a S0C4 abend (rc4). The load module is a combination of COBOL and assembler code. Anyone know if this is a COBOL issue or LE? -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html