Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

ONCODE=8094 from IRXLOAD

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CLIST & REXX
View previous topic :: :: View next topic  
Author Message
iqbal.mallick

New User


Joined: 13 Dec 2012
Posts: 14
Location: India

PostPosted: Mon Apr 07, 2014 3:43 pm    Post subject: ONCODE=8094 from IRXLOAD
Reply with quote

Hi,

I have written a simple IRXLOAD to load an rexx exec called CODCOVEX from my personel PDS 'WOK.CLAX.REXX1' into inter-storage location. The DD name that is being used from the JCL is EXECLOAD

Code:
//EXECLOAD      DSN=WOK.CLAX.REXX1,DISP=SHR


The code is below:

Code:
PGM1: PROC OPTIONS(MAIN);                                             
 /*********************************************************************/
 /* COMPILE_DATE                                                      */
 /*********************************************************************/
                                                                       
 /*********************************************************************/
 /* BUILTIN FUNCTIONS                                                 */
 /*********************************************************************/
                                                                       
 /*  LINE INSERTED BY CODE COVERAGE TOOL -  starts  */                 
                                                                       
 DCL SYSNULL     BUILTIN;                                               
 DCL PLIRETV     BUILTIN;                                               
 DCL IRXLOAD ENTRY EXTERNAL OPTIONS(ASSEMBLER RETCODE);                 
 DCL 1 EXECBLK,                                                         
       3 EXECBLK_ACRYN      CHAR(8) INIT('IRXEXECB'),                   
       3 EXECBLK_LENGTH     FIXED BINARY(31) init(48),                 
       3 EXECBLK_reserved   FIXED BINARY(31) init(0),                   
       3 EXECBLK_MEMBER     CHAR(8) init('CODCOVEX'),                   
       3 EXECBLK_DDNAME     CHAR(8) init('EXECLOAD'),                   
       3 EXECBLK_SUBCOM     CHAR(8) init('        '),                   
       3 EXECBLK_DSNPTR     PTR,                                       
       3 EXECBLK_DSNLEN     FIXED BINARY(31) init(25);                 

 DCL 1 INSTBLK,                                                         
       3 INSTBLK_ACRYN      CHAR(8) init('IRXINSTB'),                   
       3 INSTBLK_HDRLEN     FIXED BINARY(31) init(128),                 
       3 INSTBLK_ADDVEC     PTR,                                       
       3 INSTBLK_USERLEN    FIXED BINARY(31) init(72),                 
       3 INSTBLK_MEMBER     CHAR(8) init('CODCOVEX'),                   
       3 INSTBLK_DDNAME     CHAR(8) init('EXECLOAD'),                   
       3 INSTBLK_SUBCOM     CHAR(8) init('        '),                   
       3 INSTBLK_DSNLEN     FIXED BINARY(31) init(25),                 
       3 INSTBLK_DSNNAME    CHAR(54)                                   
                        init('WOK.CLAX.REXX1(CODCOVEX)');       
                                                                       
 DCL 1 EVALBLK,                                                         
       3 EVALBLK_EVPAD1     FIXED BINARY(31),                           
       3 EVALBLK_EVSIZE     FIXED BINARY(31),                           
       3 EVALBLK_EVLEN      FIXED BINARY(31),                           
       3 EVALBLK_EVPAD2     FIXED BINARY(31),                           
       3 EVALBLK_EVDATA     CHAR(256);

 DCL EXECBLK_PTR            PTR;                 
 DCL ARGTABLE_PTR           PTR;                 
 DCL INSTBLK_PTR            PTR;                 
 DCL RESERVED_PARM5         PTR;                 
 DCL EVALBLK_PTR            PTR;                 
 DCL RESERVED_WORKAREA_PTR  PTR;                 
 DCL RESERVED_USERFIELD_PTR PTR;                 
 DCL RESERVED_ENVBLOCK_PTR  PTR;                 
 DCL REXX_RETURN_CODE_PTR   PTR;                 
 DCL ARG1                   CHAR(160);           
 DCL RUNINF                 CHAR(50);           
 DCL FLAGS                  CHAR(4);             
 DCL REXX_RETURN_CODE       FIXED BINARY(31);   
 DCL RETURN_CODE            FIXED BINARY(31);   
                                                 
   EXECBLK_DSNPTR         = SYSNULL;             
   EXECBLK_PTR            = ADDR(EXECBLK);       
                                                 
   EVALBLK_PTR            = ADDR(EVALBLK);       
   EVALBLK_EVPAD1         = 0;                   
   EVALBLK_EVSIZE         = 34;                 
   EVALBLK_EVLEN          = 0;                   
   EVALBLK_EVPAD2         = 0;                   

   INSTBLK_PTR            = ADDR(INSTBLK);                     
   FLAGS                  = '40000000'x;                       
   REXX_RETURN_CODE_PTR   = ADDR(REXX_RETURN_CODE);           
   REXX_RETURN_CODE       = 0;                                 
   INSTBLK_PTR            = SYSNULL;                           
   RESERVED_PARM5         = SYSNULL;                           
   RESERVED_WORKAREA_PTR  = SYSNULL;                           
   RESERVED_USERFIELD_PTR = SYSNULL;                           
   RESERVED_ENVBLOCK_PTR  = SYSNULL;                           
                                                               
 /* Call the REXX exec */                                     
   FETCH IRXLOAD;                                               
                                                               
    CALL  IRXLOAD('STATUS  ',                                 
                 EXECBLK_PTR,                                 
                 INSTBLK_PTR,                                 
                 EVALBLK_PTR,                                 
                 RETURN_CODE);                       

 /* Handle the return code. */       
   PUT SKIP LIST(PLIRETV);           
                                     
 END PGM1;                             


