Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: media: saa7134: Fix a possible memory leak in saa7134_video_init1 In saa7134_video_init1(), the return value of the first saa7134_pgtable_alloc() is not checked. If it fails, the function continues as if successful, leaving the driver with an invalid page table. Additionally, if vb2_queue_init() for the VBI queue fails after the video queue page table has been allocated, the allocated memory is not freed before returning. The second saa7134_pgtable_alloc() also lacks a return value check. Errors occur during device probing before the device is fully registered, the normal cleanup path in saa7134_finidev() is not executed, leading to memory leaks and potential use of uninitialized DMA resources. Check the return value of both saa7134_pgtable_alloc() calls and propagate errors. On failure of any later step, free allocated page tables to avoid memory leaks. Ensure control handlers are also released on error to prevent further resource leakage. Found by code review.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected a00e68888d5d2b583b13d7d58204a27207af95fd before e773b1d4bd191e7520bf9e02cb676d62c1b20556; affected a00e68888d5d2b583b13d7d58204a27207af95fd before 44e16e3e022bf4a26adf03bc05a6dd5ffc34ef6d; affected a00e68888d5d2b583b13d7d58204a27207af95fd before 34082a48376fd225a5c3d971c8962eb1320a54e0; affected a00e68888d5d2b583b13d7d58204a27207af95fd before 134c979dd721e22f196d71026432ee37d1f5cc38; affected a00e68888d5d2b583b13d7d58204a27207af95fd before e1ef361ee31d1dba5dcae2cdd50f9c1352df0c23; affected a00e68888d5d2b583b13d7d58204a27207af95fd before b7936e8cbec1b96b126058eeb005e5b9111df38e; affected a00e68888d5d2b583b13d7d58204a27207af95fd before 1731dd61b6c0b7435c139951d2b7eada6c9667a8; affected a00e68888d5d2b583b13d7d58204a27207af95fd before f86ed548386e3050e5f8f25b450d09dc009d9a88 |
| Linux / Linux | affected 3.16; unaffected 0 before 3.16; unaffected 5.10.265 through 5.10.*; unaffected 5.15.216 through 5.15.*; unaffected 6.1.183 through 6.1.*; unaffected 6.6.148 through 6.6.*; unaffected 6.12.101 through 6.12.*; unaffected 6.18.42 through 6.18.*; unaffected 7.1.6 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/e773b1d4bd191e7520bf9e02cb676d62c1b20556
- https://git.kernel.org/stable/c/44e16e3e022bf4a26adf03bc05a6dd5ffc34ef6d
- https://git.kernel.org/stable/c/34082a48376fd225a5c3d971c8962eb1320a54e0
- https://git.kernel.org/stable/c/134c979dd721e22f196d71026432ee37d1f5cc38
- https://git.kernel.org/stable/c/e1ef361ee31d1dba5dcae2cdd50f9c1352df0c23
- https://git.kernel.org/stable/c/b7936e8cbec1b96b126058eeb005e5b9111df38e
- https://git.kernel.org/stable/c/1731dd61b6c0b7435c139951d2b7eada6c9667a8
- https://git.kernel.org/stable/c/f86ed548386e3050e5f8f25b450d09dc009d9a88