« Volver al listado

CVE-2025-37965

Estado: AnalizadaMedia (5.5)—

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

drm/amd/display: Fix invalid context error in dml helper

[Why] "BUG: sleeping function called from invalid context" error. after: "drm/amd/display: Protect FPU in dml2_validate()/dml21_validate()"

The populate_dml_plane_cfg_from_plane_state() uses the GFP_KERNEL flag for memory allocation, which shouldn't be used in atomic contexts.

The allocation is needed only for using another helper function get_scaler_data_for_plane().

[How] Modify helpers to pass a pointer to scaler_data within existing context, eliminating the need for dynamic memory allocation/deallocation and copying.

Leer descripción completaMostrar menos

(cherry picked from commit bd3e84bc98f81b44f2c43936bdadc3241d654259)

CVSS

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)

CWE

Referencias

JSON original (NVD)

Mostrar
{
  "id": "CVE-2025-37965",
  "cveTags": [],
  "metrics": {
    "cvssMetricV31": [
      {
        "type": "Primary",
        "source": "nvd@nist.gov",
        "cvssData": {
          "scope": "UNCHANGED",
          "version": "3.1",
          "baseScore": 5.5,
          "attackVector": "LOCAL",
          "baseSeverity": "MEDIUM",
          "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
          "integrityImpact": "NONE",
          "userInteraction": "NONE",
          "attackComplexity": "LOW",
          "availabilityImpact": "HIGH",
          "privilegesRequired": "LOW",
          "confidentialityImpact": "NONE"
        },
        "impactScore": 3.6,
        "exploitabilityScore": 1.8
      }
    ]
  },
  "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": "74d6fba60f05ca6b298702233b6e6cc7629eeb5a",
              "lessThan": "d8c4afe78385cd355e4d80299d785379d6e874df",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "7b80dcf343d45088931d16a6c9ba2fd975138a0b",
              "lessThan": "b371f8f6d89ec8dfea796e00a44a57c44fc8fcc0",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "366e77cd4923c3aa45341e15dcaf3377af9b042f",
              "lessThan": "9984db63742099ee3f3cff35cf71306d10e64356",
              "versionType": "git"
            }
          ],
          "programFiles": [
            "drivers/gpu/drm/amd/display/dc/dml2/dml2_translation_helper.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.12.25",
              "lessThan": "6.12.29",
              "versionType": "semver"
            },
            {
              "status": "affected",
              "version": "6.14.4",
              "lessThan": "6.14.7",
              "versionType": "semver"
            }
          ],
          "programFiles": [
            "drivers/gpu/drm/amd/display/dc/dml2/dml2_translation_helper.c"
          ],
          "defaultStatus": "unaffected"
        }
      ]
    }
  ],
  "published": "2025-05-20T17:15:46.900",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/9984db63742099ee3f3cff35cf71306d10e64356",
      "tags": [
        "Patch"
      ],
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/b371f8f6d89ec8dfea796e00a44a57c44fc8fcc0",
      "tags": [
        "Patch"
      ],
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/d8c4afe78385cd355e4d80299d785379d6e874df",
      "tags": [
        "Patch"
      ],
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Analyzed",
  "weaknesses": [
    {
      "type": "Primary",
      "source": "nvd@nist.gov",
      "description": [
        {
          "lang": "en",
          "value": "NVD-CWE-noinfo"
        }
      ]
    }
  ],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/amd/display: Fix invalid context error in dml helper\n\n[Why]\n\"BUG: sleeping function called from invalid context\" error.\nafter:\n\"drm/amd/display: Protect FPU in dml2_validate()/dml21_validate()\"\n\nThe populate_dml_plane_cfg_from_plane_state() uses the GFP_KERNEL flag\nfor memory allocation, which shouldn't be used in atomic contexts.\n\nThe allocation is needed only for using another helper function\nget_scaler_data_for_plane().\n\n[How]\nModify helpers to pass a pointer to scaler_data within existing context,\neliminating the need for dynamic memory allocation/deallocation\nand copying.\n\n(cherry picked from commit bd3e84bc98f81b44f2c43936bdadc3241d654259)"
    },
    {
      "lang": "es",
      "value": "En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: drm/amd/display: Corrección de error de contexto no válido en el asistente dml [Por qué] Error \"BUG: función inactiva llamada desde un contexto no válido\". Después: \"drm/amd/display: Proteger FPU en dml2_validate()/dml21_validate()\". La función populate_dml_plane_cfg_from_plane_state() utiliza el indicador GFP_KERNEL para la asignación de memoria, que no debería usarse en contextos atómicos. Esta asignación solo es necesaria para usar otra función auxiliar, get_scaler_data_for_plane(). [Cómo] Modificar los asistentes para que pasen un puntero a scaler_data dentro del contexto existente, eliminando la necesidad de asignar/desasignar memoria dinámicamente y copiar. (Seleccionado de el commit bd3e84bc98f81b44f2c43936bdadc3241d654259)"
    }
  ],
  "lastModified": "2026-06-17T09:15:47.447",
  "configurations": [
    {
      "nodes": [
        {
          "negate": false,
          "cpeMatch": [
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "2B57F735-1554-4464-9DDC-E3BAE21F4FAD",
              "versionEndExcluding": "6.12.29",
              "versionStartIncluding": "6.12.25"
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "B9442C28-3418-4E82-A040-8AB17E9C7D34",
              "versionEndExcluding": "6.14.7",
              "versionStartIncluding": "6.14.4"
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:6.15:rc2:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "4C9D071F-B28E-46EC-AC61-22B913390211"
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:6.15:rc3:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "13FC0DDE-E513-465E-9E81-515702D49B74"
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:6.15:rc4:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "8C7B5B0E-4EEB-48F5-B4CF-0935A7633845"
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:6.15:rc5:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "2D240580-3048-49B2-9E27-F115A9DF8224"
            }
          ],
          "operator": "OR"
        }
      ]
    }
  ],
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}