CVE-2026-23138 (GCVE-0-2026-23138)

Vulnerability from cvelistv5 – Published: 2026-02-14 15:22 – Updated: 2026-02-14 15:22
VLAI?
Title
tracing: Add recursion protection in kernel stack trace recording
Summary
In the Linux kernel, the following vulnerability has been resolved: tracing: Add recursion protection in kernel stack trace recording A bug was reported about an infinite recursion caused by tracing the rcu events with the kernel stack trace trigger enabled. The stack trace code called back into RCU which then called the stack trace again. Expand the ftrace recursion protection to add a set of bits to protect events from recursion. Each bit represents the context that the event is in (normal, softirq, interrupt and NMI). Have the stack trace code use the interrupt context to protect against recursion. Note, the bug showed an issue in both the RCU code as well as the tracing stacktrace code. This only handles the tracing stack trace side of the bug. The RCU fix will be handled separately.
Severity ?
No CVSS data available.
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: 5f5fa7ea89dc82d34ed458f4d7a8634e8e9eefce , < 5b7f91acffd2c4c000971553d22efa1e1bb4feae (git)
Affected: 5f5fa7ea89dc82d34ed458f4d7a8634e8e9eefce , < 5f1ef0dfcb5b7f4a91a9b0e0ba533efd9f7e2cdb (git)
Create a notification for this product.
    Linux Linux Affected: 5.8
Unaffected: 0 , < 5.8 (semver)
Unaffected: 6.18.6 , ≤ 6.18.* (semver)
Unaffected: 6.19 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "include/linux/trace_recursion.h",
            "kernel/trace/trace.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "5b7f91acffd2c4c000971553d22efa1e1bb4feae",
              "status": "affected",
              "version": "5f5fa7ea89dc82d34ed458f4d7a8634e8e9eefce",
              "versionType": "git"
            },
            {
              "lessThan": "5f1ef0dfcb5b7f4a91a9b0e0ba533efd9f7e2cdb",
              "status": "affected",
              "version": "5f5fa7ea89dc82d34ed458f4d7a8634e8e9eefce",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "include/linux/trace_recursion.h",
            "kernel/trace/trace.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.8"
            },
            {
              "lessThan": "5.8",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.6",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.19",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.6",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.19",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ntracing: Add recursion protection in kernel stack trace recording\n\nA bug was reported about an infinite recursion caused by tracing the rcu\nevents with the kernel stack trace trigger enabled. The stack trace code\ncalled back into RCU which then called the stack trace again.\n\nExpand the ftrace recursion protection to add a set of bits to protect\nevents from recursion. Each bit represents the context that the event is\nin (normal, softirq, interrupt and NMI).\n\nHave the stack trace code use the interrupt context to protect against\nrecursion.\n\nNote, the bug showed an issue in both the RCU code as well as the tracing\nstacktrace code. This only handles the tracing stack trace side of the\nbug. The RCU fix will be handled separately."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-02-14T15:22:23.385Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/5b7f91acffd2c4c000971553d22efa1e1bb4feae"
        },
        {
          "url": "https://git.kernel.org/stable/c/5f1ef0dfcb5b7f4a91a9b0e0ba533efd9f7e2cdb"
        }
      ],
      "title": "tracing: Add recursion protection in kernel stack trace recording",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-23138",
    "datePublished": "2026-02-14T15:22:23.385Z",
    "dateReserved": "2026-01-13T15:37:45.972Z",
    "dateUpdated": "2026-02-14T15:22:23.385Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-23138\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-02-14T16:15:53.830\",\"lastModified\":\"2026-02-18T17:52:44.520\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ntracing: Add recursion protection in kernel stack trace recording\\n\\nA bug was reported about an infinite recursion caused by tracing the rcu\\nevents with the kernel stack trace trigger enabled. The stack trace code\\ncalled back into RCU which then called the stack trace again.\\n\\nExpand the ftrace recursion protection to add a set of bits to protect\\nevents from recursion. Each bit represents the context that the event is\\nin (normal, softirq, interrupt and NMI).\\n\\nHave the stack trace code use the interrupt context to protect against\\nrecursion.\\n\\nNote, the bug showed an issue in both the RCU code as well as the tracing\\nstacktrace code. This only handles the tracing stack trace side of the\\nbug. The RCU fix will be handled separately.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\\n\\nrastreo: A\u00f1adir protecci\u00f3n contra recursi\u00f3n en la grabaci\u00f3n de trazas de pila del kernel\\n\\nSe inform\u00f3 de un error sobre una recursi\u00f3n infinita causada por el rastreo de los eventos rcu con el disparador de traza de pila del kernel habilitado. El c\u00f3digo de traza de pila volvi\u00f3 a llamar a RCU, que luego volvi\u00f3 a llamar a la traza de pila.\\n\\nExpandir la protecci\u00f3n contra recursi\u00f3n de ftrace para a\u00f1adir un conjunto de bits para proteger los eventos de la recursi\u00f3n. Cada bit representa el contexto en el que se encuentra el evento (normal, softirq, interrupci\u00f3n y NMI).\\n\\nHacer que el c\u00f3digo de traza de pila use el contexto de interrupci\u00f3n para proteger contra la recursi\u00f3n.\\n\\nNota, el error mostr\u00f3 un problema tanto en el c\u00f3digo RCU como en el c\u00f3digo de traza de pila de rastreo. Esto solo aborda el lado de la traza de pila de rastreo del error. La correcci\u00f3n de RCU se manejar\u00e1 por separado.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/5b7f91acffd2c4c000971553d22efa1e1bb4feae\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/5f1ef0dfcb5b7f4a91a9b0e0ba533efd9f7e2cdb\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

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…

Detection rules are retrieved from Rulezet.

Loading…

Loading…