cve-2024-26761
Vulnerability from cvelistv5
Published
2024-04-03 17:00
Modified
2024-08-02 00:14
Severity
Summary
cxl/pci: Fix disabling memory if DVSEC CXL Range does not match a CFMWS window
Impacted products
VendorProduct
LinuxLinux
LinuxLinux
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2024-26761",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-04-03T18:38:51.943125Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-06-04T17:48:31.762Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      },
      {
        "providerMetadata": {
          "dateUpdated": "2024-08-02T00:14:13.361Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/031217128990d7f0ab8c46db1afb3cf1e075fd29"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/2cc1a530ab31c65b52daf3cb5d0883c8b614ea69"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/3a3181a71935774bda2398451256d7441426420b"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/0cab687205986491302cd2e440ef1d253031c221"
          }
        ],
        "title": "CVE Program Container"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/cxl/core/pci.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "031217128990",
              "status": "affected",
              "version": "34e37b4c432c",
              "versionType": "git"
            },
            {
              "lessThan": "2cc1a530ab31",
              "status": "affected",
              "version": "34e37b4c432c",
              "versionType": "git"
            },
            {
              "lessThan": "3a3181a71935",
              "status": "affected",
              "version": "34e37b4c432c",
              "versionType": "git"
            },
            {
              "lessThan": "0cab68720598",
              "status": "affected",
              "version": "34e37b4c432c",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/cxl/core/pci.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.19"
            },
            {
              "lessThan": "5.19",
              "status": "unaffected",
              "version": "0",
              "versionType": "custom"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.80",
              "versionType": "custom"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.19",
              "versionType": "custom"
            },
            {
              "lessThanOrEqual": "6.7.*",
              "status": "unaffected",
              "version": "6.7.7",
              "versionType": "custom"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.8",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ncxl/pci: Fix disabling memory if DVSEC CXL Range does not match a CFMWS window\n\nThe Linux CXL subsystem is built on the assumption that HPA == SPA.\nThat is, the host physical address (HPA) the HDM decoder registers are\nprogrammed with are system physical addresses (SPA).\n\nDuring HDM decoder setup, the DVSEC CXL range registers (cxl-3.1,\n8.1.3.8) are checked if the memory is enabled and the CXL range is in\na HPA window that is described in a CFMWS structure of the CXL host\nbridge (cxl-3.1, 9.18.1.3).\n\nNow, if the HPA is not an SPA, the CXL range does not match a CFMWS\nwindow and the CXL memory range will be disabled then. The HDM decoder\nstops working which causes system memory being disabled and further a\nsystem hang during HDM decoder initialization, typically when a CXL\nenabled kernel boots.\n\nPrevent a system hang and do not disable the HDM decoder if the\ndecoder\u0027s CXL range is not found in a CFMWS window.\n\nNote the change only fixes a hardware hang, but does not implement\nHPA/SPA translation. Support for this can be added in a follow on\npatch series."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2024-05-29T05:22:16.030Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/031217128990d7f0ab8c46db1afb3cf1e075fd29"
        },
        {
          "url": "https://git.kernel.org/stable/c/2cc1a530ab31c65b52daf3cb5d0883c8b614ea69"
        },
        {
          "url": "https://git.kernel.org/stable/c/3a3181a71935774bda2398451256d7441426420b"
        },
        {
          "url": "https://git.kernel.org/stable/c/0cab687205986491302cd2e440ef1d253031c221"
        }
      ],
      "title": "cxl/pci: Fix disabling memory if DVSEC CXL Range does not match a CFMWS window",
      "x_generator": {
        "engine": "bippy-a5840b7849dd"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2024-26761",
    "datePublished": "2024-04-03T17:00:44.934Z",
    "dateReserved": "2024-02-19T14:20:24.171Z",
    "dateUpdated": "2024-08-02T00:14:13.361Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2024-26761\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-04-03T17:15:52.413\",\"lastModified\":\"2024-04-03T17:24:18.150\",\"vulnStatus\":\"Awaiting Analysis\",\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ncxl/pci: Fix disabling memory if DVSEC CXL Range does not match a CFMWS window\\n\\nThe Linux CXL subsystem is built on the assumption that HPA == SPA.\\nThat is, the host physical address (HPA) the HDM decoder registers are\\nprogrammed with are system physical addresses (SPA).\\n\\nDuring HDM decoder setup, the DVSEC CXL range registers (cxl-3.1,\\n8.1.3.8) are checked if the memory is enabled and the CXL range is in\\na HPA window that is described in a CFMWS structure of the CXL host\\nbridge (cxl-3.1, 9.18.1.3).\\n\\nNow, if the HPA is not an SPA, the CXL range does not match a CFMWS\\nwindow and the CXL memory range will be disabled then. The HDM decoder\\nstops working which causes system memory being disabled and further a\\nsystem hang during HDM decoder initialization, typically when a CXL\\nenabled kernel boots.\\n\\nPrevent a system hang and do not disable the HDM decoder if the\\ndecoder\u0027s CXL range is not found in a CFMWS window.\\n\\nNote the change only fixes a hardware hang, but does not implement\\nHPA/SPA translation. Support for this can be added in a follow on\\npatch series.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se resolvi\u00f3 la siguiente vulnerabilidad: cxl/pci: corrige la desactivaci\u00f3n de la memoria si el rango DVSEC CXL no coincide con una ventana CFMWS. El subSYSTEM Linux CXL se basa en el supuesto de que HPA == SPA. Es decir, la direcci\u00f3n f\u00edsica del host (HPA) con la que est\u00e1n programados los registros del decodificador HDM son direcciones f\u00edsicas del SYSTEM (SPA). Durante la configuraci\u00f3n del decodificador HDM, los registros de rango DVSEC CXL (cxl-3.1, 8.1.3.8) se verifican si la memoria est\u00e1 habilitada y el rango CXL est\u00e1 en una ventana HPA que se describe en una estructura CFMWS del puente de host CXL (cxl- 3.1, 9.18.1.3). Ahora, si el HPA no es un SPA, el rango CXL no coincide con una ventana CFMWS y el rango de memoria CXL se desactivar\u00e1 en ese momento. El descodificador HDM deja de funcionar, lo que provoca que la memoria del SYSTEM se desactive y, adem\u00e1s, el SYSTEM se cuelgue durante la inicializaci\u00f3n del descodificador HDM, normalmente cuando se inicia un kernel habilitado para CXL. Evite que el SYSTEM se cuelgue y no desactive el decodificador HDM si el rango CXL del decodificador no se encuentra en una ventana CFMWS. Tenga en cuenta que el cambio solo soluciona un problema de hardware, pero no implementa la traducci\u00f3n HPA/SPA. Se puede agregar soporte para esto en una serie de parches de seguimiento.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/031217128990d7f0ab8c46db1afb3cf1e075fd29\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/0cab687205986491302cd2e440ef1d253031c221\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/2cc1a530ab31c65b52daf3cb5d0883c8b614ea69\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/3a3181a71935774bda2398451256d7441426420b\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading...

Loading...