IBM Support

IV20617: LINUX: SMALL GETXATTR USER BUFFER CAUSES KERNEL BUFFER OVERFLOW

Readmes are available

Readme and Release notes for release 3.4.0.14 GPFS-3.4.0.14-power-AIX
Readme and Release notes for release 3.4.0.14 GPFS-3.4.0.14-power-Linux
Readme and Release notes for release 3.4.0.14 GPFS-3.4.0.14-IA64-Linux
Readme and Release notes for release 3.4.0.14 GPFS-3.4.0.14-x86_64-Linux
Readme and Release notes for release 3.4.0.14 GPFS-3.4.0.14-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.14 GPFS-3.4.0.14-x86-Linux
Readme and Release notes for release 3.4.0.15 GPFS-3.4.0.15-power-AIX
Readme and Release notes for release 3.4.0.15 GPFS-3.4.0.15-power-Linux
Readme and Release notes for release 3.4.0.15 GPFS-3.4.0.15-IA64-Linux
Readme and Release notes for release 3.4.0.15 GPFS-3.4.0.15-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.15 GPFS-3.4.0.15-x86-Linux
Readme and Release notes for release 3.4.0.16 GPFS-3.4.0.16-power-AIX
Readme and Release notes for release 3.4.0.16 GPFS-3.4.0.16-power-Linux
Readme and Release notes for release 3.4.0.16 GPFS-3.4.0.16-IA64-Linux
Readme and Release notes for release 3.4.0.16 GPFS-3.4.0.16-x86-Linux
Readme and Release notes for release 3.4.0.16 GPFS-3.4.0.16-x86_64-Linux
Readme and Release notes for release 3.4.0.16 GPFS-3.4.0.16-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.15 GPFS-3.4.0.15-x86_64-Linux
Readme and Release notes for release 3.4.0.17 GPFS-3.4.0.17-power-AIX
Readme and Release notes for release 3.4.0.17 GPFS-3.4.0.17-IA64-Linux
Readme and Release notes for release 3.4.0.17 GPFS-3.4.0.17-power-Linux
Readme and Release notes for release 3.4.0.17 GPFS-3.4.0.17-x86-Linux
Readme and Release notes for release 3.4.0.17 GPFS-3.4.0.17-x86_64-Linux
Readme and Release notes for release 3.4.0.17 GPFS-3.4.0.17-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.18 GPFS-3.4.0.18-power-AIX
Readme and Release notes for release 3.4.0.18 GPFS-3.4.0.18-power-Linux
Readme and Release notes for release 3.4.0.18 GPFS-3.4.0.18-IA64-Linux
Readme and Release notes for release 3.4.0.18 GPFS-3.4.0.18-x86_64-Linux
Readme and Release notes for release 3.4.0.19 GPFS-3.4.0.19-power-Linux
Readme and Release notes for release 3.4.0.19 GPFS-3.4.0.19-x86_64-Linux
Readme and Release notes for release 3.4.0.19 GPFS-3.4.0.19-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.19 GPFS-3.4.0.19-x86-Linux
Readme and Release notes for release 3.4.0.19 GPFS-3.4.0.19-power-AIX
Readme and Release notes for release 3.4.0.19 GPFS-3.4.0.19-IA64-Linux
Readme and Release notes for release 3.4.0.20 GPFS-3.4.0.20-power-AIX
Readme and Release notes for release 3.4.0.20 GPFS-3.4.0.20-power-Linux
Readme and Release notes for release 3.4.0.20 GPFS-3.4.0.20-IA64-Linux
Readme and Release notes for release 3.4.0.20 GPFS-3.4.0.20-x86-Linux
Readme and Release notes for release 3.4.0.20 GPFS-3.4.0.20-x86_64-Linux
Readme and Release notes for release 3.4.0.20 GPFS-3.4.0.20-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.21 GPFS-3.4.0.21-power-AIX
Readme and Release notes for release 3.4.0.21 GPFS-3.4.0.21-power-Linux
Readme and Release notes for release 3.4.0.21 GPFS-3.4.0.21-IA64-Linux
Readme and Release notes for release 3.4.0.21 GPFS-3.4.0.21-x86-Linux
Readme and Release notes for release 3.4.0.21 GPFS-3.4.0.21-x86_64-Linux
Readme and Release notes for release 3.4.0.21 GPFS-3.4.0.21-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.22 GPFS-3.4.0.22-power-AIX
Readme and Release notes for release 3.4.0.22 GPFS-3.4.0.22-power-Linux
Readme and Release notes for release 3.4.0.22 GPFS-3.4.0.22-IA64-Linux
Readme and Release notes for release 3.4.0.22 GPFS-3.4.0.22-x86-Linux
Readme and Release notes for release 3.4.0.22 GPFS-3.4.0.22-x86_64-Linux
Readme and Release notes for release 3.4.0.22 GPFS-3.4.0.22-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.23 GPFS-3.4.0.23-power-AIX
Readme and Release notes for release 3.4.0.23 GPFS-3.4.0.23-power-Linux
Readme and Release notes for release 3.4.0.23 GPFS-3.4.0.23-IA64-Linux
Readme and Release notes for release 3.4.0.23 GPFS-3.4.0.23-x86-Linux
Readme and Release notes for release 3.4.0.23 GPFS-3.4.0.23-x86_64-Linux
Readme and Release notes for release 3.4.0.24 GPFS-3.4.0.24-power-Linux
Readme and Release notes for release 3.4.0.24 GPFS-3.4.0.24-IA64-Linux
Readme and Release notes for release 3.4.0.24 GPFS-3.4.0.24-x86-Linux
Readme and Release notes for release 3.4.0.24 GPFS-3.4.0.24-x86_64-Linux
Readme and Release notes for release 3.4.0.24 GPFS-3.4.0.24-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.25 GPFS-3.4.0.25-power-AIX
Readme and Release notes for release 3.4.0.25 GPFS-3.4.0.25-power-Linux
Readme and Release notes for release 3.4.0.25 GPFS-3.4.0.25-IA64-Linux
Readme and Release notes for release 3.4.0.25 GPFS-3.4.0.25-x86-Linux
Readme and Release notes for release 3.4.0.25 GPFS-3.4.0.25-x86_64-Linux
Readme and Release notes for release 3.4.0.25 GPFS-3.4.0.25-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.26 GPFS-3.4.0.26-power-AIX
Readme and Release notes for release 3.4.0.26 GPFS-3.4.0.26-power-Linux
Readme and Release notes for release 3.4.0.26 GPFS-3.4.0.26-IA64-Linux
Readme and Release notes for release 3.4.0.26 GPFS-3.4.0.26-x86-Linux
Readme and Release notes for release 3.4.0.26 GPFS-3.4.0.26-x86_64-Linux
Readme and Release notes for release 3.4.0.26 GPFS-3.4.0.26-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.27 GPFS-3.4.0.27-power-AIX
Readme and Release notes for release 3.4.0.27 GPFS-3.4.0.27-power-Linux
Readme and Release notes for release 3.4.0.27 GPFS-3.4.0.27-IA64-Linux
Readme and Release notes for release 3.4.0.27 GPFS-3.4.0.27-x86_64-Linux
Readme and Release notes for release 3.4.0.27 GPFS-3.4.0.27-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.28 GPFS-3.4.0.28-IA64-Linux
Readme and Release notes for release 3.4.0.28 GPFS-3.4.0.28-x86-Linux
Readme and Release notes for release 3.4.0.28 GPFS-3.4.0.28-x86_64-Linux
Readme and Release notes for release 3.4.0.28 GPFS-3.4.0.28-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.28 GPFS-3.4.0.28-power-Linux
Readme and Release notes for release 3.4.0.28 GPFS-3.4.0.28-power-AIX
Readme and Release notes for release 3.4.0.29 GPFS-3.4.0.29-power-AIX
Readme and Release notes for release 3.4.0.29 GPFS-3.4.0.29-power-Linux
Readme and Release notes for release 3.4.0.29 GPFS-3.4.0.29-IA64-Linux
Readme and Release notes for release 3.4.0.29 GPFS-3.4.0.29-x86-Linux
Readme and Release notes for release 3.4.0.29 GPFS-3.4.0.29-x86_64-Linux
Readme and Release notes for release 3.4.0.29 GPFS-3.4.0.29-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.30 GPFS-3.4.0.30-power-AIX
Readme and Release notes for release 3.4.0.30 GPFS-3.4.0.30-power-Linux
Readme and Release notes for release 3.4.0.30 GPFS-3.4.0.30-IA64-Linux
Readme and Release notes for release 3.4.0.30 GPFS-3.4.0.30-x86-Linux
Readme and Release notes for release 3.4.0.30 GPFS-3.4.0.30-x86_64-Linux
Readme and Release notes for release 3.4.0.30 GPFS-3.4.0.30-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.31 GPFS-3.4.0.31-power-AIX
Readme and Release notes for release 3.4.0.31 GPFS-3.4.0.31-power-Linux
Readme and Release notes for release 3.4.0.31 GPFS-3.4.0.31-IA64-Linux
Readme and Release notes for release 3.4.0.31 GPFS-3.4.0.31-x86-Linux
Readme and Release notes for release 3.4.0.31 GPFS-3.4.0.31-x86_64-Linux
Readme and Release notes for release 3.4.0.31 GPFS-3.4.0.31-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.32 GPFS-3.4.0.32-power-Linux
Readme and Release notes for release 3.4.0.32 GPFS-3.4.0.32-IA64-Linux
Readme and Release notes for release 3.4.0.32 GPFS-3.4.0.32-x86_64-Windows-2008
Readme and Release notes for release 3.4.0.33 GPFS-3.4.0.33-power-AIX
Readme and Release notes for release 3.4.0.33 GPFS-3.4.0.33-power-Linux
Readme and Release notes for release 3.4.0.33 GPFS-3.4.0.33-IA64-Linux
Readme and Release notes for release 3.4.0.33 GPFS-3.4.0.33-x86_64-Linux
Readme and Release notes for release 3.4.0.33 GPFS-3.4.0.33-x86_64-Windows-2008

 

