Description
In the Linux kernel, the following vulnerability has been resolved: media: cedrus: fix memory leak in cedrus_init_ctrls() In cedrus_init_ctrls(), the V4L2 control handler is initialized before allocating memory for ctx->ctrls. If this allocation fails, the function returns -ENOMEM without freeing the previously allocated handler resources, leading to a memory leak. Fix this by calling v4l2_ctrl_handler_free() on the ctx->ctrls allocation failure path. The bug was first flagged by an experimental analysis tool we are developing for kernel memory-management bugs while analyzing v6.13-rc1. The tool is still under development and is not yet publicly available. Manual inspection confirms that the bug is still present in v7.1.1. An x86_64 allyesconfig build showed no new warnings. As we do not have an Allwinner SoC or board with a Cedrus VPU available to test with, no runtime testing was able to be performed.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
50e761516f2b8c0cdeb31a8c6ca1b4ef98cd13f1 to < 6fabacc3b79a528450aef4c32464da2ec681049eaffected50e761516f2b8c0cdeb31a8c6ca1b4ef98cd13f1 to < 729a1ffab968b3c493f61d1cd683f5bafec500eaaffected50e761516f2b8c0cdeb31a8c6ca1b4ef98cd13f1 to < ce5693b6e3a693fcdc3800af309363f6250104c8affected50e761516f2b8c0cdeb31a8c6ca1b4ef98cd13f1 to < 22441be29ec27c693f40c1ef499093275ef529d1affected50e761516f2b8c0cdeb31a8c6ca1b4ef98cd13f1 to < 79fd0b0161506fc9507bf7a6fe4c975a857a5be8affected50e761516f2b8c0cdeb31a8c6ca1b4ef98cd13f1 to < f78cf36cabf911da348ea80e4e9f430d74f6905caffected50e761516f2b8c0cdeb31a8c6ca1b4ef98cd13f1 to < 81aa608ac3a56cdd4aab0bd12442ed529a24ba31affected50e761516f2b8c0cdeb31a8c6ca1b4ef98cd13f1 to < 9df2fbe563194da1967a5db083442186c1323efeaffected
Linux Linux
Default version status: affected
4.20affected0 to < 4.20unaffected5.10.270 to ≤ 5.10.*unaffected5.15.221 to ≤ 5.15.*unaffected6.1.188 to ≤ 6.1.*unaffected6.6.157 to ≤ 6.6.*unaffected6.12.110 to ≤ 6.12.*unaffected6.18.51 to ≤ 6.18.*unaffected7.2.5 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/6fabacc3b79a528450aef4c32464da2ec681049e ↗
- https://git.kernel.org/stable/c/729a1ffab968b3c493f61d1cd683f5bafec500ea ↗
- https://git.kernel.org/stable/c/ce5693b6e3a693fcdc3800af309363f6250104c8 ↗
- https://git.kernel.org/stable/c/22441be29ec27c693f40c1ef499093275ef529d1 ↗
- https://git.kernel.org/stable/c/79fd0b0161506fc9507bf7a6fe4c975a857a5be8 ↗
- https://git.kernel.org/stable/c/f78cf36cabf911da348ea80e4e9f430d74f6905c ↗
- https://git.kernel.org/stable/c/81aa608ac3a56cdd4aab0bd12442ed529a24ba31 ↗
- https://git.kernel.org/stable/c/9df2fbe563194da1967a5db083442186c1323efe ↗