On execution of the above code I am getting
Code:
IBM0534S ONCODE=8094  Protection exception                                   
          From entry point PGM1 at statement 1 at compile unit offset -2160938E  at entry offset -2160938E at address 084F6D3A.   


Code:
  Traceback:                                                                   
    DSA   Entry       E  Offset  Statement   Load Mod             Program Unit
    1     CEEHDSP     +0000422C              CEEPLPKA             CEEHDSP     
    2     PGM1        -2160938E  1           CK7000                           
    3     IBMPMINV    +00000734              IBMPEV11             IBMPMINV     
    4     CEEEV011    +00000224              IBMPEV11             CEEEV011     
    5     CEEBBEXT    +000001C4              CEEBINIT             CEEBBEXT     
                                                                               
    DSA   DSA Addr   E  Addr    PU Addr    PU Offset  Comp Date  Compile Attrib
    1     29B1E750   0946FDF8   0946FDF8   +0000422C  20131101   CEL           
    2     29B1E420   29B000C8   29B000C8   -2160938E  20140407   ENT PL/I EBCDI
    3     29B1E1A8   0B17E830   0B17E830   +00000734  20111006   LIBRARY       
    4     29B1E118   0B074118   0B074118   +00000224  20121022   LIBRARY       
    5     29B1E018   00CF29C0   00CF29C0   +000001C4  20110318   CEL           
                                                                               
  Condition Information for Active Routines                                   
    Condition Information for  (DSA address 29B1E420)                         
      CIB Address: 29B1F048                                                   
      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:  Entry: PGM1 Statement: 1 Offset: -2160938E
  Machine State:                                             
  ILC..... 0000    Interruption Code..... 0004                           
  PSW..... 078D1600 884F6D3A                                             
  GPR0..... 00000000_29B1E508  GPR1..... 00000000_29B1E4B8  GPR2..... 000
  GPR4..... 00000000_29B1E4C8  GPR5..... 00000000_29B1E640  GPR6..... 000
  GPR8..... 00000000_A9B1E4EC  GPR9..... 00000000_00000004  GPR10.... 000
  GPR12.... 00000000_00019BD8  GPR13.... 00000000_29B1E420  GPR14.... 000
  FPC...... F0000000                                                     
  FPR0..... 26100000  00000000            FPR1..... 00000000  00000000   
  FPR2..... 18000000  00000000            FPR3..... 00000000  00000000   
  FPR4..... 00000000  00000000            FPR5..... 00000000  00000000   
  FPR6..... 00000000  00000000            FPR7..... 00000000  00000000   
  FPR8..... 00000000  00000000            FPR9..... 00000000  00000000   
  FPR10.... 00000000  00000000            FPR11.... 00000000  00000000   
  FPR12.... 00000000  00000000            FPR13.... 00000000  00000000   
  FPR14.... 00000000  00000000            FPR15.... 00000000  00000000   
Onchar=    Character causing conversion error                           


I will be very glad if anyone can help me in resolving this issue
Back to top
View user's profile Send private message

enrico-sorichetti

Global Moderator


Joined: 14 Mar 2007
Posts: 10202
Location: italy

PostPosted: Mon Apr 07, 2014 4:51 pm    Post subject: Reply to: ONCODE=8094 from IRXLOAD
Reply with quote

did You check the compile and linkage editor return codes ???
Back to top
View user's profile Send private message
iqbal.mallick

New User


Joined: 13 Dec 2012
Posts: 14
Location: India

PostPosted: Mon Apr 07, 2014 5:00 pm    Post subject:
Reply with quote

Hi Enrico,

Thanks for your reply.

There seems to be no problem in compiler and linkage section. Both the step ended with RC=0

