Skip to content
Heist/ feed
High

RDMA/iwcm: Fix WARNING:at_kernel/workqueue.c:#check_flush_dependency

Type: advisorySource: Official CVE List1 source record

In the Linux kernel, the following vulnerability has been resolved: RDMA/iwcm: Fix WARNING:at_kernel/workqueue.c:#check_flush_dependency In the commit aee2424246f9 ("RDMA/iwcm: Fix a use-after-free related to destroying CM IDs"), the function flush_workqueue is invoked to flush the work queue iwcm_wq. But at that time, the work queue iwcm_wq was created via the function alloc_ordered_workqueue without the flag WQ_MEM_RECLAIM. Because the current process is trying to flush the whole iwcm_wq, if iwcm_wq doesn't have the flag WQ_MEM_RECLAIM, verify that the current process is not reclaiming memory or running on a workqueue which doesn't have the flag WQ_MEM_RECLAIM as that can break forward-progress guarantee leading to a deadlock. The call trace is as below: [ 125.350876][ T1430] Call Trace: [ 125.356281][ T1430] [ 125.361285][ T1430] ? __warn (kernel/panic.c:693) [ 125.367640][ T1430] ? check_flush_dependency (kernel/workqueue.c:3706 (discriminator 9)) [ 125.375689][ T1430] ? report_bug (lib/bug.c:180 lib/bug.c:219) [ 125.382505][ T1430] ? handle_bug (arch/x86/kernel/traps.c:239) [ 125.388987][ T1430] ? exc_invalid_op (arch/x86/kernel/traps.c:260 (discriminator 1)) [ 125.395831][ T1430] ? asm_exc_invalid_op (arch/x86/include/asm/idtentry.h:621) [ 125.403125][ T1430] ? check_flush_dependency (kernel/workqueue.c:3706 (discriminator 9)) [ 125.410984][ T1430] ? check_flush_dependency (kernel/workqueue.c:3706 (discriminator 9)) [ 125.418764][ T1430] __flush_workqueue (kernel/workqu

Announced Group revision 1
Original source ↗

CVE-2024-47696

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: cve:CVE-2024-47696

Linux

Source reference: /containers/cna/affected/0/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Linux

Source reference: /containers/cna/affected/1/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "d91d253c87fd1efece521ff2612078a35af673c6",
        "lessThan": "da2708a19f45b4a7278adf523837c8db21d1e2b5",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "7f25f296fc9bd0435be14e89bf657cd615a23574",
        "lessThan": "29b3bbd912b8db86df7a3c180b910ccb621f5635",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "94ee7ff99b87435ec63211f632918dc7f44dac79",
        "lessThan": "2efe8da2ddbf873385b4bc55366d09350b408df6",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "557d035fe88d78dd51664f4dc0e1896c04c97cf6",
        "lessThan": "da0392698c62397c19deb1b9e9bdf2fbb5a9420e",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "dc8074b8901caabb97c2d353abd6b4e7fa5a59a5",
        "lessThan": "a64f30db12bdc937c5108158d98c8eab1925c548",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "ff5bbbdee08287d75d72e65b72a2b76d9637892a",
        "lessThan": "8b7df76356d098f85f3bd2c7cf6fb43f531893d7",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "ee39384ee787e86e9db4efb843818ef0ea9cb8ae",
        "lessThan": "c8b18a75282cfd27822a8cc3c1f005c1ac8d1a58",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "aee2424246f9f1dadc33faa78990c1e2eb7826e4",
        "lessThan": "a09dc967b3c58899e259c0aea092f421d22a0b04",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "aee2424246f9f1dadc33faa78990c1e2eb7826e4",
        "lessThan": "86dfdd8288907f03c18b7fb462e0e232c4f98d89",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "4.19.320",
        "lessThan": "4.19.323",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "5.4.282",
        "lessThan": "5.4.285",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "5.10.224",
        "lessThan": "5.10.227",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "5.15.165",
        "lessThan": "5.15.168",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "6.1.103",
        "lessThan": "6.1.113",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "6.6.44",
        "lessThan": "6.6.54",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "6.10.3",
        "lessThan": "6.10.13",
        "versionType": "semver"
      }
    ],
    "programFiles": [
      "drivers/infiniband/core/iwcm.c"
    ],
    "defaultStatus": "unaffected"
  },
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "6.11"
      },
      {
        "status": "unaffected",
        "version": "0",
        "lessThan": "6.11",
        "versionType": "semver"
      },
      {
        "status": "unaffected",
        "version": "4.19.323",
        "versionType": "semver",
        "lessThanOrEqual": "4.19.*"
      },
      {
        "status": "unaffected",
        "version": "5.4.285",
        "versionType": "semver",
        "lessThanOrEqual": "5.4.*"
      },
      {
        "status": "unaffected",
        "version": "5.10.227",
        "versionType": "semver",
        "lessThanOrEqual": "5.10.*"
      },
      {
        "status": "unaffected",
        "version": "5.15.168",
        "versionType": "semver",
        "lessThanOrEqual": "5.15.*"
      },
      {
        "status": "unaffected",
        "version": "6.1.113",
        "versionType": "semver",
        "lessThanOrEqual": "6.1.*"
      },
      {
        "status": "unaffected",
        "version": "6.6.54",
        "versionType": "semver",
        "lessThanOrEqual": "6.6.*"
      },
      {
        "status": "unaffected",
        "version": "6.10.13",
        "versionType": "semver",
        "lessThanOrEqual": "6.10.*"
      },
      {
        "status": "unaffected",
        "version": "6.11.2",
        "versionType": "semver",
        "lessThanOrEqual": "6.11.*"
      },
      {
        "status": "unaffected",
        "version": "6.12",
        "versionType": "original_commit_for_fix",
        "lessThanOrEqual": "*"
      }
    ],
    "programFiles": [
      "drivers/infiniband/core/iwcm.c"
    ],
    "defaultStatus": "affected"
  }
]
Related CVEs
CVE-2024-47696

Source reference: /cveMetadata/cveId

Publisher severity

high

Source reference: /containers/cna/metrics

Event
#26726 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement