Skip to content
Heist/ feed
Back to feed
UnratedFix available

spi: fsl-cpm: Check length parity before switching to 16 bit mode

Type: advisorySources: OSV

In the Linux kernel, the following vulnerability has been resolved: spi: fsl-cpm: Check length parity before switching to 16 bit mode Commit fc96ec826bce ("spi: fsl-cpm: Use 16 bit mode for large transfers with even size") failed to make sure that the size is really even before switching to 16 bit mode. Until recently the problem went unnoticed because kernfs uses a pre-allocated bounce buffer of size PAGE_SIZE for reading EEPROM. But commit 8ad6249c51d0 ("eeprom: at25: convert to spi-mem API") introduced an additional dynamically allocated bounce buffer whose size is exactly the size of the transfer, leading to a buffer overrun in the fsl-cpm driver when that size is odd. Add the missing length parity verification and remain in 8 bit mode when the length is not even.

Products
Kernel
Affected versions
Not specified
Fixed versions
5.10.248, 5.15.198, 6.1.160, 6.12.64, 6.18.3, 6.6.120
CVEs
CVE-2025-68773
Confirmed fixed CVEs
Not specified
Updated in this feed
3 Nov 2026, 16:30 UTC · Revision 1

Source evidence

spi: fsl-cpm: Check length parity before switching to 16 bit mode

core-osv · Original source

Published 13 Jan 2026, 15:28 UTC

In the Linux kernel, the following vulnerability has been resolved: spi: fsl-cpm: Check length parity before switching to 16 bit mode Commit fc96ec826bce ("spi: fsl-cpm: Use 16 bit mode for large transfers with even size") failed to make sure that the size is really even before switching to 16 bit mode. Until recently the problem went unnoticed because kernfs uses a pre-allocated bounce buffer of size PAGE_SIZE for reading EEPROM. But commit 8ad6249c51d0 ("eeprom: at25: convert to spi-mem API") introduced an additional dynamically allocated bounce buffer whose size is exactly the size of the transfer, leading to a buffer overrun in the fsl-cpm driver when that size is odd. Add the missing length parity verification and remain in 8 bit mode when the length is not even.

osv:CVE-2025-68773

Kernel

Fixed versions: 5.10.248, 5.15.198, 6.1.160, 6.6.120, 6.12.64, 6.18.3

