Information regarding hyper fix SO15901 for Common Services r15.0
search cancel

Information regarding hyper fix SO15901 for Common Services r15.0

book

Article ID: 207079

calendar_today

Updated On:

Products

COMMON SERVICES FOR Z/OS

Issue/Introduction

Questions have arisen requesting details on SO15901, written for Common Services for z/OS r15.0 to prevent a potential CAIRIM overlay.  Although categorized as a hyper, customers are not sure if it applies to their environment and if they should apply it.

Fix defined as a HYPER due to the potential to overlay storage beyond the originally allocated storage. Storage is allocated once during the initial execution of CAS9 (CAIRIM).

• Impact of the overlay is the unknown 
• Times when no adverse symptoms witnessed 
• Other times when the system was adversely impacted
• As with all overlays, results are unpredictable and difficult to identify

Environment

Common Services for z/OS running on a z/OS image with more than 64 (x'40') processors  

Product:
Common Services for z/OS r15.0
Component :
CAIRIM

Cause

Client was configuring on and off large numbers of CPU's (much larger than 64). The problem arises from the counts in the following fields returned from the CSCRI function.

1      SI22V2TotalLCPUCount   Current total CPUs
2      SI22V2ConfiguredLCPUCount Configured CPUs
3      SI22V2StandbyLCPUCount Standby CPUs
4      SI22V2ReservedLCPUCount Reserved CPUs
5      SI22V2DedicatedLCPUCount Shared CPUs
6      SI22V2SharedLCPUCount  Shared CPUs  

  • CAIRIM only structured to handle a value of 64 in any one of those fields
  • Storage is an array with a section for each of the above
  • Value above 64 in any one of sections 1 - 4 would overlay CAIRIM's storage  
    • Of no real consequence given the purpose of this storage
  • Value above 64 in one of sections 5 or 6 could potentially overlay the adjacent storage causing unpredictable results
    • If customer has never experienced this problem, without major changes to hardware configuration (ahead of time or dynamically), it is unlikely to occur.   
    • Note that these are counts, not necessarily CPU numbers.
    • If  large numbers of CPU's, greater than 64, are configured, there is a potential for a problem
  • How the CPU information is used by CAIRIM not easily explained.
    • Code design has existed for many years (>16 yrs)
    • Problem just recently reported by a single customer
    • CPU information not really used for any functionality within CCS or any CA MF product

     

 

 

Resolution

Apply SO15901

Fix written in 2 parts

  • Part 1 - Expand GETMAIN performed on initial startup of CAIRIM
    • Necessitates the IPL 
  • Part 2- Bypass the code related to the CPU data collection
    • No IPL necessary
    • Bypass can be accomplished by re-running CAIRIM using
      (PARM(REFRESH(LMP)) on the CAS9INIT
      initialization statement in CAIRIMPARM
    • Prevents the overlay from occurring until an IPL is performed with the fix applied  

 

Additional Information

Please refer to the Common Services for z/OS r15.0 for details on the CAIRIM(REFRESH(LMP)) Initialization Statement