linux_dsm_epyc7002/drivers/media/i2c
Yang Yingliang 67a97525dd media: i2c: adv7842: fix possible use-after-free in adv7842_remove()
[ Upstream commit 4a15275b6a18597079f18241c87511406575179a ]

This driver's remove path calls cancel_delayed_work(). However, that
function does not wait until the work function finishes. This means
that the callback function may still be running after the driver's
remove function has finished, which would result in a use-after-free.

Fix by calling cancel_delayed_work_sync(), which ensures that
the work is properly cancelled, no longer running, and unable
to re-schedule itself.

Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-05-11 14:47:29 +02:00
..
adv748x media: i2c: adv748x: Implement get_mbus_config 2020-08-18 15:52:34 +02:00
cx25840 media: rc: harmonize infrared durations to microseconds 2020-09-03 16:18:55 +02:00
et8ek8 media: Kconfig files: use select for V4L2 subdevs and MC 2020-04-14 10:29:05 +02:00
m5mols media: m5mols: Check function pointer in m5mols_sensor_power 2020-09-01 14:13:27 +02:00
s5c73m3 media: Use fallthrough pseudo-keyword 2020-08-29 08:35:27 +02:00
smiapp media: Use fallthrough pseudo-keyword 2020-08-29 08:35:27 +02:00
ad5820.c media: ad5820: Add support for ad5821 and ad5823 2019-10-24 18:44:49 -03:00
ad9389b.c media: i2c: ad9389b: convert to i2c_new_dummy_device 2019-08-13 11:45:04 -03:00
adp1653.c
adv7170.c
adv7175.c
adv7180.c media: Use fallthrough pseudo-keyword 2020-08-29 08:35:27 +02:00
adv7183_regs.h
adv7183.c
adv7343_regs.h
adv7343.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
adv7393_regs.h
adv7393.c
adv7511-v4l2.c media: i2c: adv7511-v4l2: fix possible use-after-free in adv7511_remove() 2021-05-11 14:47:28 +02:00
adv7604.c media: adv7604: fix possible use-after-free in adv76xx_remove() 2021-05-11 14:47:28 +02:00
adv7842.c media: i2c: adv7842: fix possible use-after-free in adv7842_remove() 2021-05-11 14:47:29 +02:00
ak881x.c
ak7375.c
aptina-pll.c
aptina-pll.h
bt819.c media: bt819: Reduce amount of F* words in the world 2019-11-05 09:01:17 -03:00
bt856.c
bt866.c
cs53l32a.c
cs3308.c
cs5345.c
dw9714.c
dw9768.c media: i2c: dw9768: Add DW9768 VCM driver 2020-07-19 14:11:00 +02:00
dw9807-vcm.c media: i2c: Remove Alan Chiang's e-mail address 2020-09-10 14:20:39 +02:00
hi556.c media: hi556: Add support for Hi-556 sensor 2019-11-05 09:12:49 -03:00
imx214.c media: imx214: Fix stop streaming 2020-12-30 11:53:24 +01:00
imx219.c media: i2c: imx219: Selection compliance fixes 2020-12-30 11:53:29 +01:00
imx258.c media: i2c: Remove Alan Chiang's e-mail address 2020-09-10 14:20:39 +02:00
imx274.c media: imx274: fix frame interval handling 2020-09-01 14:13:27 +02:00
imx290.c media: i2c: imx290: replace msleep(10) with usleep_range(10000, 11000) 2020-07-19 14:08:30 +02:00
imx319.c
imx355.c
ir-kbd-i2c.c media: ir-kbd-i2c: convert to i2c_new_dummy_device() 2019-08-14 05:05:10 -03:00
Kconfig Linux 5.9-rc4 2020-09-07 16:13:06 +02:00
ks0127.c
ks0127.h
lm3560.c
lm3646.c media: lm3646: remove redundant assignment to variable rval 2019-10-24 18:41:31 -03:00
m52790.c
Makefile media: i2c: Add RDACM20 driver 2020-07-19 14:15:42 +02:00
max2175.c media: max2175: fix max2175_set_csm_mode() error code 2020-12-30 11:53:24 +01:00
max2175.h media: i2c: Use the correct style for SPDX License Identifier 2019-11-10 17:47:14 +01:00
max9271.c media: max9271: Fix GPIO enable/disable 2020-12-30 11:53:29 +01:00
max9271.h media: i2c: Add RDACM20 driver 2020-07-19 14:15:42 +02:00
max9286.c media: i2c: max9286: fix access to unallocated memory 2021-03-04 11:38:33 +01:00
ml86v7667.c media: i2c: Use the new get_mbus_config pad op 2020-08-18 15:35:54 +02:00
msp3400-driver.c
msp3400-driver.h
msp3400-kthreads.c media: Use fallthrough pseudo-keyword 2020-08-29 08:35:27 +02:00
mt9m001.c media: i2c: Use the new get_mbus_config pad op 2020-08-18 15:35:54 +02:00
mt9m032.c
mt9m111.c media: i2c: Use the new get_mbus_config pad op 2020-08-18 15:35:54 +02:00
mt9p031.c
mt9t001.c
mt9t112.c
mt9v011.c
mt9v032.c media: i2c: mt9v032: fix enum mbus codes and frame sizes 2020-01-04 08:09:59 +01:00
mt9v111.c media: mt9v111: constify copied structure 2020-01-23 15:48:05 +01:00
noon010pc30.c
ov772x.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
ov2640.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
ov2659.c media: i2c: ov2659: Switch to SPDX Licensing 2019-10-01 17:39:16 -03:00
ov2680.c media: ov2680: fix a typo in a function name 2019-07-25 06:44:39 -04:00
ov2685.c
ov2740.c media: i2c: ov2740: get OTP data ready before nvmem registration 2020-09-01 14:13:26 +02:00
ov5640.c media: ov5640: fix support of BT656 bus mode 2020-12-30 11:53:11 +01:00
ov5645.c media: i2c: ov5645: Fix power sequence 2019-08-15 08:08:07 -03:00
ov5647.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
ov5670.c media: i2c: ov5670: Fix PIXEL_RATE minimum value 2021-03-04 11:37:39 +01:00
ov5675.c media: ov5675: correct the maximum exposure value 2020-09-01 14:13:27 +02:00
ov5695.c media: i2c: ov5695: Fix power on and off sequences 2020-03-12 17:20:19 +01:00
ov6650.c media: Use fallthrough pseudo-keyword 2020-08-29 08:35:27 +02:00
ov7251.c
ov7640.c
ov7670.c
ov7740.c media: ov7740: use SCCB regmap 2020-09-01 14:13:27 +02:00
ov8856.c media: ov8856: Add support for 3264x2448 mode 2020-09-10 14:29:35 +02:00
ov9640.c media: Use fallthrough pseudo-keyword 2020-08-29 08:35:27 +02:00
ov9640.h
ov9650.c media: ov9650: add a sanity check 2019-08-26 14:05:09 -03:00
ov13858.c media: i2c: ov13858: Parse and register properties 2020-05-18 15:36:58 +02:00
rdacm20.c media: rdacm20: Enable GPIO1 explicitly 2020-12-30 11:53:29 +01:00
rj54n1cb0c.c
s5k4ecgx.c
s5k5baf.c media: s5k5baf: drop 'data' field in struct s5k5baf_fw 2020-10-08 14:13:28 +02:00
s5k6a3.c media: s5k6a3: Fix runtime PM imbalance on error 2020-06-23 13:18:25 +02:00
s5k6aa.c
saa711x_regs.h media: i2c: Use the correct style for SPDX License Identifier 2019-11-10 17:47:14 +01:00
saa717x.c
saa6588.c
saa6752hs.c
saa7110.c
saa7115.c
saa7127.c
saa7185.c
smiapp-pll.c
smiapp-pll.h
sony-btf-mpx.c
sr030pc30.c
st-mipid02.c media: st-mipid02: add a check for devm_gpiod_get_optional 2019-10-24 18:48:35 -03:00
tc358743_regs.h
tc358743.c media: tc358743: fix possible use-after-free in tc358743_remove() 2021-05-11 14:47:28 +02:00
tda1997x_regs.h media: i2c: Use the correct style for SPDX License Identifier 2019-11-10 17:47:14 +01:00
tda1997x.c media: i2c: tda1997: Fix possible use-after-free in tda1997x_remove() 2021-05-11 14:47:29 +02:00
tda7432.c
tda9840.c
tea6415c.c
tea6415c.h
tea6420.c
tea6420.h
ths7303.c
ths8200_regs.h
ths8200.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
tlv320aic23b.c
tvaudio.c
tvp514x_regs.h
tvp514x.c
tvp5150_reg.h media: i2c: Use the correct style for SPDX License Identifier 2019-11-10 17:47:14 +01:00
tvp5150.c media: tvp5150: Fix wrong return value of tvp5150_parse_dt() 2020-12-30 11:53:31 +01:00
tvp7002_reg.h
tvp7002.c media: tvp7002: fix uninitialized variable warning 2020-10-08 14:13:59 +02:00
tw2804.c
tw9903.c
tw9906.c
tw9910.c
uda1342.c
upd64031a.c
upd64083.c
video-i2c.c media: i2c: video-i2c: fix build errors due to 'imply hwmon' 2020-03-24 17:11:27 +01:00
vp27smpx.c
vpx3220.c media: vpx3220: make array input_vals static, makes object smaller 2019-11-05 08:48:55 -03:00
vs6624_regs.h
vs6624.c
wm8739.c
wm8775.c