Compiler message
Code:
15655-W67  IBM(R) Enterprise PL/I for z/OS       PGM1: PROC OPTIONS(MAIN);     
- Compiler Messages                                                             
0 Message       Line.File Message Description                                   
0 IBM2609I W      82.0    Comment contains a semicolon on line 86.0.           
  IBM1043I I      95.0    SYSPRINT is contextually declared as FILE.           
- File Reference Table                                                         
0   File    Included From  Name                                                 
0      0                   G262832.WOK.CLAX.REXX1(NSTBLK)                       
- Component    Return Code    Messages (Total/Suppressed)    Time               
0 MACRO            0                0  /  0                   0 secs           
  Compiler         4                3  /  1                   6 secs           


Linkage(bind) section
Code:
1----------------------                     
 MESSAGE SUMMARY REPORT                     
 ----------------------                     
  TERMINAL MESSAGES      (SEVERITY = 16)     
  NONE                                       
                                             
  SEVERE MESSAGES        (SEVERITY = 12)     
  NONE                                       
                                             
  ERROR MESSAGES         (SEVERITY = 08)     
  NONE                                       
                                             
  WARNING MESSAGES       (SEVERITY = 04)     
  NONE                                       
                                             
  INFORMATIONAL MESSAGES (SEVERITY = 00)     
  2008  2278  2322                           
                                             
Back to top
View user's profile Send private message
Nic Clouston

Global Moderator


Joined: 10 May 2007
Posts: 1713
Location: UK

PostPosted: Mon Apr 07, 2014 8:48 pm    Post subject: Reply to: ONCODE=8094 from IRXLOAD
Reply with quote

Code:
      3 INSTBLK_DSNNAME    CHAR(54)                                   
                        init('WOK.CLAX.REXX1(CODCOVEX)');


looks ok as it is 54 bytes - max 44 bytes for dsname, 2 for () and max 8 for member name. But then, why specify the member separately a few lines further up? Maybe that is the requirement for that block but...
Back to top
View user's profile Send private message
iqbal.mallick

New User


Joined: 13 Dec 2012
Posts: 14
Location: India

PostPosted: Mon Apr 07, 2014 9:40 pm    Post subject:
Reply with quote

So as your suggesting should i specify only the dsnname without the member?
Back to top
View user's profile Send private message
Nic Clouston

Global Moderator


Joined: 10 May 2007
Posts: 1713
Location: UK

PostPosted: Tue Apr 08, 2014 3:03 am    Post subject: Reply to: ONCODE=8094 from IRXLOAD
Reply with quote

I have no idea! What does the documentation say? Or, more reasonably, what happened when you tried it?
Back to top
View user's profile Send private message
prino

Active Member


Joined: 07 Feb 2009
Posts: 982
Location: Oostende, Belgium

PostPosted: Tue Apr 08, 2014 3:19 am    Post subject:
Reply with quote

IBM has a wonderful product called "Debug Tool", and PL/I has a quite a few prefixes you can use to detect errors at run-time. Use "STRINGRANGE,STRINGSIZE,SUBSCRIPTRANGE".

And DO NOT suppress any compiler messages!
Back to top
View user's profile Send private message
Akatsukami

Global Moderator


Joined: 03 Oct 2009
Posts: 1738
Location: Bloomington, IL

PostPosted: Wed Apr 09, 2014 2:11 am    Post subject:
Reply with quote

When you set INSTBLK_PTR to SYSNULL, does this not result in passing an invalid address to IRXLOAD?
Back to top
View user's profile Send private message
Pedro

Senior Member


Joined: 01 Sep 2006
Posts: 2019
Location: Silicon Valley

PostPosted: Wed Apr 09, 2014 2:54 am    Post subject: Reply to: ONCODE=8094 from IRXLOAD
Reply with quote

Quote:
When you set INSTBLK_PTR to SYSNULL, does this not result in passing an invalid address to IRXLOAD?

I agree that that looks suspicious.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CLIST & REXX All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts IRXLOAD Sample Example iqbal.mallick CLIST & REXX 6 Tue Apr 01, 2014 6:49 pm
No new posts Undocumented ONCODE 8843? Akatsukami PL/I & Assembler 2 Tue Nov 12, 2013 1:02 am
No new posts PLI RUN MESSAGE:ONCODE=8097 Liang Gao ABENDS & Debugging 5 Wed Apr 18, 2012 2:05 pm
No new posts Pl/1 oncode 310 CICS fan PL/I & Assembler 12 Tue Oct 18, 2011 8:52 pm
No new posts ONCODE 310 FIXED DECIMAL OVERFLOW swathykrishnan PL/I & Assembler 11 Mon Sep 12, 2011 10:33 am


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us