In the Linux kernel, the following vulnerability has been resolved:
mmc: sdhci: Fix maxsegsize for 64KiB PAGE_SIZE
blkqueuemaxsegmentsize() ensured:
if (max_size < PAGE_SIZE)
max_size = PAGE_SIZE;
whereas:
blkvalidatelimits() makes it an error:
if (WARN_ON_ONCE(lim->max_segment_size < PAGE_SIZE))
return -EINVAL;
The change from one to the other, exposed sdhci which was setting maximum segment size too low in some circumstances.
Fix the maximum segment size when it is too low.
{ "vanir_signatures": [ { "id": "CVE-2024-42242-062f2adb", "signature_type": "Line", "target": { "file": "drivers/mmc/host/sdhci.c" }, "signature_version": "v1", "digest": { "line_hashes": [ "89157310469223868753844702433748114650", "307082574500014487483611352166369363214", "45774944563988815680578025607179163166", "196450292605654245895423462968517254594" ], "threshold": 0.9 }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bf78b1accef46efd9b624967cb74ae8d3c215a2b" }, { "id": "CVE-2024-42242-5e9f1363", "signature_type": "Line", "target": { "file": "drivers/mmc/host/sdhci.c" }, "signature_version": "v1", "digest": { "line_hashes": [ "89157310469223868753844702433748114650", "307082574500014487483611352166369363214", "45774944563988815680578025607179163166", "196450292605654245895423462968517254594" ], "threshold": 0.9 }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@63d20a94f24fc1cbaf44d0e7c0e0a8077fde0aef" }, { "id": "CVE-2024-42242-a2c14d24", "signature_type": "Function", "target": { "file": "drivers/mmc/host/sdhci.c", "function": "sdhci_setup_host" }, "signature_version": "v1", "digest": { "length": 12356.0, "function_hash": "42344295890662805665528411393796078718" }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bf78b1accef46efd9b624967cb74ae8d3c215a2b" }, { "id": "CVE-2024-42242-d6dc4957", "signature_type": "Function", "target": { "file": "drivers/mmc/host/sdhci.c", "function": "sdhci_setup_host" }, "signature_version": "v1", "digest": { "length": 12356.0, "function_hash": "42344295890662805665528411393796078718" }, "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@63d20a94f24fc1cbaf44d0e7c0e0a8077fde0aef" } ] }