---
id: CVE-2022-49830
title: 'drm/drv: Fix potential memory leak in drm_dev_init()'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  drm/drv: Fix potential memory leak in drm_dev_init()

  drm_dev_init() will add drm_dev_init_release() as a callback. When
  drmm_add_action() failed, the release function …
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 2cbf7fc6718b9443ecd6261308c6348d8ffcccae <
    c47a823ea186263ab69cfb665327b7f72cb5e779
  - >-
    Linux >= 2cbf7fc6718b9443ecd6261308c6348d8ffcccae <
    07e56de8766fe5be67252596244b84ac0ec0de91
  - >-
    Linux >= 2cbf7fc6718b9443ecd6261308c6348d8ffcccae <
    bd8d1335e6e70a396094ef98913b513140c0b86b
  - >-
    Linux >= 2cbf7fc6718b9443ecd6261308c6348d8ffcccae <
    ff963634f7b2e0dc011349abb3fb81a0d074f443
  - Linux 5.8
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-11-05T19:50:17.817882Z'
published: '2025-05-01'
updated: '2026-11-05'
sourceUpdated: '2026-11-05T20:00:08.847Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2022-49830'
references:
  - url: 'https://git.kernel.org/stable/c/c47a823ea186263ab69cfb665327b7f72cb5e779'
  - url: 'https://git.kernel.org/stable/c/07e56de8766fe5be67252596244b84ac0ec0de91'
  - url: 'https://git.kernel.org/stable/c/bd8d1335e6e70a396094ef98913b513140c0b86b'
  - url: 'https://git.kernel.org/stable/c/ff963634f7b2e0dc011349abb3fb81a0d074f443'
tags:
  - cve.org
epss: 0.00215
epssPercentile: 0.11979
ingestedAt: '2026-11-05T22:38:31.615Z'
---

## Overview

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

drm/drv: Fix potential memory leak in drm_dev_init()

drm_dev_init() will add drm_dev_init_release() as a callback. When
drmm_add_action() failed, the release function won't be added. As the
result, the ref cnt added by device_get() in drm_dev_init() won't be put
by drm_dev_init_release(), which leads to the memleak. Use
drmm_add_action_or_reset() instead of drmm_add_action() to prevent
memleak.

unreferenced object 0xffff88810bc0c800 (size 2048):
  comm "modprobe", pid 8322, jiffies 4305809845 (age 15.292s)
  hex dump (first 32 bytes):
    e8 cc c0 0b 81 88 ff ff ff ff ff ff 00 00 00 00  ................
    20 24 3c 0c 81 88 ff ff 18 c8 c0 0b 81 88 ff ff   $<.............
  backtrace:
    [<000000007251f72d>] __kmalloc+0x4b/0x1c0
    [<0000000045f21f26>] platform_device_alloc+0x2d/0xe0
    [<000000004452a479>] platform_device_register_full+0x24/0x1c0
    [<0000000089f4ea61>] 0xffffffffa0736051
    [<00000000235b2441>] do_one_initcall+0x7a/0x380
    [<0000000001a4a177>] do_init_module+0x5c/0x230
    [<000000002bf8a8e2>] load_module+0x227d/0x2420
    [<00000000637d6d0a>] __do_sys_finit_module+0xd5/0x140
    [<00000000c99fc324>] do_syscall_64+0x3f/0x90
    [<000000004d85aa77>] entry_SYSCALL_64_after_hwframe+0x63/0xcd

## Affected

- `Linux >= 2cbf7fc6718b9443ecd6261308c6348d8ffcccae < c47a823ea186263ab69cfb665327b7f72cb5e779`
- `Linux >= 2cbf7fc6718b9443ecd6261308c6348d8ffcccae < 07e56de8766fe5be67252596244b84ac0ec0de91`
- `Linux >= 2cbf7fc6718b9443ecd6261308c6348d8ffcccae < bd8d1335e6e70a396094ef98913b513140c0b86b`
- `Linux >= 2cbf7fc6718b9443ecd6261308c6348d8ffcccae < ff963634f7b2e0dc011349abb3fb81a0d074f443`
- `Linux 5.8`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
