View previous topic :: View next topic
|
Author |
Message |
Aravind S
New User
Joined: 15 Sep 2009 Posts: 2 Location: Chennai
|
|
|
|
We are converting one of our application programs to Enterprise PL/1. As part of that we modified the programs which had AMODE=24 to AMODE=31 as enterprise PL/1 will support only AMODE 31. Initially it was working fine but after some days the transaction were failing.
From the fault analyzer we got the below error description;
EDC5052S The application is running with AMODE=24 while the run-time
library was installed above the line.
Below is the events information;
Code: |
Event Fail Module Program EP
# Type Point Name Name Name Event Location (*)
-- ------------ ----- -------- -------- -------- -------------------
1 Link DFSPCC20 DFSPCC20 DFSPCC20 P+3F8 E+3F2
2 Link DFSPCC20 DFSPCC20 DFSPCC20 P+91C E+916
3 Call ***** UCSSZZI DLITCBL n/a P+15E
4 Call CEEBINIT n/a n/a M+5912
5 Call CEEBINIT n/a n/a M+482C
6 Call CEEPLPKA n/a n/a M+BFF06
7 Call CEEPLPKA n/a CEEZINV E+C58
8 Abend U4038 CEEEV003 n/a _cinit E+2288
9 Call CEEPLPKA n/a CEEHDSP E+3444
10 Call IBMREV10 n/a CEEEV010 E+224
11 PIC 0001(Abend S0C1) CEEPLPKA n/a n/a M+A643C
12 Abend U4036 CEEPLPKA n/a n/a M+BABE0 |
We could confrim from fault analyzer that UCSSZZI was running with AMODE 24 and hence the culprit. This is a assembler program and acts as application interface module. This program is coded for AMODE=ANY and RMODE=24.
My question is;
1. Is that possible like this program UCSSZZI can some time run with AMODE 24 and some other time with AMODE 31?
2. How is the AMODE is decided for 'AMODE ANY' programs?
3. What should be the fix for this issue? Do I have to code AMODE=31 explicitly for this program? |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10888 Location: italy
|
|
|
|
Quote: |
1. Is that possible like this program UCSSZZI can some time run with AMODE 24 and some other time with AMODE 31?
2. How is the AMODE is decided for 'AMODE ANY' programs?
3. What should be the fix for this issue? Do I have to code AMODE=31 explicitly for this program? |
1) use AMODE(ANY)
2) at bind/link time an AMODE(any) csect will not influence the load module AMODE
2a) if the amode(any) csect is the only csect in the load module the load mule AMODE wiull be ANY
3) read and understand the program logic and fix the addressing mode dependencies
look at the linkage editor manuals for the details |
|
Back to top |
|
|
Aravind S
New User
Joined: 15 Sep 2009 Posts: 2 Location: Chennai
|
|
|
|
Hi Enrico,
Can you provide the link for some good linkage editor manuals?
I tried in the net and not able to find a relevant material. |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10888 Location: italy
|
|
Back to top |
|
|
|