Revision d81916910f7498fe7a768697e0101d488f9fe665 authored by Yang Yingliang on 29 October 2022, 08:29:31 UTC, committed by Huacai Chen on 29 October 2022, 08:29:31 UTC
Currently the return value of 'sub_driver->init' is not checked. If
sparse_keymap_setup() called in the init function fails, 'generic_
inputdev' is freed, then it will lead a UAF when using it in generic_
acpi_laptop_init(). Fix it by checking the return value and setting
generic_inputdev to NULL after free, so as to avoid double free it.

The error code in generic_subdriver_init() is always negative, so the
return of generic_subdriver_init() can be simplified.

Fixes: 6246ed09111f ("LoongArch: Add ACPI-based generic laptop driver")
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
1 parent fbe605a
History
File Mode Size
Kconfig -rw-r--r-- 5.7 KB
Makefile -rw-r--r-- 1.8 KB
atmel-classd.c -rw-r--r-- 16.5 KB
atmel-classd.h -rw-r--r-- 3.6 KB
atmel-i2s.c -rw-r--r-- 19.7 KB
atmel-pcm-dma.c -rw-r--r-- 3.5 KB
atmel-pcm-pdc.c -rw-r--r-- 9.5 KB
atmel-pcm.h -rw-r--r-- 2.7 KB
atmel-pdmic.c -rw-r--r-- 20.2 KB
atmel-pdmic.h -rw-r--r-- 1.9 KB
atmel_ssc_dai.c -rw-r--r-- 22.9 KB
atmel_ssc_dai.h -rw-r--r-- 2.6 KB
atmel_wm8904.c -rw-r--r-- 5.0 KB
mchp-i2s-mcc.c -rw-r--r-- 30.5 KB
mchp-pdmc.c -rw-r--r-- 27.8 KB
mchp-spdifrx.c -rw-r--r-- 25.5 KB
mchp-spdiftx.c -rw-r--r-- 21.8 KB
mikroe-proto.c -rw-r--r-- 4.4 KB
sam9g20_wm8731.c -rw-r--r-- 5.3 KB
sam9x5_wm8731.c -rw-r--r-- 5.2 KB
tse850-pcm5142.c -rw-r--r-- 12.7 KB

back to top