CVE-2026-53204 (GCVE-0-2026-53204)

Vulnerability from cvelistv5 – Published: 2026-06-25 08:39 – Updated: 2026-06-25 08:39
VLAI
Title
firmware: stratix10-rsu: Fix NULL deref on rsu_send_msg() timeout in probe
Summary
In the Linux kernel, the following vulnerability has been resolved: firmware: stratix10-rsu: Fix NULL deref on rsu_send_msg() timeout in probe rsu_send_msg() can return -ETIMEDOUT when wait_for_completion_interruptible_timeout() fires while the SMC call is still pending. In stratix10_rsu_probe(), the error paths for COMMAND_RSU_DCMF_VERSION, COMMAND_RSU_DCMF_STATUS, COMMAND_RSU_MAX_RETRY and COMMAND_RSU_GET_SPT_TABLE call stratix10_svc_free_channel() - which sets chan->scl to NULL - but then fall through and queue the next request on the same channel. The next svc kthread that runs will dereference pdata->chan->scl in its receive callback path, triggering a NULL pointer dereference identical to the one fixed by commit c45f7263100c ("firmware: stratix10-rsu: Fix NULL pointer dereference when RSU is disabled") for the COMMAND_RSU_STATUS path. Apply the same cleanup pattern to the remaining failure paths: remove the async client, free the channel, and return early so no further messages are queued on a channel whose scl has been cleared. While at it, clean up stratix10_rsu_probe() in two ways without changing behavior: - Drop redundant zero-initialization of fields already cleared by devm_kzalloc(): client.receive_cb, status.* and spt0/1_address (INVALID_SPT_ADDRESS is 0x0). - Replace five identical 3-line error-cleanup blocks (stratix10_svc_remove_async_client() + stratix10_svc_free_channel() + return ret) with goto labels (remove_async_client, free_channel), matching the standard kernel resource-unwinding pattern and making it easier to extend the probe sequence without forgetting matching cleanup. Also move init_completion() next to mutex_init() so sync-primitive initialization is grouped before anything that could trigger a callback. --- v2: Add a minor clean-up of the function stratix10_rsu_probe() to have a centralize exit for all the rsu_send_async_msg() and rsu_send_msg().
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 15847537b623f844d9a08da99ff4568315e1d4f8 , < 6bc249d324241c64118a3018124798c28e2950f7 (git)
Affected: 15847537b623f844d9a08da99ff4568315e1d4f8 , < bfd2eb9bba548a8f63c3339bb1fb9a2031a42d86 (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.19
Unaffected: 0 , < 6.19 (semver)
Unaffected: 7.0.13 , ≤ 7.0.* (semver)
Unaffected: 7.1 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/firmware/stratix10-rsu.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "6bc249d324241c64118a3018124798c28e2950f7",
              "status": "affected",
              "version": "15847537b623f844d9a08da99ff4568315e1d4f8",
              "versionType": "git"
            },
            {
              "lessThan": "bfd2eb9bba548a8f63c3339bb1fb9a2031a42d86",
              "status": "affected",
              "version": "15847537b623f844d9a08da99ff4568315e1d4f8",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/firmware/stratix10-rsu.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.19"
            },
            {
              "lessThan": "6.19",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.0.*",
              "status": "unaffected",
              "version": "7.0.13",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.0.13",
                  "versionStartIncluding": "6.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1",
                  "versionStartIncluding": "6.19",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfirmware: stratix10-rsu: Fix NULL deref on rsu_send_msg() timeout in probe\n\nrsu_send_msg() can return -ETIMEDOUT when\nwait_for_completion_interruptible_timeout() fires while the SMC call is still\npending. In stratix10_rsu_probe(), the error paths for COMMAND_RSU_DCMF_VERSION,\nCOMMAND_RSU_DCMF_STATUS, COMMAND_RSU_MAX_RETRY and COMMAND_RSU_GET_SPT_TABLE\ncall stratix10_svc_free_channel() - which sets chan-\u003escl to NULL - but then\nfall through and queue the next request on the same channel. The next svc\nkthread that runs will dereference pdata-\u003echan-\u003escl in its receive callback\npath, triggering a NULL pointer dereference identical to the one fixed by\ncommit c45f7263100c (\"firmware: stratix10-rsu: Fix NULL pointer dereference\nwhen RSU is disabled\") for the COMMAND_RSU_STATUS path.\n\nApply the same cleanup pattern to the remaining failure paths: remove the\nasync client, free the channel, and return early so no further messages are\nqueued on a channel whose scl has been cleared.\n\nWhile at it, clean up stratix10_rsu_probe() in two ways without changing\nbehavior:\n\n- Drop redundant zero-initialization of fields already cleared by\n  devm_kzalloc(): client.receive_cb, status.* and spt0/1_address\n  (INVALID_SPT_ADDRESS is 0x0).\n\n- Replace five identical 3-line error-cleanup blocks\n  (stratix10_svc_remove_async_client() + stratix10_svc_free_channel() +\n  return ret) with goto labels (remove_async_client, free_channel),\n  matching the standard kernel resource-unwinding pattern and making it\n  easier to extend the probe sequence without forgetting matching\n  cleanup.\n\nAlso move init_completion() next to mutex_init() so sync-primitive\ninitialization is grouped before anything that could trigger a\ncallback.\n\n---\nv2: Add a minor clean-up of the function stratix10_rsu_probe() to have a\n    centralize exit for all the rsu_send_async_msg() and rsu_send_msg()."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-06-25T08:39:11.618Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/6bc249d324241c64118a3018124798c28e2950f7"
        },
        {
          "url": "https://git.kernel.org/stable/c/bfd2eb9bba548a8f63c3339bb1fb9a2031a42d86"
        }
      ],
      "title": "firmware: stratix10-rsu: Fix NULL deref on rsu_send_msg() timeout in probe",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-53204",
    "datePublished": "2026-06-25T08:39:11.618Z",
    "dateReserved": "2026-06-09T07:44:35.391Z",
    "dateUpdated": "2026-06-25T08:39:11.618Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-53204",
      "date": "2026-09-23",
      "epss": "0.00143",
      "percentile": "0.04"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/firmware/stratix10-rsu.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "6bc249d324241c64118a3018124798c28e2950f7",
                    "status": "affected",
                    "version": "15847537b623f844d9a08da99ff4568315e1d4f8",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "bfd2eb9bba548a8f63c3339bb1fb9a2031a42d86",
                    "status": "affected",
                    "version": "15847537b623f844d9a08da99ff4568315e1d4f8",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/firmware/stratix10-rsu.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.19"
                  },
                  {
                    "lessThan": "6.19",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.0.*",
                    "status": "unaffected",
                    "version": "7.0.13",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.1",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "configurations": [
          {
            "nodes": [
              {
                "cpeMatch": [
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "6A64BF9F-3BCA-42FD-98CB-8F03474D2B1E",
                    "versionEndExcluding": "7.0.13",
                    "versionStartIncluding": "6.19",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*",
                    "matchCriteriaId": "B1EF7059-E670-45F4-B422-54C40FA86390",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:*",
                    "matchCriteriaId": "0D38F0BF-A728-4133-A358-D44A2F7EE6D6",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:*",
                    "matchCriteriaId": "EC732D08-5F7B-46D9-B154-E60C7F4F0A97",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc4:*:*:*:*:*:*",
                    "matchCriteriaId": "E5910A9D-F60A-409A-B486-FE66BFEBA9B9",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc5:*:*:*:*:*:*",
                    "matchCriteriaId": "81DFF19E-9CF8-49C6-8C36-1E4038622933",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc6:*:*:*:*:*:*",
                    "matchCriteriaId": "B0E8FC71-3952-444C-83E9-718DBBBEC615",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc7:*:*:*:*:*:*",
                    "matchCriteriaId": "1039E95A-8CC3-4C88-8FF9-5C08EEB861C9",
                    "vulnerable": true
                  }
                ],
                "negate": false,
                "operator": "OR"
              }
            ]
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfirmware: stratix10-rsu: Fix NULL deref on rsu_send_msg() timeout in probe\n\nrsu_send_msg() can return -ETIMEDOUT when\nwait_for_completion_interruptible_timeout() fires while the SMC call is still\npending. In stratix10_rsu_probe(), the error paths for COMMAND_RSU_DCMF_VERSION,\nCOMMAND_RSU_DCMF_STATUS, COMMAND_RSU_MAX_RETRY and COMMAND_RSU_GET_SPT_TABLE\ncall stratix10_svc_free_channel() - which sets chan-\u003escl to NULL - but then\nfall through and queue the next request on the same channel. The next svc\nkthread that runs will dereference pdata-\u003echan-\u003escl in its receive callback\npath, triggering a NULL pointer dereference identical to the one fixed by\ncommit c45f7263100c (\"firmware: stratix10-rsu: Fix NULL pointer dereference\nwhen RSU is disabled\") for the COMMAND_RSU_STATUS path.\n\nApply the same cleanup pattern to the remaining failure paths: remove the\nasync client, free the channel, and return early so no further messages are\nqueued on a channel whose scl has been cleared.\n\nWhile at it, clean up stratix10_rsu_probe() in two ways without changing\nbehavior:\n\n- Drop redundant zero-initialization of fields already cleared by\n  devm_kzalloc(): client.receive_cb, status.* and spt0/1_address\n  (INVALID_SPT_ADDRESS is 0x0).\n\n- Replace five identical 3-line error-cleanup blocks\n  (stratix10_svc_remove_async_client() + stratix10_svc_free_channel() +\n  return ret) with goto labels (remove_async_client, free_channel),\n  matching the standard kernel resource-unwinding pattern and making it\n  easier to extend the probe sequence without forgetting matching\n  cleanup.\n\nAlso move init_completion() next to mutex_init() so sync-primitive\ninitialization is grouped before anything that could trigger a\ncallback.\n\n---\nv2: Add a minor clean-up of the function stratix10_rsu_probe() to have a\n    centralize exit for all the rsu_send_async_msg() and rsu_send_msg()."
          }
        ],
        "id": "CVE-2026-53204",
        "lastModified": "2026-07-02T20:55:42.140",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 5.5,
                "baseSeverity": "MEDIUM",
                "confidentialityImpact": "NONE",
                "integrityImpact": "NONE",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 3.6,
              "source": "nvd@nist.gov",
              "type": "Primary"
            }
          ]
        },
        "published": "2026-06-25T09:16:37.960",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/6bc249d324241c64118a3018124798c28e2950f7"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/bfd2eb9bba548a8f63c3339bb1fb9a2031a42d86"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Analyzed",
        "weaknesses": [
          {
            "description": [
              {
                "lang": "en",
                "value": "CWE-476"
              }
            ],
            "source": "nvd@nist.gov",
            "type": "Primary"
          }
        ]
      }
    },
    "redhat_vex": {
      "aggregate_severity": "None",
      "current_release_date": "2026-06-29T13:55:08+00:00",
      "cve": "CVE-2026-53204",
      "id": "CVE-2026-53204",
      "initial_release_date": "2026-06-25T00:00:00+00:00",
      "product_status:known_not_affected": "274",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: firmware: stratix10-rsu: Fix NULL deref on rsu_send_msg() timeout in probe",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-53204.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-06-30T01:43:33Z",
      "cve": "CVE-2026-53204",
      "id": "CVE-2026-53204",
      "initial_release_date": "2026-06-26T02:10:10Z",
      "product_status:known_not_affected": "291",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-53204",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-53204.json",
      "version": "4"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…