LONG RUNNING C APPLICATION ABENDS WITH OUT-OF-STORAGE CONDITION


 
 APAR Identifier ...... VM63820      Last Changed ........ 06/05/24
 LONG RUNNING C APPLICATION ABENDS WITH OUT-OF-STORAGE CONDITION
 
 Symptom ...... AB ABEND             Status ........... CLOSED  PER
 Severity ................... 2      Date Closed ......... 06/01/06
 Component .......... 568411220      Duplicate of ........
 Reported Release ......... 440      Fixed Release ............ 999
 Component Name VM LE                Special Notice
 Current Target Date ..              Flags
 SCP ...................
 Platform ............
 
 Status Detail: SHIPMENT - Packaged solution is available for
                           shipment.
 
 PE PTF List:
 
 PTF List:
 Release 440   : UM31620 available 06/01/12 (4408 )
 
 Parent APAR:
 Child APAR list:
 
 ERROR DESCRIPTION:
 User machine is program checking or abending with message:
   DMSABE155T User abend 4093 called from 0800F74A
 when running ping commands in a large loop in a REXX EXEC.
 
 LOCAL FIX:
 
 PROBLEM SUMMARY:
 ****************************************************************
 * USERS AFFECTED: Affected are all users running a POSIX(ON)   *
 *                 C/C++ application in z/VM 4.4.0 or later.    *
 ****************************************************************
 * PROBLEM DESCRIPTION:                                         *
 ****************************************************************
 * RECOMMENDATION: APPLY PTF                                    *
 ****************************************************************
 User had a long running REXX EXEC which continually called
 PING and recorded the status of the target systems.  When the
 user migrated from z/VM 3.1.0 to z/VM 5.1.0, this long running
 application suddenly began failing with an out-of-storage
 condition.  The user would see error message DTCINB004S from
 the PING command followed by error message DMSABE155T from CMS.
 
 PROBLEM CONCLUSION:
 There were several areas in CMS multitasking, CMS sockets, and
 LE where storage was being obtained and not correctly returned
 to CMS storage management.  This eventually led to the
 out-of-storage condition and the failure of the application.
 The CMS changes are made via APAR VM63819.  The LE changes are
 being made here.
 
 The LE update consists of changes to CEEM@VOU to handle the way
 the POSIX message file is opened.  The parameter list for the
 OPEN macro used to reside above the 16Mb line. This forced CMS's
 OS Simulation code to copy the input parameter list from above
 the 16Mb line to below the 16Mb line.  This copied parameter
 list storage is returned only at command end (i.e. when the CMS
 Ready prompt is displayed).  Since the application essentially
 never ended, all that copied parameter list storage remained
 allocated and eventually depleted all available free storage
 below the 16Mb line.
 
 The change to CEEM@VOU allocates the OPEN parameter list in
 storage below the 16MB line so that no copy needs to be made,
 no extra below the 16Mb line storage needs to be allocated, and
 the application runs much cleaner.
 
 TEMPORARY FIX:
 
 COMMENTS:
 
 MODULES/MACROS:   CEEBINIT CEEBPICI CEEM@VOU CEEPIPI
 
 SRLS:      NONE
 
 RTN CODES:
 
 CIRCUMVENTION:
 
 MESSAGE TO SUBMITTER: