← Back to CVE Explorer

CVE-2024-41008

Full vulnerability record from the local CVENow database.

Description

In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: change vm->task_info handling This patch changes the handling and lifecycle of vm->task_info object. The major changes are: - vm->task_info is a dynamically allocated ptr now, and its uasge is reference counted. - introducing two new helper funcs for task_info lifecycle management - amdgpu_vm_get_task_info: reference counts up task_info before returning this info - amdgpu_vm_put_task_info: reference counts down task_info - last put to task_info() frees task_info from the vm. This patch also does logistical changes required for existing usage of vm->task_info. V2: Do not block all the prints when task_info not found (Felix) V3: Fixed review comments from Felix - Fix wrong indentation - No debug message for -ENOMEM - Add NULL check for task_info - Do not duplicate the debug messages (ti vs no ti) - Get first reference of task_info in vm_init(), put last in vm_fini() V4: Fixed review comments from Felix - fix double reference increment in create_task_info - change amdgpu_vm_get_task_info_pasid - additional changes in amdgpu_gem.c while porting

Severity
MEDIUM
CVSS score
5.5 (v3.1)
Vulnerability status
Modified
Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Published
2024-07-16 08:15:02.240000
Last modified
2026-10-30 13:17:30.410000
View original CVE JSON
{
  "id": "CVE-2024-41008",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "published": "2024-07-16T08:15:02.240",
  "lastModified": "2026-10-30T13:17:30.410",
  "vulnStatus": "Modified",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/amdgpu: change vm->task_info handling\n\nThis patch changes the handling and lifecycle of vm->task_info object.\nThe major changes are:\n- vm->task_info is a dynamically allocated ptr now, and its uasge is\n  reference counted.\n- introducing two new helper funcs for task_info lifecycle management\n    - amdgpu_vm_get_task_info: reference counts up task_info before\n      returning this info\n    - amdgpu_vm_put_task_info: reference counts down task_info\n- last put to task_info() frees task_info from the vm.\n\nThis patch also does logistical changes required for existing usage\nof vm->task_info.\n\nV2: Do not block all the prints when task_info not found (Felix)\n\nV3: Fixed review comments from Felix\n   - Fix wrong indentation\n   - No debug message for -ENOMEM\n   - Add NULL check for task_info\n   - Do not duplicate the debug messages (ti vs no ti)\n   - Get first reference of task_info in vm_init(), put last\n     in vm_fini()\n\nV4: Fixed review comments from Felix\n   - fix double reference increment in create_task_info\n   - change amdgpu_vm_get_task_info_pasid\n   - additional changes in amdgpu_gem.c while porting"
    },
    {
      "lang": "es",
      "value": "En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: drm/amdgpu: cambiar el manejo de vm->task_info Este parche cambia el manejo y el ciclo de vida del objeto vm->task_info. Los cambios principales son: - vm->task_info ahora es un ptr asignado dinámicamente y su uso se cuenta por referencia. - presentamos dos nuevas funciones auxiliares para la gestión del ciclo de vida de task_info - amdgpu_vm_get_task_info: la referencia cuenta task_info antes de devolver esta información - amdgpu_vm_put_task_info: la referencia cuenta atrás task_info - la última entrada en task_info() libera task_info de la máquina virtual. Este parche también realiza cambios logísticos necesarios para el uso existente de vm->task_info. V2: No bloquear todas las impresiones cuando no se encuentra task_info (Felix) V3: Se corrigieron los comentarios de revisión de Felix - Se corrigió la sangría incorrecta - No hay mensaje de depuración para -ENOMEM - Agregar verificación NULL para task_info - No se duplican los mensajes de depuración (ti vs no ti) - Obtenga la primera referencia de task_info en vm_init(), colóquela última en vm_fini() V4: Se corrigieron los comentarios de revisión de Felix - se corrigió el incremento de doble referencia en create_task_info - se cambió amdgpu_vm_get_task_info_pasid - cambios adicionales en amdgpu_gem.c durante la portabilidad"
    }
  ],
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "programFiles": [
            "drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_job.c",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c",
            "drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c",
            "drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c",
            "drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c",
            "drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c",
            "drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c",
            "drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c",
            "drivers/gpu/drm/amd/amdkfd/kfd_smi_events.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "d38ceaf99ed015f2a0b9af3499791bd3a3daae21",
              "lessThan": "aa22d6c58505d239814b5ef8fa7da4ce43e9212b",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "d38ceaf99ed015f2a0b9af3499791bd3a3daae21",
              "lessThan": "251840f22eff35c25de531a3fcb523df94c128c0",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "d38ceaf99ed015f2a0b9af3499791bd3a3daae21",
              "lessThan": "b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
              "versionType": "git",
              "status": "affected"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "programFiles": [
            "drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_job.c",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h",
            "drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c",
            "drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c",
            "drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c",
            "drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c",
            "drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c",
            "drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c",
            "drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c",
            "drivers/gpu/drm/amd/amdkfd/kfd_smi_events.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "4.2",
              "status": "affected"
            },
            {
              "version": "0",
              "lessThan": "4.2",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.1.191",
              "lessThanOrEqual": "6.1.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.6.160",
              "lessThanOrEqual": "6.6.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.9",
              "lessThanOrEqual": "*",
              "versionType": "original_commit_for_fix",
              "status": "unaffected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
          "baseScore": 7.8,
          "baseSeverity": "HIGH",
          "attackVector": "LOCAL",
          "attackComplexity": "LOW",
          "privilegesRequired": "LOW",
          "userInteraction": "NONE",
          "scope": "UNCHANGED",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "HIGH",
          "availabilityImpact": "HIGH"
        },
        "exploitabilityScore": 1.8,
        "impactScore": 5.9
      },
      {
        "source": "[email protected]",
        "type": "Primary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
          "baseScore": 5.5,
          "baseSeverity": "MEDIUM",
          "attackVector": "LOCAL",
          "attackComplexity": "LOW",
          "privilegesRequired": "LOW",
          "userInteraction": "NONE",
          "scope": "UNCHANGED",
          "confidentialityImpact": "NONE",
          "integrityImpact": "NONE",
          "availabilityImpact": "HIGH"
        },
        "exploitabilityScore": 1.8,
        "impactScore": 3.6
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2024-09-10T17:00:49.381223Z",
          "id": "CVE-2024-41008",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "partial"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Primary",
      "description": [
        {
          "lang": "en",
          "value": "NVD-CWE-noinfo"
        }
      ]
    }
  ],
  "configurations": [
    {
      "nodes": [
        {
          "operator": "OR",
          "negate": false,
          "cpeMatch": [
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "versionStartIncluding": "4.2",
              "versionEndExcluding": "6.9",
              "matchCriteriaId": "E6BD4683-0AAB-43D1-B079-A0C20DE05CF6"
            }
          ]
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/251840f22eff35c25de531a3fcb523df94c128c0",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/aa22d6c58505d239814b5ef8fa7da4ce43e9212b",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "tags": [
        "Patch"
      ]
    },
    {
      "url": "https://git.kernel.org/stable/c/b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Patch"
      ]
    }
  ]
}