e8123311cf
When the driver fails to call the dma_set_mask(), the driver will get the following splat: [ 55.853884] BUG: KASAN: use-after-free in __process_removed_driver+0x3c/0x240 [ 55.854486] Read of size 8 at addr ffff88810de60408 by task modprobe/590 [ 55.856822] Call Trace: [ 55.860327] __process_removed_driver+0x3c/0x240 [ 55.861347] bus_for_each_dev+0x102/0x160 [ 55.861681] i2c_del_driver+0x2f/0x50 This is because the driver has initialized the i2c related resources in cx23885_dev_setup() but not released them in error handling, fix this bug by modifying the error path that jumps after failing to call the dma_set_mask(). Signed-off-by: Zheyu Ma <zheyuma97@gmail.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
altera-ci.c | ||
altera-ci.h | ||
cimax2.c | ||
cimax2.h | ||
cx23885-417.c | ||
cx23885-alsa.c | ||
cx23885-av.c | ||
cx23885-av.h | ||
cx23885-cards.c | ||
cx23885-core.c | ||
cx23885-dvb.c | ||
cx23885-f300.c | ||
cx23885-f300.h | ||
cx23885-i2c.c | ||
cx23885-input.c | ||
cx23885-input.h | ||
cx23885-ioctl.c | ||
cx23885-ioctl.h | ||
cx23885-ir.c | ||
cx23885-ir.h | ||
cx23885-reg.h | ||
cx23885-vbi.c | ||
cx23885-video.c | ||
cx23885-video.h | ||
cx23885.h | ||
cx23888-ir.c | ||
cx23888-ir.h | ||
netup-eeprom.c | ||
netup-eeprom.h | ||
netup-init.c | ||
netup-init.h |