IBM Support

OA49723: WITH RETURN CODE 8, THE IQPINFO MACRO NO LONGER RETURNS A REQUIRED LENGTH AFTER APPLYING PTF UA90971 16/03/09 PTF PECHANGE

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • PTF UA90971 for APAR OA44791 introduced changes in the code of
    module IQPPRINF (IQPINFO macro processor). One of the changes
    resulted in returning RC08 without updating a value in the
    PERFDATALEN field. This update for RC8 is expected, according to
    the documented return codes for the IQPINFO macro, but no longer
    happens after applying the PTF.
    
     EXTERNAL SYMPTOMS:
    
      A caller of the IQPINFO macro receives return code 8 but the
     PERFDATALEN field is not updated with the required minimum size
     of a data area as expected.
     PTF UA90971 has been installed.
     ANALYSIS:
    
     The code at the PTF level checks a buffer length inside the
     ScanPCT program loop but before the loop is able to turn the
     F_AllocFcnFound bit on. This bit remains turned off when
     ScanPCT is exited after discovering an insufficient buffer
     length. Since the bit is off, the module bypasses final
     processing that should have saved a calculated buffer length in
     the macro parameters. So, RC08 is returned to the caller
     without the expected update in the PERFDATALEN parameter
     KNOWN IMPACT:
    
     A user of the IQPINFO macro can not rely on the contents of the
     PERFDATALEN parameter after getting return code 08 ( RC08 )
     VERIFICATION STEPS:
    
     PTF UA90971 for APAR OA44791 is installed on the system
    

Local fix

  • BYPASS/CIRCUMVENTION:
    
     It is possible to bypass this problem with the IQPINFO service,
     by setting the PerfDataLen to a value that doubles the Perf_Len
     value.  This was generated within the IQPYPERF macro.  This
     will help avoid the RC8.
    PE Information:
     User's Affected:
       PTF UA90971 for APAR OA44791 with HBB7790, using the IQPINFO
      Service for zEDC (Compression) and RoCE (Communications)
     devices.
    User Impact:
      APAR OA44791 fixed the problem it reported but introduced
     a new problem.
       Users of the IQPINFO Service will still receive a RC8
      when the callers buffer length is too small, but the
      returned required length (PerfDataLen field) will not be
      filled in correctly.  This will result in further attempts
      to also fail processing, due to the RC8 (Buffer length too
      small).
     Clearly better off with the original APAR on the system:
        The original APAR's enhancements and fixes are needed with
      the z13 processor, but this did introduce a problem where
      the required buffer length was not properly updated
      within the IQPINFO service. This was a small problem in
      comparison with the functions provided by the original
      APAR.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users at HBB7790 and above using IQPINFO     *
    *                 service for zEDC or RoCE devices,            *
    *                 with PTF UA90971 (OA44791) installed.        *
    ****************************************************************
    * PROBLEM DESCRIPTION: Users of the IQPINFO Service will       *
    *                      still receive a RC8 when the caller's   *
    *                      buffer length is too small, but the     *
    *                      returned required length (PerfDataLen   *
    *                      field) will not be filled in            *
    *                      correctly. This will result in          *
    *                      further attempts to also fail           *
    *                      processing, due to the RC8 (Buffer      *
    *                      length too small).                      *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    When the IQPINFO service issued a return code of 8, the
    required buffer length returned was 0. Previously, the
    service provided the correct buffer length required
    to successfully process the request.
    

Problem conclusion

  • The IQPINFO service will provide the required buffer size
    when the user provided buffer size is too small.
    
    *************************************************************
    * FUNCTION AFFECTED: BCP                          (OA49723) *
    *                      PCIE Services                        *
    *************************************************************
    * DESCRIPTION      : Documentation updates                  *
    *************************************************************
    * TIMING           : As Needed                              *
    *************************************************************
    Title: MVS Programming: Authorized Assembler Services
                            Reference (EDT-IXG) {SA23-1373-xx}
    
     IQPINFO  Obtain PCIe information
    
      Description
       The IQPINFO macro provides PCIe-related information,
        including any performance statistics.
      Environment
    
      The requirements for the caller are:
        Environmental factor     Requirement
        Minimum authorization:   Supervisor state and PSW key 0
        Dispatchable unit mode:  Task or SRB mode
        Dispatchable unit mode:  Task or SRB mode
        Cross memory mode:       Any PASN, any HASN, any SASN
        AMODE:                   31- or 64-bit
        ASC mode:                Primary
        Interrupt status:        Enabled for I/O and external
                                 interrupts
        Locks:                   The caller may hold locks, but
                                 is not required to hold any.
        Control parameters:      Must be in the primary address
                                 space.
        Programming requirements
          None.
        Restrictions
    
      |   Note: With the z13 enhancement of IQPINFO service,
      |         it is possible that the required buffer length
      |         can change depending on the device, eg. RoCe or
      |         zEDC, since different devices return their
      |         specialized data. With this update, users of the
      |         IQPINFO service will have to be prepared that
      |         the required length returned might not be valid
      |         for all devices.
         ....
     KEYWORDS: ZEDC/K
    

Temporary fix

  • *********
    * HIPER *
    *********
    

Comments

APAR Information

  • APAR number

    OA49723

  • Reported component name

    PCIE SERVICES

  • Reported component ID

    5752SCIQP

  • Reported release

    790

  • Status

    CLOSED PER

  • PE

    YesPE

  • HIPER

    YesHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-01-20

  • Closed date

    2016-03-18

  • Last modified date

    2016-04-05

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    UA81082 UA81083

Modules/Macros

  • FPGPPERF IQPPRINF
    

Publications Referenced
SA23137300    

Fix information

  • Fixed component name

    PCIE SERVICES

  • Fixed component ID

    5752SCIQP

Applicable component levels

  • R7A0 PSY UA81082

       UP16/03/30 P F603 «

  • R790 PSY UA81083

       UP16/03/30 P F603 «

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":null,"label":null},"Product":{"code":"SG19O","label":"APARs - MVS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"790","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"790","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
05 April 2016