« Volver al listado

CVE-2026-92514

Estado: RecibidaSin puntuar—

In the Linux kernel, the following vulnerability has been resolved:

RDMA/erdma: Fix CEQ tasklet use-after-free on removal

Each CEQ interrupt handler only schedules eqc->tasklet. The tasklet calls erdma_ceq_completion_handler(), which reads the DMA-coherent EQ ring through get_next_valid_eqe() and updates eq->dbrec through notify_eq().

erdma_ceqs_uninit() frees each CEQ IRQ and then destroys its EQ. free_irq() prevents another hard IRQ and waits for an in-flight handler, but it does not drain a tasklet that the handler already scheduled. The tasklet can therefore access eq->qbuf or eq->dbrec after erdma_eq_destroy() frees them.

Leer descripción completaMostrar menos

Clearing ceq_cb->ready does not synchronize with a tasklet that already passed the check at the start of erdma_ceq_completion_handler().

Kill the tasklet after free_irq(), when no handler can schedule it again, and before erdma_ceq_uninit_one() releases the EQ buffers.

CVSS

NVD no ha asignado puntuación CVSS a esta CVE (habitual desde el cambio de política de abril de 2026).

Probabilidad de explotación (EPSS)

EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).

Tecnologías afectadas (1)

⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.

Referencias

JSON original (NVD)

Mostrar
{
  "id": "CVE-2026-92514",
  "cveTags": [],
  "metrics": {},
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "f2a0a630b953451a59a2612ad8c29246638f0a38",
              "lessThan": "0e8b78dabb1f156db05ffe74c6eae861167c7c21",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "f2a0a630b953451a59a2612ad8c29246638f0a38",
              "lessThan": "6e129c1310abfa786a510cc63e69c5ef12349048",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "f2a0a630b953451a59a2612ad8c29246638f0a38",
              "lessThan": "f738c0a372d36a10dfae6dc357717c13b2aa72f4",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "f2a0a630b953451a59a2612ad8c29246638f0a38",
              "lessThan": "a60c36d8d17f1b86705523d5eb6d290df28831e5",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "f2a0a630b953451a59a2612ad8c29246638f0a38",
              "lessThan": "61a25b8d333e1eb2a189881d516f8d5194e26840",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "f2a0a630b953451a59a2612ad8c29246638f0a38",
              "lessThan": "0ca79979384f031d710c4b3bae065dcb5d95aca3",
              "versionType": "git"
            }
          ],
          "programFiles": [
            "drivers/infiniband/hw/erdma/erdma_eq.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.0"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "6.0",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "6.1.188",
              "versionType": "semver",
              "lessThanOrEqual": "6.1.*"
            },
            {
              "status": "unaffected",
              "version": "6.6.157",
              "versionType": "semver",
              "lessThanOrEqual": "6.6.*"
            },
            {
              "status": "unaffected",
              "version": "6.12.110",
              "versionType": "semver",
              "lessThanOrEqual": "6.12.*"
            },
            {
              "status": "unaffected",
              "version": "6.18.52",
              "versionType": "semver",
              "lessThanOrEqual": "6.18.*"
            },
            {
              "status": "unaffected",
              "version": "7.2.6",
              "versionType": "semver",
              "lessThanOrEqual": "7.2.*"
            },
            {
              "status": "unaffected",
              "version": "7.3-rc1",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ],
          "programFiles": [
            "drivers/infiniband/hw/erdma/erdma_eq.c"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-09-17T17:17:54.243",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/0ca79979384f031d710c4b3bae065dcb5d95aca3",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/0e8b78dabb1f156db05ffe74c6eae861167c7c21",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/61a25b8d333e1eb2a189881d516f8d5194e26840",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/6e129c1310abfa786a510cc63e69c5ef12349048",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/a60c36d8d17f1b86705523d5eb6d290df28831e5",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/f738c0a372d36a10dfae6dc357717c13b2aa72f4",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/erdma: Fix CEQ tasklet use-after-free on removal\n\nEach CEQ interrupt handler only schedules eqc->tasklet. The tasklet calls\nerdma_ceq_completion_handler(), which reads the DMA-coherent EQ ring\nthrough get_next_valid_eqe() and updates eq->dbrec through notify_eq().\n\nerdma_ceqs_uninit() frees each CEQ IRQ and then destroys its EQ.\nfree_irq() prevents another hard IRQ and waits for an in-flight handler,\nbut it does not drain a tasklet that the handler already scheduled. The\ntasklet can therefore access eq->qbuf or eq->dbrec after\nerdma_eq_destroy() frees them.\n\nClearing ceq_cb->ready does not synchronize with a tasklet that already\npassed the check at the start of erdma_ceq_completion_handler().\n\nKill the tasklet after free_irq(), when no handler can schedule it again,\nand before erdma_ceq_uninit_one() releases the EQ buffers."
    }
  ],
  "lastModified": "2026-09-17T17:17:54.243",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}