Loading
media: dvbdev: prevent the risk of out of memory access
stable inclusion from stable-v5.10.230 commit a4a17210c03ade1c8d9a9f193a105654b7a05c11 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IB5KR8 CVE: CVE-2024-53063 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=a4a17210c03ade1c8d9a9f193a105654b7a05c11 -------------------------------- [ Upstream commit 972e63e895abbe8aa1ccbdbb4e6362abda7cd457 ] The dvbdev contains a static variable used to store dvb minors. The behavior of it depends if CONFIG_DVB_DYNAMIC_MINORS is set or not. When not set, dvb_register_device() won't check for boundaries, as it will rely that a previous call to dvb_register_adapter() would already be enforcing it. On a similar way, dvb_device_open() uses the assumption that the register functions already did the needed checks. This can be fragile if some device ends using different calls. This also generate warnings on static check analysers like Coverity. So, add explicit guards to prevent potential risk of OOM issues. Fixes: 5dd3f307 ("V4L/DVB (9361): Dynamic DVB minor allocation") Signed-off-by:Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Signed-off-by:
Sasha Levin <sashal@kernel.org> Signed-off-by:
Zicheng Qu <quzicheng@huawei.com>