CVE-2024-50216 (GCVE-0-2024-50216)

Vulnerability from cvelistv5 – Published: 2024-11-09 10:14 – Updated: 2026-05-11 20:47
VLAI?
Title
xfs: fix finding a last resort AG in xfs_filestream_pick_ag
Summary
In the Linux kernel, the following vulnerability has been resolved: xfs: fix finding a last resort AG in xfs_filestream_pick_ag When the main loop in xfs_filestream_pick_ag fails to find a suitable AG it tries to just pick the online AG. But the loop for that uses args->pag as loop iterator while the later code expects pag to be set. Fix this by reusing the max_pag case for this last resort, and also add a check for impossible case of no AG just to make sure that the uninitialized pag doesn't even escape in theory.
Severity ?
No CVSS data available.
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: f8f1ed1ab3babad46b25e2dbe8de43b33fe7aaa6 , < 77ddc732416b017180893cbb2356e9f0a414c575 (git)
Affected: f8f1ed1ab3babad46b25e2dbe8de43b33fe7aaa6 , < a023408925acd64db5c8980373fcb3e28ec6fd29 (git)
Affected: f8f1ed1ab3babad46b25e2dbe8de43b33fe7aaa6 , < dc60992ce76fbc2f71c2674f435ff6bde2108028 (git)
Create a notification for this product.
Linux Linux Affected: 6.3
Unaffected: 0 , < 6.3 (semver)
Unaffected: 6.6.60 , ≤ 6.6.* (semver)
Unaffected: 6.11.7 , ≤ 6.11.* (semver)
Unaffected: 6.12 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "fs/xfs/xfs_filestream.c",
            "fs/xfs/xfs_trace.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "77ddc732416b017180893cbb2356e9f0a414c575",
              "status": "affected",
              "version": "f8f1ed1ab3babad46b25e2dbe8de43b33fe7aaa6",
              "versionType": "git"
            },
            {
              "lessThan": "a023408925acd64db5c8980373fcb3e28ec6fd29",
              "status": "affected",
              "version": "f8f1ed1ab3babad46b25e2dbe8de43b33fe7aaa6",
              "versionType": "git"
            },
            {
              "lessThan": "dc60992ce76fbc2f71c2674f435ff6bde2108028",
              "status": "affected",
              "version": "f8f1ed1ab3babad46b25e2dbe8de43b33fe7aaa6",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "fs/xfs/xfs_filestream.c",
            "fs/xfs/xfs_trace.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.3"
            },
            {
              "lessThan": "6.3",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.60",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.11.*",
              "status": "unaffected",
              "version": "6.11.7",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.12",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.60",
                  "versionStartIncluding": "6.3",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.11.7",
                  "versionStartIncluding": "6.3",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12",
                  "versionStartIncluding": "6.3",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nxfs: fix finding a last resort AG in xfs_filestream_pick_ag\n\nWhen the main loop in xfs_filestream_pick_ag fails to find a suitable\nAG it tries to just pick the online AG.  But the loop for that uses\nargs-\u003epag as loop iterator while the later code expects pag to be\nset.  Fix this by reusing the max_pag case for this last resort, and\nalso add a check for impossible case of no AG just to make sure that\nthe uninitialized pag doesn\u0027t even escape in theory."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-05-11T20:47:40.266Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/77ddc732416b017180893cbb2356e9f0a414c575"
        },
        {
          "url": "https://git.kernel.org/stable/c/a023408925acd64db5c8980373fcb3e28ec6fd29"
        },
        {
          "url": "https://git.kernel.org/stable/c/dc60992ce76fbc2f71c2674f435ff6bde2108028"
        }
      ],
      "title": "xfs: fix finding a last resort AG in xfs_filestream_pick_ag",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2024-50216",
    "datePublished": "2024-11-09T10:14:27.875Z",
    "dateReserved": "2024-10-21T19:36:19.972Z",
    "dateUpdated": "2026-05-11T20:47:40.266Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2024-50216",
      "date": "2026-05-20",
      "epss": "0.00027",
      "percentile": "0.07846"
    },
    "fkie_nvd": {
      "descriptions": "[{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nxfs: fix finding a last resort AG in xfs_filestream_pick_ag\\n\\nWhen the main loop in xfs_filestream_pick_ag fails to find a suitable\\nAG it tries to just pick the online AG.  But the loop for that uses\\nargs-\u003epag as loop iterator while the later code expects pag to be\\nset.  Fix this by reusing the max_pag case for this last resort, and\\nalso add a check for impossible case of no AG just to make sure that\\nthe uninitialized pag doesn\u0027t even escape in theory.\"}, {\"lang\": \"es\", \"value\": \"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: xfs: se corrige la b\\u00fasqueda de un AG de \\u00faltimo recurso en xfs_filestream_pick_ag Cuando el bucle principal en xfs_filestream_pick_ag no puede encontrar un AG adecuado, intenta simplemente elegir el AG en l\\u00ednea. Pero el bucle para eso usa args-\u0026gt;pag como iterador de bucle mientras que el c\\u00f3digo posterior espera que se configure pag. Corrija esto reutilizando el caso max_pag para este \\u00faltimo recurso y tambi\\u00e9n agregue una verificaci\\u00f3n para el caso imposible de que no haya AG solo para asegurarse de que el pag no inicializado ni siquiera escape en teor\\u00eda.\"}]",
      "id": "CVE-2024-50216",
      "lastModified": "2024-11-12T13:56:24.513",
      "published": "2024-11-09T11:15:06.987",
      "references": "[{\"url\": \"https://git.kernel.org/stable/c/77ddc732416b017180893cbb2356e9f0a414c575\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}, {\"url\": \"https://git.kernel.org/stable/c/a023408925acd64db5c8980373fcb3e28ec6fd29\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}, {\"url\": \"https://git.kernel.org/stable/c/dc60992ce76fbc2f71c2674f435ff6bde2108028\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]",
      "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "vulnStatus": "Awaiting Analysis"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2024-50216\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-11-09T11:15:06.987\",\"lastModified\":\"2025-10-08T15:04:43.380\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nxfs: fix finding a last resort AG in xfs_filestream_pick_ag\\n\\nWhen the main loop in xfs_filestream_pick_ag fails to find a suitable\\nAG it tries to just pick the online AG.  But the loop for that uses\\nargs-\u003epag as loop iterator while the later code expects pag to be\\nset.  Fix this by reusing the max_pag case for this last resort, and\\nalso add a check for impossible case of no AG just to make sure that\\nthe uninitialized pag doesn\u0027t even escape in theory.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: xfs: se corrige la b\u00fasqueda de un AG de \u00faltimo recurso en xfs_filestream_pick_ag Cuando el bucle principal en xfs_filestream_pick_ag no puede encontrar un AG adecuado, intenta simplemente elegir el AG en l\u00ednea. Pero el bucle para eso usa args-\u0026gt;pag como iterador de bucle mientras que el c\u00f3digo posterior espera que se configure pag. Corrija esto reutilizando el caso max_pag para este \u00faltimo recurso y tambi\u00e9n agregue una verificaci\u00f3n para el caso imposible de que no haya AG solo para asegurarse de que el pag no inicializado ni siquiera escape en teor\u00eda.\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"nvd@nist.gov\",\"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}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"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\":\"6.3\",\"versionEndExcluding\":\"6.6.60\",\"matchCriteriaId\":\"00A8F309-31B3-44B6-9284-6F2907A64956\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.7\",\"versionEndExcluding\":\"6.11.7\",\"matchCriteriaId\":\"E96F53A4-5E87-4A70-BD9A-BC327828D57F\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.12:rc1:*:*:*:*:*:*\",\"matchCriteriaId\":\"7F361E1D-580F-4A2D-A509-7615F73167A1\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.12:rc2:*:*:*:*:*:*\",\"matchCriteriaId\":\"925478D0-3E3D-4E6F-ACD5-09F28D5DF82C\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.12:rc3:*:*:*:*:*:*\",\"matchCriteriaId\":\"3C95E234-D335-4B6C-96BF-E2CEBD8654ED\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.12:rc4:*:*:*:*:*:*\",\"matchCriteriaId\":\"E0F717D8-3014-4F84-8086-0124B2111379\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.12:rc5:*:*:*:*:*:*\",\"matchCriteriaId\":\"24DBE6C7-2AAE-4818-AED2-E131F153D2FA\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/77ddc732416b017180893cbb2356e9f0a414c575\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/a023408925acd64db5c8980373fcb3e28ec6fd29\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/dc60992ce76fbc2f71c2674f435ff6bde2108028\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}"
  }
}


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…

Detection rules are retrieved from Rulezet.

Loading…

Loading…