IBM Support

IJ24700: LD INVOCATION FROM XL WHEN USING OFFLOADING CAN CAUSE RACE CONDITION IN PARALLEL MAKE

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • LD INVOCATION FROM XL WHEN USING OFFLOADING CAN CAUSE
    RACE CONDITION IN PARALLEL MAKE, USING V16.1
    
    ----------------------------------------------------------------
    
    =====COMPILE COMMAND:
    
    $ xlc -qsmp=omp -qoffload -o /ccs/home/brenaud/src/../a.out
    hello.c -Wl,-v 2>&1 |grep ls2 |grep unlink
    unlink: a.ls2
    
    
    ====TESTCASE:
    
    #include <stdio.h>
        int main() {
           // printf() displays the string inside quotation
           printf("Hello, World!");
           return 0;
        }
    

Local fix

  • N/A
    

Problem summary

  • USERS AFFECTED:
    Users of XL C/C++ for Linux, V16.1.x and XL Fortran for Linux,
    V16.1.x who use the -qoffload option with a parallel build
    system (such as make -j)
    
    PROBLEM DESCRIPTION:
    When compiling files with -qsmp=omp -qoffload, if the -o option
    is specified to provide the path and name of the output file,
    and if the name of the output file does not contain the '.'
    character, while the path does, the compiler uses a predefined
    name for one of the temporary files it creates in the linking
    process.  This is a problem because concurrent invocations of
    the compiler would use the same temporary file name and
    interfere with each other.
    
    For example:
    xlC x.cpp -c -qsmp=omp -qoffload -o ../obj_x
    xlC y.cpp -c -qsmp=omp -qoffload -o ../obj_y
    
    If the two compilation commands above are executed concurrently,
    both will use the same name for a compiler-generated temporary
    file.  As a result, one of the compilations will fail.
    

Problem conclusion

  • The problem has been fixed.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IJ24700

  • Reported component name

    XL C/C++ FOR AI

  • Reported component ID

    5725C7200

  • Reported release

    G10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-04-30

  • Closed date

    2020-04-30

  • Last modified date

    2020-04-30

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

    LI81347

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

Fix information

  • Fixed component name

    XL C/C++ FOR AI

  • Fixed component ID

    5725C7200

Applicable component levels

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSGH3R","label":"XL C\/C++ for AIX"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Line of Business":{"code":"LOB73","label":"Power TPS"}}]

Document Information

Modified date:
22 August 2024