linux/drivers/base/power
Viresh Kumar 1fad17fb1b PM / wakeup: Rework wakeup source timer cancellation
If wakeup_source_add() is called right after wakeup_source_remove()
for the same wakeup source, timer_setup() may be called for a
potentially scheduled timer which is incorrect.

To avoid that, move the wakeup source timer cancellation from
wakeup_source_drop() to wakeup_source_remove().

Moreover, make wakeup_source_remove() clear the timer function after
canceling the timer to let wakeup_source_not_registered() treat
unregistered wakeup sources in the same way as the ones that have
never been registered.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Cc: 4.4+ <stable@vger.kernel.org> # 4.4+
[ rjw: Subject, changelog, merged two patches together ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2019-03-12 09:40:48 +01:00
..
clock_ops.c PM: clock_ops: fix missing clk_prepare() return value check 2019-01-18 11:47:07 +01:00
common.c PM / Domains: Mark "name" const in dev_pm_domain_attach_by_name() 2019-02-15 11:36:38 +01:00
domain_governor.c PM / QoS: Fix device resume latency framework 2017-11-08 12:14:51 +01:00
domain.c PM / Domains: Mark "name" const in genpd_dev_pm_attach_by_name() 2019-02-15 11:36:15 +01:00
generic_ops.c PM / sleep: Remove pm_complete_with_resume_check() 2017-10-11 15:40:29 +02:00
main.c PM / core: Add support to skip power management in device/driver model 2019-02-19 10:42:43 +01:00
Makefile Merge branches 'pm-cpufreq-sched' and 'pm-opp' 2017-11-13 01:40:52 +01:00
power.h PM / core: Drop unused internal inline functions for sysfs 2018-05-10 11:55:12 +02:00
qos.c PM / QoS: Fix device resume latency framework 2017-11-08 12:14:51 +01:00
runtime.c Merge back earlier PM core material for v5.1. 2019-02-24 21:20:27 +01:00
sysfs.c PM / core: Add support to skip power management in device/driver model 2019-02-19 10:42:43 +01:00
trace.c PM: Switch to use %ptR 2018-12-10 22:40:18 +01:00
wakeirq.c PM / wakeirq: Add wakeup name to dedicated wake irqs 2018-02-26 23:23:37 +01:00
wakeup.c PM / wakeup: Rework wakeup source timer cancellation 2019-03-12 09:40:48 +01:00