Complete source record
{
  "id": "f574da05a59a19c2e782b0cb4f85db1fa0a8208a18bc05595485aca6f99f782f",
  "url": "https://osv.dev/vulnerability/CVE-2025-68773",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "spi: fsl-cpm: Check length parity before switching to 16 bit mode",
    "summary": "In the Linux kernel, the following vulnerability has been resolved: spi: fsl-cpm: Check length parity before switching to 16 bit mode Commit fc96ec826bce (\"spi: fsl-cpm: Use 16 bit mode for large transfers with even size\") failed to make sure that the size is really even before switching to 16 bit mode. Until recently the problem went unnoticed because kernfs uses a pre-allocated bounce buffer of size PAGE_SIZE for reading EEPROM. But commit 8ad6249c51d0 (\"eeprom: at25: convert to spi-mem API\") introduced an additional dynamically allocated bounce buffer whose size is exactly the size of the transfer, leading to a buffer overrun in the fsl-cpm driver when that size is odd. Add the missing length parity verification and remain in 8 bit mode when the length is not even.",
    "evidence": "osv:CVE-2025-68773",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "5.10.248",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "5.15.198",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.1.160",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.6.120",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.12.64",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.18.3",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "unknown",
    "structured": {
      "id": "CVE-2025-68773",
      "aliases": [
        "CVE-2025-68773"
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "60afe299bb541a928ba39bcb4ae8d3e428d1c5a5"
                },
                {
                  "fixed": "c8f1d35076b78df61ace737e41cc1f4b7b63236c"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "4badd33929c05ed314794b95f1af1308f7222be8"
                },
                {
                  "fixed": "9c34a4a2ead00979d203a8c16bea87f0ef5291d8"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "7f6738e003b364783f3019fdf6e7645bc8dd1643"
                },
                {
                  "fixed": "837a23a11e0f734f096c7c7b0778d0e625e3dc87"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "fc96ec826bced75cc6b9c07a4ac44bbf651337ab"
                },
                {
                  "fixed": "3dd6d01384823e1bd8602873153d6fc4337ac4fe"
                },
                {
                  "fixed": "743cebcbd1b2609ec5057ab474979cef73d1b681"
                },
                {
                  "fixed": "be0b613198e6bfa104ad520397cab82ad3ec1771"
                },
                {
                  "fixed": "1417927df8049a0194933861e9b098669a95c762"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "5.10.181"
                },
                {
                  "fixed": "5.10.248"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "5.15.114"
                },
                {
                  "fixed": "5.15.198"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6.1.29"
                },
                {
                  "fixed": "6.1.160"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "4.14.316"
                },
                {
                  "fixed": "4.15"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "4.19.284"
                },
                {
                  "fixed": "4.20"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "5.4.244"
                },
                {
                  "fixed": "5.5"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6.2.16"
                },
                {
                  "fixed": "6.3"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6.3.3"
                },
                {
                  "fixed": "6.4"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "42c04316d9275ec267d36e5e9064cd56c9884148"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "dc120f2d35b030390a2bc0f94dd5f37e900cae91"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "b558275c1b040f0e5aa56c862241f9212b6118c3"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "b9d9e8856f1c83e4277403f9b4c369b322ebcb12"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "36a6d0f66c874666caf4e8be155b1be30f6231be"
                }
              ]
            }
          ],
          "versions": [
            "v5.10.247",
            "v5.10.246",
            "v5.10.245",
            "v5.10.244",
            "v5.10.243",
            "v5.10.242",
            "v5.10.241",
            "v5.10.240",
            "v5.10.239",
            "v5.10.238",
            "v5.10.237",
            "v5.10.236",
            "v5.10.235",
            "v5.10.234",
            "v5.10.233",
            "v5.10.232",
            "v5.10.231",
            "v5.10.230",
            "v5.10.229",
            "v5.10.228",
            "v5.10.227",
            "v5.10.226",
            "v5.10.225",
            "v5.10.224",
            "v5.10.223",
            "v5.10.222",
            "v5.10.221",
            "v5.10.220",
            "v5.10.219",
            "v5.10.218",
            "v5.10.217",
            "v5.10.216",
            "v5.10.215",
            "v5.10.214",
            "v5.10.213",
            "v5.10.212",
            "v5.10.211",
            "v5.10.210",
            "v5.10.209",
            "v5.10.208",
            "v5.10.207",
            "v5.10.206",
            "v5.10.205",
            "v5.10.204",
            "v5.10.203",
            "v5.10.202",
            "v5.10.201",
            "v5.10.200",
            "v5.10.199",
            "v5.10.198",
            "v5.10.197",
            "v5.10.196",
            "v5.10.195",
            "v5.10.194",
            "v5.10.193",
            "v5.10.192",
            "v5.10.191",
            "v5.10.190",
            "v5.10.189",
            "v5.10.188",
            "v5.10.187",
            "v5.10.186",
            "v5.10.185",
            "v5.10.184",
            "v5.10.183",
            "v5.10.182",
            "v5.10.181",
            "v5.15.197",
            "v5.15.196",
            "v5.15.195",
            "v5.15.194",
            "v5.15.193",
            "v5.15.192",
            "v5.15.191",
            "v5.15.190",
            "v5.15.189",
            "v5.15.188",
            "v5.15.187",
            "v5.15.186",
            "v5.15.185",
            "v5.15.184",
            "v5.15.183",
            "v5.15.182",
            "v5.15.181",
            "v5.15.180",
            "v5.15.179",
            "v5.15.178",
            "v5.15.177",
            "v5.15.176",
            "v5.15.175",
            "v5.15.174",
            "v5.15.173",
            "v5.15.172",
            "v5.15.171",
            "v5.15.170",
            "v5.15.169",
            "v5.15.168",
            "v5.15.167",
            "v5.15.166",
            "v5.15.165",
            "v5.15.164",
            "v5.15.163",
            "v5.15.162",
            "v5.15.161",
            "v5.15.160",
            "v5.15.159",
            "v5.15.158",
            "v5.15.157",
            "v5.15.156",
            "v5.15.155",
            "v5.15.154",
            "v5.15.153",
            "v5.15.152",
            "v5.15.151",
            "v5.15.150",
            "v5.15.149",
            "v5.15.148",
            "v5.15.147",
            "v5.15.146",
            "v5.15.145",
            "v5.15.144",
            "v5.15.143",
            "v5.15.142",
            "v5.15.141",
            "v5.15.140",
            "v5.15.139",
            "v5.15.138",
            "v5.15.137",
            "v5.15.136",
            "v5.15.135",
            "v5.15.134",
            "v5.15.133",
            "v5.15.132",
            "v5.15.131",
            "v5.15.130",
            "v5.15.129",
            "v5.15.128",
            "v5.15.127",
            "v5.15.126",
            "v5.15.125",
            "v5.15.124",
            "v5.15.123",
            "v5.15.122",
            "v5.15.121",
            "v5.15.120",
            "v5.15.119",
            "v5.15.118",
            "v5.15.117",
            "v5.15.116",
            "v5.15.115",
            "v5.15.114",
            "v6.1.159",
            "v6.1.158",
            "v6.1.157",
            "v6.1.156",
            "v6.1.155",
            "v6.1.154",
            "v6.1.153",
            "v6.1.152",
            "v6.1.151",
            "v6.1.150",
            "v6.1.149",
            "v6.1.148",
            "v6.1.147",
            "v6.1.146",
            "v6.1.145",
            "v6.1.144",
            "v6.1.143",
            "v6.1.142",
            "v6.1.141",
            "v6.1.140",
            "v6.1.139",
            "v6.1.138",
            "v6.1.137",
            "v6.1.136",
            "v6.1.135",
            "v6.1.134",
            "v6.1.133",
            "v6.1.132",
            "v6.1.131",
            "v6.1.130",
            "v6.1.129",
            "v6.1.128",
            "v6.1.127",
            "v6.1.126",
            "v6.1.125",
            "v6.1.124",
            "v6.1.123",
            "v6.1.122",
            "v6.1.121",
            "v6.1.120",
            "v6.1.119",
            "v6.1.118",
            "v6.1.117",
            "v6.1.116",
            "v6.1.115",
            "v6.1.114",
            "v6.1.113",
            "v6.1.112",
            "v6.1.111",
            "v6.1.110",
            "v6.1.109",
            "v6.1.108",
            "v6.1.107",
            "v6.1.106",
            "v6.1.105",
            "v6.1.104",
            "v6.1.103",
            "v6.1.102",
            "v6.1.101",
            "v6.1.100",
            "v6.1.99",
            "v6.1.98",
            "v6.1.97",
            "v6.1.96",
            "v6.1.95",
            "v6.1.94",
            "v6.1.93",
            "v6.1.92",
            "v6.1.91",
            "v6.1.90",
            "v6.1.89",
            "v6.1.88",
            "v6.1.87",
            "v6.1.86",
            "v6.1.85",
            "v6.1.84",
            "v6.1.83",
            "v6.1.82",
            "v6.1.81",
            "v6.1.80",
            "v6.1.79",
            "v6.1.78",
            "v6.1.77",
            "v6.1.76",
            "v6.1.75",
            "v6.1.74",
            "v6.1.73",
            "v6.1.72",
            "v6.1.71",
            "v6.1.70",
            "v6.1.69",
            "v6.1.68",
            "v6.1.67",
            "v6.1.66",
            "v6.1.65",
            "v6.1.64",
            "v6.1.63",
            "v6.1.62",
            "v6.1.61",
            "v6.1.60",
            "v6.1.59",
            "v6.1.58",
            "v6.1.57",
            "v6.1.56",
            "v6.1.55",
            "v6.1.54",
            "v6.1.53",
            "v6.1.52",
            "v6.1.51",
            "v6.1.50",
            "v6.1.49",
            "v6.1.48",
            "v6.1.47",
            "v6.1.46",
            "v6.1.45",
            "v6.1.44",
            "v6.1.43",
            "v6.1.42",
            "v6.1.41",
            "v6.1.40",
            "v6.1.39",
            "v6.1.38",
            "v6.1.37",
            "v6.1.36",
            "v6.1.35",
            "v6.1.34",
            "v6.1.33",
            "v6.1.32",
            "v6.1.31",
            "v6.1.30",
            "v6.1.29",
            "v4.14.336",
            "v4.14.335",
            "v4.14.334",
            "v4.14.333",
            "v4.14.332",
            "v4.14.331",
            "v4.14.330",
            "v4.14.329",
            "v4.14.328",
            "v4.14.327",
            "v4.14.326",
            "v4.14.325",
            "v4.14.324",
            "v4.14.323",
            "v4.14.322",
            "v4.14.321",
            "v4.14.320",
            "v4.14.319",
            "v4.14.318",
            "v4.14.317",
            "v4.14.316",
            "v4.19.325",
            "v4.19.324",
            "v4.19.323",
            "v4.19.322",
            "v4.19.321",
            "v4.19.320",
            "v4.19.319",
            "v4.19.318",
            "v4.19.317",
            "v4.19.316",
            "v4.19.315",
            "v4.19.314",
            "v4.19.313",
            "v4.19.312",
            "v4.19.311",
            "v4.19.310",
            "v4.19.309",
            "v4.19.308",
            "v4.19.307",
            "v4.19.306",
            "v4.19.305",
            "v4.19.304",
            "v4.19.303",
            "v4.19.302",
            "v4.19.301",
            "v4.19.300",
            "v4.19.299",
            "v4.19.298",
            "v4.19.297",
            "v4.19.296",
            "v4.19.295",
            "v4.19.294",
            "v4.19.293",
            "v4.19.292",
            "v4.19.291",
            "v4.19.290",
            "v4.19.289",
            "v4.19.288",
            "v4.19.287",
            "v4.19.286",
            "v4.19.285",
            "v4.19.284",
            "v5.4.302",
            "v5.4.301",
            "v5.4.300",
            "v5.4.299",
            "v5.4.298",
            "v5.4.297",
            "v5.4.296",
            "v5.4.295",
            "v5.4.294",
            "v5.4.293",
            "v5.4.292",
            "v5.4.291",
            "v5.4.290",
            "v5.4.289",
            "v5.4.288",
            "v5.4.287",
            "v5.4.286",
            "v5.4.285",
            "v5.4.284",
            "v5.4.283",
            "v5.4.282",
            "v5.4.281",
            "v5.4.280",
            "v5.4.279",
            "v5.4.278",
            "v5.4.277",
            "v5.4.276",
            "v5.4.275",
            "v5.4.274",
            "v5.4.273",
            "v5.4.272",
            "v5.4.271",
            "v5.4.270",
            "v5.4.269",
            "v5.4.268",
            "v5.4.267",
            "v5.4.266",
            "v5.4.265",
            "v5.4.264",
            "v5.4.263",
            "v5.4.262",
            "v5.4.261",
            "v5.4.260",
            "v5.4.259",
            "v5.4.258",
            "v5.4.257",
            "v5.4.256",
            "v5.4.255",
            "v5.4.254",
            "v5.4.253",
            "v5.4.252",
            "v5.4.251",
            "v5.4.250",
            "v5.4.249",
            "v5.4.248",
            "v5.4.247",
            "v5.4.246",
            "v5.4.245",
            "v5.4.244",
            "v6.2.16",
            "v6.3.13",
            "v6.3.12",
            "v6.3.11",
            "v6.3.10",
            "v6.3.9",
            "v6.3.8",
            "v6.3.7",
            "v6.3.6",
            "v6.3.5",
            "v6.3.4",
            "v6.3.3"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-68773.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "5.10.248"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.11.0"
                },
                {
                  "fixed": "5.15.198"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.16.0"
                },
                {
                  "fixed": "6.1.160"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.2.0"
                },
                {
                  "fixed": "6.6.120"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.4.0"
                },
                {
                  "fixed": "6.12.64"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.7.0"
                },
                {
                  "fixed": "6.18.3"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-68773.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:30.819528077Z",
      "provider": "osv",
      "references": [
        "https://cert-portal.siemens.com/productcert/html/ssa-019113.html",
        "https://cert-portal.siemens.com/productcert/html/ssa-457936.html",
        "https://git.kernel.org/stable/c/1417927df8049a0194933861e9b098669a95c762",
        "https://git.kernel.org/stable/c/3dd6d01384823e1bd8602873153d6fc4337ac4fe",
        "https://git.kernel.org/stable/c/743cebcbd1b2609ec5057ab474979cef73d1b681",
        "https://git.kernel.org/stable/c/837a23a11e0f734f096c7c7b0778d0e625e3dc87",
        "https://git.kernel.org/stable/c/9c34a4a2ead00979d203a8c16bea87f0ef5291d8",
        "https://git.kernel.org/stable/c/be0b613198e6bfa104ad520397cab82ad3ec1771",
        "https://git.kernel.org/stable/c/c8f1d35076b78df61ace737e41cc1f4b7b63236c",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/68xxx/CVE-2025-68773.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2025-68773",
        "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
      ],
      "provider_metadata": {
        "cna_assigner": "Linux",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/68xxx/CVE-2025-68773.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2025-68773",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": null
  },
  "source_id": "core-osv",
  "document_id": 497396,
  "published_at": "2026-01-13T15:28:50.686+00:00"
}