Lucene search

K
cve416baaa9-dc9f-4396-8d5f-8c081fb06d67CVE-2021-47205
HistoryApr 10, 2024 - 7:15 p.m.

CVE-2021-47205

2024-04-1019:15:48
416baaa9-dc9f-4396-8d5f-8c081fb06d67
web.nvd.nist.gov
32
linux kernel
sunxi-ng
vulnerability
clock driver
memory leak

6.3 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

8.8%

In the Linux kernel, the following vulnerability has been resolved:

clk: sunxi-ng: Unregister clocks/resets when unbinding

Currently, unbinding a CCU driver unmaps the device’s MMIO region, while
leaving its clocks/resets and their providers registered. This can cause
a page fault later when some clock operation tries to perform MMIO. Fix
this by separating the CCU initialization from the memory allocation,
and then using a devres callback to unregister the clocks and resets.

This also fixes a memory leak of the struct ccu_reset, and uses the
correct owner (the specific platform driver) for the clocks and resets.

Early OF clock providers are never unregistered, and limited error
handling is possible, so they are mostly unchanged. The error reporting
is made more consistent by moving the message inside of_sunxi_ccu_probe.

Affected configurations

Vulners
Node
linuxlinux_kernelRange5.15.05.15.5
OR
linuxlinux_kernelRange5.16.0
VendorProductVersionCPE
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

CNA Affected

[
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "unaffected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "drivers/clk/sunxi-ng/ccu-sun4i-a10.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-a100-r.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-a100.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-a64.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-h6-r.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-h6.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-h616.c",
      "drivers/clk/sunxi-ng/ccu-sun5i.c",
      "drivers/clk/sunxi-ng/ccu-sun6i-a31.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-a23.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-a33.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-a83t.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-de2.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-h3.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-r.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-r40.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-v3s.c",
      "drivers/clk/sunxi-ng/ccu-sun9i-a80-de.c",
      "drivers/clk/sunxi-ng/ccu-sun9i-a80-usb.c",
      "drivers/clk/sunxi-ng/ccu-sun9i-a80.c",
      "drivers/clk/sunxi-ng/ccu-suniv-f1c100s.c",
      "drivers/clk/sunxi-ng/ccu_common.c",
      "drivers/clk/sunxi-ng/ccu_common.h"
    ],
    "versions": [
      {
        "version": "1da177e4c3f4",
        "lessThan": "b5dd513daa70",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "1da177e4c3f4",
        "lessThan": "9bec2b9c6134",
        "status": "affected",
        "versionType": "git"
      }
    ]
  },
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "affected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "drivers/clk/sunxi-ng/ccu-sun4i-a10.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-a100-r.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-a100.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-a64.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-h6-r.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-h6.c",
      "drivers/clk/sunxi-ng/ccu-sun50i-h616.c",
      "drivers/clk/sunxi-ng/ccu-sun5i.c",
      "drivers/clk/sunxi-ng/ccu-sun6i-a31.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-a23.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-a33.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-a83t.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-de2.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-h3.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-r.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-r40.c",
      "drivers/clk/sunxi-ng/ccu-sun8i-v3s.c",
      "drivers/clk/sunxi-ng/ccu-sun9i-a80-de.c",
      "drivers/clk/sunxi-ng/ccu-sun9i-a80-usb.c",
      "drivers/clk/sunxi-ng/ccu-sun9i-a80.c",
      "drivers/clk/sunxi-ng/ccu-suniv-f1c100s.c",
      "drivers/clk/sunxi-ng/ccu_common.c",
      "drivers/clk/sunxi-ng/ccu_common.h"
    ],
    "versions": [
      {
        "version": "5.15.5",
        "lessThanOrEqual": "5.15.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.16",
        "lessThanOrEqual": "*",
        "status": "unaffected",
        "versionType": "original_commit_for_fix"
      }
    ]
  }
]

6.3 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

8.8%