linux-uconsole/drivers
Alexandre Belloni 42a929edf5 rtc: disable uie before setting time and enable after
commit 7e7c005b4b upstream.

When setting the time in the future with the uie timer enabled,
rtc_timer_do_work will loop for a while because the expiration of the uie
timer was way before the current RTC time and a new timer will be enqueued
until the current rtc time is reached.

If the uie timer is enabled, disable it before setting the time and enable
it after expiring current timers (which may actually be an alarm).

This is the safest thing to do to ensure the uie timer is still
synchronized with the RTC, especially in the UIE emulation case.

Reported-by: syzbot+08116743f8ad6f9a6de7@syzkaller.appspotmail.com
Fixes: 6610e0893b ("RTC: Rework RTC code to use timerqueue for events")
Link: https://lore.kernel.org/r/20191020231320.8191-1-alexandre.belloni@bootlin.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-12-17 20:35:43 +01:00
..
accessibility
acpi ACPI: PM: Avoid attaching ACPI PM domain to certain devices 2019-12-17 20:35:06 +01:00
amba
android binder: Handle start==NULL in binder_update_page_range() 2019-12-13 08:52:52 +01:00
ata ata: ahci: mvebu: do Armada 38x configuration only on relevant SoCs 2019-12-05 09:21:06 +01:00
atm atm: zatm: Fix empty body Clang warnings 2019-12-01 09:16:41 +01:00
auxdisplay auxdisplay: panel: need to delete scan_timer when misc_register fails in panel_attach 2019-09-06 10:21:56 +02:00
base drivers/base/platform.c: kmemleak ignore a known leak 2019-12-05 09:21:04 +01:00
bcma
block drbd: Change drbd_request_detach_interruptible's return type to int 2019-12-17 20:35:31 +01:00
bluetooth Bluetooth: hci_bcm: Handle specific unknown packets after firmware loading 2019-12-05 09:20:39 +01:00
bus bus: ti-sysc: Fix getting optional clocks in clock_roles 2019-12-13 08:51:23 +01:00
cdrom cdrom: don't attempt to fiddle with cdo->capability 2019-12-01 09:16:20 +01:00
char ppdev: fix PPGETTIME/PPSETTIME ioctls 2019-12-17 20:35:13 +01:00
clk clk: renesas: rcar-gen3: Set state when registering SD clocks 2019-12-13 08:52:32 +01:00
clocksource clocksource/drivers/fttmr010: Fix invalid interrupt register access 2019-12-05 09:20:38 +01:00
connector
cpufreq cpufreq: powernv: fix stack bloat and hard limit on number of CPUs 2019-12-17 20:35:03 +01:00
cpuidle cpuidle: Do not unset the driver if it is there already 2019-12-17 20:35:00 +01:00
crypto crypto: ccp - fix uninitialized list head 2019-12-13 08:52:47 +01:00
dax
dca
devfreq PM / devfreq: Lock devfreq in trans_stat_show 2019-12-17 20:35:03 +01:00
dio
dma dmaengine: dw-dmac: implement dma protection control setting 2019-12-13 08:51:43 +01:00
dma-buf dma-buf/sw_sync: Synchronize signal vs syncpt free 2019-10-07 18:57:04 +02:00
edac EDAC, thunderx: Fix memory leak in thunderx_l2c_threaded_isr() 2019-12-01 09:16:18 +01:00
eisa
extcon extcon: max8997: Fix lack of path setting in USB device mode 2019-12-13 08:51:15 +01:00
firewire
firmware firmware: qcom: scm: Ensure 'a0' status code is treated as signed 2019-12-17 20:35:42 +01:00
fmc
fpga fpga: altera-ps-spi: Fix getting of optional confd gpio 2019-09-21 07:16:53 +02:00
fsi fsi: scom: Don't abort operations for minor errors 2019-09-06 10:22:19 +02:00
gnss
gpio gpio: raspberrypi-exp: decrease refcount on firmware dt node 2019-12-05 09:20:24 +01:00
gpu drm/i810: Prevent underflow in ioctl 2019-12-13 08:52:44 +01:00
hid HID: core: check whether Usage Page item is after Usage ID items 2019-12-05 09:21:34 +01:00
hsi
hv vmbus: keep pointer to ring buffer page 2019-11-20 18:47:31 +01:00
hwmon hwmon: (npcm-750-pwm-fan) Change initial pwm target to 255 2019-11-24 08:21:01 +01:00
hwspinlock
hwtracing intel_th: pci: Add Tiger Lake CPU support 2019-12-17 20:35:02 +01:00
i2c i2c: imx: don't print error message on probe defer 2019-12-13 08:51:57 +01:00
ide
idle
iio iio: imu: inv_mpu6050: fix temperature reporting using bad unit 2019-12-17 20:34:37 +01:00
infiniband RDMA/qib: Validate ->show()/store() callbacks before calling them 2019-12-13 08:52:50 +01:00
input Input: Fix memory leak in psxpad_spi_probe 2019-12-13 08:52:40 +01:00
iommu iommu/amd: Fix line-break in error log reporting 2019-12-13 08:52:00 +01:00
ipack
irqchip irqchip/irq-mvebu-icu: Fix wrong private data retrieval 2019-11-24 08:19:40 +01:00
isdn staging: gigaset: add endpoint-type sanity check 2019-12-17 20:34:33 +01:00
leds led: triggers: Fix a memory leak bug 2019-10-05 13:09:45 +02:00
lightnvm lightnvm: pblk: consider max hw sectors supported for max_write_pgs 2019-11-24 08:20:52 +01:00
macintosh macintosh/windfarm_smu_sat: Fix debug output 2019-12-01 09:16:37 +01:00
mailbox mailbox: mailbox-test: fix null pointer if no mmio 2019-12-05 09:21:35 +01:00
mcb
md md: improve handling of bio with REQ_PREFLUSH in md_flush_request() 2019-12-17 20:34:55 +01:00
media media: vimc: fix component match compare 2019-12-17 20:35:38 +01:00
memory memory: omap-gpmc: Get the header of the enum 2019-12-05 09:20:29 +01:00
memstick memstick: jmb38x_ms: Fix an error handling path in 'jmb38x_ms_probe()' 2019-10-29 09:20:07 +01:00
message
mfd mfd: max8997: Enale irq-wakeup unconditionally 2019-12-01 09:16:57 +01:00
misc altera-stapl: check for a null key before strcasecmp'ing it 2019-12-13 08:51:56 +01:00
mmc mmc: host: omap_hsmmc: add code for special init of wl1251 to get rid of pandora_wl1251_init_card 2019-12-17 20:35:11 +01:00
mtd mtd: spear_smi: Fix Write Burst mode 2019-12-17 20:34:42 +01:00
mux
net ath10k: fix fw crash by moving chip reset after napi disabled 2019-12-17 20:35:39 +01:00
nfc NFC: nxp-nci: Fix NULL pointer dereference after I2C communication error 2019-12-13 08:51:03 +01:00
ntb ntb: intel: fix return value for ndev_vec_mask() 2019-12-01 09:17:13 +01:00
nubus
nvdimm libnvdimm/region: Initialize bad block for volatile namespaces 2019-10-11 18:21:20 +02:00
nvme nvme: Free ctrl device name on init failure 2019-12-13 08:51:53 +01:00
nvmem nvmem: core: return error code instead of NULL from nvmem_device_get 2019-11-20 18:46:31 +01:00
of of: unittest: initialize args before calling of_*parse_*() 2019-12-01 09:17:30 +01:00
opp OPP: Return error on error from dev_pm_opp_get_opp_count() 2019-11-24 08:20:06 +01:00
oprofile
parisc parisc: Disable HP HSC-PCI Cards to prevent kernel crash 2019-10-05 13:10:04 +02:00
parport
pci ACPI / hotplug / PCI: Allocate resources directly under the non-hotplug bridge 2019-12-17 20:35:04 +01:00
pcmcia
perf drivers/perf: arm_pmu: Fix failure path in PM notifier 2019-08-06 19:06:55 +02:00
phy phy: renesas: rcar-gen3-usb2: Fix sysfs interface of "role" 2019-12-17 20:34:45 +01:00
pinctrl pinctrl: samsung: Fix device node refcount leaks in S3C64xx wakeup controller init 2019-12-17 20:35:11 +01:00
platform platform/x86: hp-wmi: Fix ACPI errors caused by passing 0 as input size 2019-12-05 09:21:35 +01:00
pnp
power power: supply: cpcap-battery: Fix signed counter sample register 2019-12-17 20:35:37 +01:00
powercap
pps drivers/pps/pps.c: clear offset flags in PPS_SETPARAMS ioctl 2019-08-04 09:30:56 +02:00
ps3
ptp
pwm pwm: Clear chip_data in pwm_put() 2019-12-05 09:21:29 +01:00
rapidio drivers/rapidio/devices/rio_mport_cdev.c: NUL terminate some strings 2019-08-06 19:06:52 +02:00
ras
regulator regulator: 88pm800: fix warning same module names 2019-12-17 20:35:39 +01:00
remoteproc remoteproc: qcom: q6v5: Fix a race condition on fatal crash 2019-11-24 08:20:29 +01:00
reset reset: Fix memory leak in reset_control_array_put() 2019-12-05 09:19:36 +01:00
rpmsg rpmsg: glink: smem: Support rx peak for size less than 4 bytes 2019-11-24 08:20:05 +01:00
rtc rtc: disable uie before setting time and enable after 2019-12-17 20:35:43 +01:00
s390 scsi: zfcp: trace channel log even for FCP command responses 2019-12-17 20:35:22 +01:00
sbus
scsi scsi: hisi_sas: Reject setting programmed minimum linkrate > 1.5G 2019-12-17 20:35:35 +01:00
sfi
sh
siox
slimbus slimbus: ngd: Fix build error on x86 2019-12-13 08:51:54 +01:00
sn
soc soc: renesas: r8a77990-sysc: Fix initialization order of 3DG-{A,B} 2019-12-13 08:52:29 +01:00
soundwire soundwire: intel: Fix uninitialized adev deref 2019-11-20 18:45:22 +01:00
spi spi: atmel: Fix CS high support 2019-12-13 08:52:48 +01:00
spmi
ssb
staging erofs: zero out when listxattr is called with no xattr 2019-12-17 20:35:00 +01:00
target scsi: target/tcmu: Fix queue_cmd_ring() declaration 2019-12-05 09:19:47 +01:00
tc
tee tee: optee: add missing of_node_put after of_device_is_available 2019-11-24 08:19:08 +01:00
thermal thermal: Fix deadlock in thermal thermal_zone_device_check 2019-12-13 08:52:50 +01:00
thunderbolt thunderbolt: Power cycle the router if NVM authentication fails 2019-12-05 09:21:27 +01:00
tty vcs: prevent write access to vcsu devices 2019-12-13 08:52:51 +01:00
uio vmbus: keep pointer to ring buffer page 2019-11-20 18:47:31 +01:00
usb usb: typec: fix use after free in typec_register_port() 2019-12-17 20:35:27 +01:00
uwb
vfio vfio/spapr_tce: Get rid of possible infinite loop 2019-12-05 09:20:43 +01:00
vhost vhost/vsock: split packets to send using multiple buffers 2019-12-01 09:16:08 +01:00
video video/hdmi: Fix AVI bar unpack 2019-12-17 20:35:17 +01:00
virt virt: vbox: fix memory leak in hgcm_call_preprocess_linaddr 2019-11-06 13:06:04 +01:00
virtio virtio-balloon: fix managed page counts when migrating pages between zones 2019-12-17 20:34:43 +01:00
visorbus
vlynq
vme
w1 w1: IAD Register is yet readable trough iad sys file. Fix snprintf (%u for unsigned, count for max size). 2019-12-01 09:16:22 +01:00
watchdog watchdog: aspeed: Fix clock behaviour for ast2600 2019-12-13 08:52:54 +01:00
xen pvcalls-front: don't return error when the ring is full 2019-12-17 20:35:32 +01:00
zorro
Kconfig
Makefile