Skip to main content

TPF : Support : Maintenance TPF : Support : Maintenance

Skip to: Abstract | Comments | Solution | Migration | Download

APAR NUMBER:  PJ31485                         
PRODUCT:  TPF4
FUNCTIONAL AREA:  ISO-C SUPPORT
SHIPPED IN PUT:  21
 

ABSTRACT:
A DLAYC loop can occur in restart because of an incorrect interface
between segments CLIB and ULIB.
 
APAR CONTENTS:
FEATURE   TYPE                STATUS    NAME                              
Base      Assembler           Changed   source/rt/base/clib.asm
Base      Assembler           Changed   source/rt/base/ulib.asm
 
PREREQUISITE APARS:  To be applied in order listed.
Base      Assembler           Changed   source/rt/base/ulib.asm
 PJ28667(18)  
Base      Assembler           Changed   source/rt/base/clib.asm
 PJ25425(09)  PJ25807(10)  PJ26283(11)  PJ28667(18)  
 
COMMENTS:
CLIB does an ENTRC to ULIB and then tests for the condition code
returned by ULIB to either issue dlayc or create a new ECB. According
to
 BACKC documentation "The condition code and the contents of registers
R14 and R15 are unpredictable." However, the ULIB segment comments say:
 "* Condition code is returned here to CLIB, condition code is
preserved over backc." But the condition code changed and CLIB got into
a DLAYC
 loop. Since, ulib comment does not match BACKC documentation, changes
needs to be made to CLIB and ULIB.
 

SOLUTION:
Change ULIB to setup R2 with a return code of 0 or 2 as a return value
to CLIB. Change CLIB to load and test R2(LTR R2,R2) before branching to
either delay if return code is set to 0 or create a new ECB if return
code is set to a non zero value.
Any customer who currently has their own code in the ULIB user exit
will have to change their code to return the value in R2 instead of in
the condition code.
 
 

DEPENDENCIES
 
SEGMENTS TO BE ASSEMBLED OR COMPILED:
None.
 
SEGMENTS TO BE LINK EDITED:
None.
 
COREQS:
None.
 

MIGRATION CONSIDERATIONS:
ULIB will set R2  with a return code of 0 or 2 and return to CLIB. CLIB

will now check for the return value in R2 instead of condition code. 
Any customer who currently has their own code in the ULIB user exit 
will have to change their code to return the value in R2 instead of in 
the condition code.
 
UPDATED INFORMATION UNITS:
None.
 
See your IBM representative if you need additional information.
 

DOWNLOAD INSTRUCTIONS:
http://www.ibm.com/software/htp/tpf/pages/maint.htm

 
-- END APAR PJ31485
      



Download file(s): Login once to access server, leave window open, then click on link(s) below. Source