CVE-2026-64236 (GCVE-0-2026-64236)

Vulnerability from cvelistv5 – Published: 2026-07-24 15:27 – Updated: 2026-07-24 15:27
VLAI
Title
i2c: davinci: fix division by zero on missing clock-frequency
Summary
In the Linux kernel, the following vulnerability has been resolved: i2c: davinci: fix division by zero on missing clock-frequency When the 'clock-frequency' property is missing from the device tree, the driver falls back to DAVINCI_I2C_DEFAULT_BUS_FREQ. However, this macro was defined in kHz (100), whereas the device tree property is expected in Hz. The probe function divided the fallback value by 1000, causing integer truncation that resulted in dev->bus_freq = 0. This triggered a deterministic division-by-zero kernel panic when calculating clock dividers later in the probe sequence. Fix this by redefining DAVINCI_I2C_DEFAULT_BUS_FREQ in Hz (100000) to match the expected device tree property unit, allowing the existing division logic to work correctly for both cases.
Severity
No CVSS data available.
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: b04ce63859793e3439b394976b8d29e785d4d69a , < 3f43865cb64dd7cb50efae1281a95585617b12a1 (git)
Affected: b04ce63859793e3439b394976b8d29e785d4d69a , < 9b694bc0e1831cbc5c3bbfd1b156ec719128f7d9 (git)
Affected: b04ce63859793e3439b394976b8d29e785d4d69a , < 030675aa54cf757769b3db65642433d626b3ed7c (git)
Create a notification for this product.
Linux Linux Affected: 6.14
Unaffected: 0 , < 6.14 (semver)
Unaffected: 6.18.35 , ≤ 6.18.* (semver)
Unaffected: 7.0.12 , ≤ 7.0.* (semver)
Unaffected: 7.1 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/i2c/busses/i2c-davinci.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "3f43865cb64dd7cb50efae1281a95585617b12a1",
              "status": "affected",
              "version": "b04ce63859793e3439b394976b8d29e785d4d69a",
              "versionType": "git"
            },
            {
              "lessThan": "9b694bc0e1831cbc5c3bbfd1b156ec719128f7d9",
              "status": "affected",
              "version": "b04ce63859793e3439b394976b8d29e785d4d69a",
              "versionType": "git"
            },
            {
              "lessThan": "030675aa54cf757769b3db65642433d626b3ed7c",
              "status": "affected",
              "version": "b04ce63859793e3439b394976b8d29e785d4d69a",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/i2c/busses/i2c-davinci.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.14"
            },
            {
              "lessThan": "6.14",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.35",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.0.*",
              "status": "unaffected",
              "version": "7.0.12",
              "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": "6.18.35",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.0.12",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ni2c: davinci: fix division by zero on missing clock-frequency\n\nWhen the \u0027clock-frequency\u0027 property is missing from the device tree,\nthe driver falls back to DAVINCI_I2C_DEFAULT_BUS_FREQ. However, this\nmacro was defined in kHz (100), whereas the device tree property is\nexpected in Hz.\n\nThe probe function divided the fallback value by 1000, causing\ninteger truncation that resulted in dev-\u003ebus_freq = 0. This triggered\na deterministic division-by-zero kernel panic when calculating clock\ndividers later in the probe sequence.\n\nFix this by redefining DAVINCI_I2C_DEFAULT_BUS_FREQ in Hz (100000)\nto match the expected device tree property unit, allowing the existing\ndivision logic to work correctly for both cases."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-07-24T15:27:41.371Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/3f43865cb64dd7cb50efae1281a95585617b12a1"
        },
        {
          "url": "https://git.kernel.org/stable/c/9b694bc0e1831cbc5c3bbfd1b156ec719128f7d9"
        },
        {
          "url": "https://git.kernel.org/stable/c/030675aa54cf757769b3db65642433d626b3ed7c"
        }
      ],
      "title": "i2c: davinci: fix division by zero on missing clock-frequency",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-64236",
    "datePublished": "2026-07-24T15:27:41.371Z",
    "dateReserved": "2026-07-19T15:36:31.771Z",
    "dateUpdated": "2026-07-24T15:27:41.371Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-64236",
      "date": "2026-07-31",
      "epss": "0.00155",
      "percentile": "0.05183"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-64236\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-07-24T16:16:52.860\",\"lastModified\":\"2026-07-30T14:59:47.950\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ni2c: davinci: fix division by zero on missing clock-frequency\\n\\nWhen the \u0027clock-frequency\u0027 property is missing from the device tree,\\nthe driver falls back to DAVINCI_I2C_DEFAULT_BUS_FREQ. However, this\\nmacro was defined in kHz (100), whereas the device tree property is\\nexpected in Hz.\\n\\nThe probe function divided the fallback value by 1000, causing\\ninteger truncation that resulted in dev-\u003ebus_freq = 0. This triggered\\na deterministic division-by-zero kernel panic when calculating clock\\ndividers later in the probe sequence.\\n\\nFix this by redefining DAVINCI_I2C_DEFAULT_BUS_FREQ in Hz (100000)\\nto match the expected device tree property unit, allowing the existing\\ndivision logic to work correctly for both cases.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/i2c/busses/i2c-davinci.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"b04ce63859793e3439b394976b8d29e785d4d69a\",\"lessThan\":\"3f43865cb64dd7cb50efae1281a95585617b12a1\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b04ce63859793e3439b394976b8d29e785d4d69a\",\"lessThan\":\"9b694bc0e1831cbc5c3bbfd1b156ec719128f7d9\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b04ce63859793e3439b394976b8d29e785d4d69a\",\"lessThan\":\"030675aa54cf757769b3db65642433d626b3ed7c\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/i2c/busses/i2c-davinci.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"6.14\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"6.14\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.35\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.0.12\",\"lessThanOrEqual\":\"7.0.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/030675aa54cf757769b3db65642433d626b3ed7c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/3f43865cb64dd7cb50efae1281a95585617b12a1\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/9b694bc0e1831cbc5c3bbfd1b156ec719128f7d9\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "current_release_date": "2026-07-28T12:19:53+00:00",
      "cve": "CVE-2026-64236",
      "id": "CVE-2026-64236",
      "initial_release_date": "2026-07-24T00:00:00+00:00",
      "product_status:known_not_affected": "1",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: i2c: davinci: fix division by zero on missing clock-frequency",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-64236.json",
      "version": "3"
    }
  }
}



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…

Loading…