android_kernel_samsung_a7y1.../drivers/rtc
Sven Van Asbroeck 059fbb0444 rtc: 88pm860x: prevent use-after-free on device remove
[ Upstream commit f22b1ba15ee5785aa028384ebf77dd39e8e47b70 ]

The device's remove() attempts to shut down the delayed_work scheduled
on the kernel-global workqueue by calling flush_scheduled_work().

Unfortunately, flush_scheduled_work() does not prevent the delayed_work
from re-scheduling itself. The delayed_work might run after the device
has been removed, and touch the already de-allocated info structure.
This is a potential use-after-free.

Fix by calling cancel_delayed_work_sync() during remove(): this ensures
that the delayed work is properly cancelled, is no longer running, and
is not able to re-schedule itself.

This issue was detected with the help of Coccinelle.

Signed-off-by: Sven Van Asbroeck <TheSven73@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-04-06 18:15:42 +02:00
..
class.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
hctosys.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
interface.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
Kconfig A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
Makefile A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
power-on-alarm.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-88pm80x.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-88pm860x.c rtc: 88pm860x: prevent use-after-free on device remove 2020-04-06 18:15:42 +02:00
rtc-ab-b5ze-s3.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ab3100.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ab8500.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-abx80x.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-armada38x.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-as3722.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-at32ap700x.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-at91rm9200.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-at91rm9200.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-at91sam9.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-au1xxx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-bfin.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-bq32k.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-bq4802.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-cmos.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-coh901331.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-core.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-da9052.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-da9055.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-da9063.c rtc: da9063: set uie_unsupported when relevant 2020-04-06 16:42:17 +02:00
rtc-davinci.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-dev.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-digicolor.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-dm355evm.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1216.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1286.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1302.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1305.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1307.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1343.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1347.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1374.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1390.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1511.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1553.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1672.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1685.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds1742.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds2404.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds3232.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ds3234.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-efi-platform.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-efi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-em3027.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ep93xx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-fm3130.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-gemini.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-generic.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-goldfish.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-hid-sensor-time.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-hym8563.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-imxdi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-isl1208.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-isl12022.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-isl12057.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-jz4740.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-lib.c rtc: Fix overflow when converting time64_t to rtc_time 2020-04-06 11:45:55 +02:00
rtc-lp8788.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-lpc24xx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-lpc32xx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ls1x.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-m41t80.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-m41t93.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-m41t94.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-m48t35.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-m48t59.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-m48t86.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-max6900.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-max6902.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-max8907.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-max8925.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-max8997.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-max8998.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-max77686.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-max77802.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-mc13xxx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-mcp795.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-moxart.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-mpc5121.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-mrst.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-msm6242.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-mt6397.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-mv.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-mxc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-nuc900.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-omap.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-opal.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-palmas.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pcap.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pcf2123.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pcf2127.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pcf8523.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pcf8563.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pcf8583.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pcf50633.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pcf85063.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pl030.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pl031.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pm8xxx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-proc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-ps3.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-puv3.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-pxa.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-r9701.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-rc5t583.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-rk808.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-rp5c01.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-rs5c313.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-rs5c348.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-rs5c372.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-rv3029c2.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-rv8803.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-rx4581.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-rx8025.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-rx8581.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-s2mps17.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-s2mpu07.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-s2mpu08.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-s3c.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-s3c.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-s5m.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-s35390a.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-sa1100.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-sa1100.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-sec.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-sh.c rtc: sh: Fix invalid alarm warning for non-enabled alarm 2020-04-06 16:42:08 +02:00
rtc-sirfsoc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-snvs.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-spear.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-st-lpc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-starfire.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-stk17ta8.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-stmp3xxx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-sun4v.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-sun6i.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-sunxi.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-sysfs.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-tegra.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-test.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-tile.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-tps6586x.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-tps65910.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-tps80031.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-twl.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-tx4939.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-v3020.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-vr41xx.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-vt8500.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-wm831x.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-wm8350.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-x1205.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-xgene.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtc-zynqmp.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
systohc.c A750FXXU4CTBC 2020-03-27 21:51:54 +05:30