IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

S0C4 reason code 10, gets when more code is added


IBM Mainframe Forums -> PL/I & Assembler
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
bhushan.shete

New User


Joined: 14 Nov 2006
Posts: 17

PostPosted: Mon Jul 07, 2014 4:36 pm
Reply with quote

I have huge Enterprise PLI program say ProgQ (load size 00536C70) running in production, when I add 2 PUT SKIP LIST statements(or any 2 executable statements), code just works fine. If add any more executable statements, it fails with S0C4 Reason code 10. This is MPP program running in IMS region (current region size is 8500K, checked by increasing IMS Region to 64M as well) , and is dynamically loaded. Prog A is calling module Module1 and it is loading ProgQ dynamically. I had put all kind of diagnostic statements to get point of failure, I am able to see all the statements until control is returned back from program ProgA(calling program for Prog Q). I suspect load module size is causing issue, but not sure how to prove ? or any solution to this. No PLI/CEE dump is produced, i.e. its not failing in PLI program. I suspect its failing when control is returned back to IMS.

When I switch to MVS PLI any addition of code works just fine.

Any guidance is appreciable. Please let me know if you need more information around the problem.
Back to top
View user's profile Send private message
Rohit Umarjikar

Global Moderator


Joined: 21 Sep 2010
Posts: 3049
Location: NYC,USA

PostPosted: Tue Jul 29, 2014 8:00 pm
Reply with quote

Please refer to below links to get helped with the right direction, I am not sure how much suitable they are but worth cross verifying at your shop as it may solves the issue.
ibmmainframes.com/viewtopic.php?t=43431&highlight=s0c4
ibmmainframes.com/about36398.html
Back to top
View user's profile Send private message
Pat McEvoy

New User


Joined: 14 Apr 2011
Posts: 2
Location: Ireland

PostPosted: Mon Aug 11, 2014 3:17 am
Reply with quote

I don't know the answer but I would check the AMODE/RMODE values for the modules. For example if an AMODE(31) module tries to use one that has been built AMODE(24), it will be able to call it and it will execute, but control may get back to the calling module because the AMODE(24) module's register may not be large enough to store the return address.
Just a thought ...
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> PL/I & Assembler

 


Similar Topics
Topic Forum Replies
No new posts run rexx code with jcl CLIST & REXX 15
No new posts Compile rexx code with jcl CLIST & REXX 6
No new posts Reorg abended with REASON=X'00E40347' DB2 2
No new posts REASON 00D70014 in load utility DB2 6
No new posts REXX code to expand copybook in a cob... CLIST & REXX 2
Search our Forums:

Back to Top