APAR status

  • Closed as program error.

Error description

  • On Linux, if a user space program calls getxattr() to
    fetch
    ACL entries for a file on a GPFS file system, and the
    user
    space buffer specified on the getxattr() call is fewer
    than
    8-bytes in size, GPFS code in the kernel may overflow a
    kernel buffer.  A kernel buffer overflow can cause
    unpredictable results, including but not limited to a
    node
    crash.  The user space program might not see any
    immediate
    symptom that something has gone wrong.
    

Local fix

Problem summary

  • The ACL is copied one entry at at time (checking for
    sufficient space remaining in the buffer as each is added).
    The problem is that there is no similar check for the ACL
    header (struct linux_posix_acl); as a result, when
    user-supplied buffer size is greater than zero, but less than
    the size of the ACL header, the local buffer size variable
    (which is unsigned) goes very large and allows the code that
    copies the ACL entries to overflow the buffer Linux allocates
    in the kernel.
    

Problem conclusion

  • Verification that the size is sufficient for the header is
    being added.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV20617

  • Reported component name

    GPFS/AIX5L V3

  • Reported component ID

    5765G66AP

  • Reported release

    340

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Submitted date

    2012-05-03

  • Closed date

    2012-05-03

  • Last modified date

    2015-05-14

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

    IV20294

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

Fix information

  • Fixed component name

    GPFS/AIX5L V3

  • Fixed component ID

    5765G66AP

Applicable component levels

  • R340 PSY U869511

       15/05/14 I 1000

PTF to Fileset Mapping

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SUPPORT","label":"IBM Worldwide Support"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"340","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSFKCN","label":"General Parallel File System"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"340","Edition":"","Line of Business":{"code":"LOB26","label":"Storage"}},{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSFKCN","label":"General Parallel File System"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"340","Edition":"","Line of Business":{"code":"LOB26","label":"Storage"}},{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSFKCN","label":"General Parallel File System"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"340","Edition":"","Line of Business":{"code":"LOB26","label":"Storage"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG11N","label":"APARs - AIX 5.1 environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"340","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG11P","label":"APARs - AIX 5.3 environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"340","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG11M","label":"APARs - AIX 5.2 environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"340","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SG11Q","label":"AIX 6.1 HIPERS, APARs and Fixes"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"340","Edition":"","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}},{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SG11R","label":"APARs - AIX 7.1 environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"340","Edition":"","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}}]

Document Information

Modified date:
22 August 2022