https://github.com/torvalds/linux
Revision c86d06ba2818c5126078cb0cf4e0175ec381045b authored by Tejun Heo on 05 September 2016, 12:38:13 UTC, committed by Rafael J. Wysocki on 05 September 2016, 13:07:53 UTC
of_clk_init() ends up calling into pm_qos_update_request() very early
during boot where irq is expected to stay disabled.
pm_qos_update_request() uses cancel_delayed_work_sync() which
correctly assumes that irq is enabled on invocation and
unconditionally disables and re-enables it.

Gate cancel_delayed_work_sync() invocation with kevented_up() to avoid
enabling irq unexpectedly during early boot.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-and-tested-by: Qiao Zhou <qiaozhou@asrmicro.com>
Link: http://lkml.kernel.org/r/d2501c4c-8e7b-bea3-1b01-000b36b5dfe9@asrmicro.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
1 parent c693593
History
Tip revision: c86d06ba2818c5126078cb0cf4e0175ec381045b authored by Tejun Heo on 05 September 2016, 12:38:13 UTC
PM / QoS: avoid calling cancel_delayed_work_sync() during early boot
Tip revision: c86d06b
File Mode Size
oss
seq
Kconfig -rw-r--r-- 5.9 KB
Makefile -rw-r--r-- 1.3 KB
compress_offload.c -rw-r--r-- 29.8 KB
control.c -rw-r--r-- 50.3 KB
control_compat.c -rw-r--r-- 13.1 KB
ctljack.c -rw-r--r-- 2.2 KB
device.c -rw-r--r-- 6.3 KB
hrtimer.c -rw-r--r-- 4.2 KB
hwdep.c -rw-r--r-- 13.2 KB
hwdep_compat.c -rw-r--r-- 2.3 KB
info.c -rw-r--r-- 19.4 KB
info_oss.c -rw-r--r-- 3.5 KB
init.c -rw-r--r-- 25.9 KB
isadma.c -rw-r--r-- 3.0 KB
jack.c -rw-r--r-- 9.9 KB
memalloc.c -rw-r--r-- 7.5 KB
memory.c -rw-r--r-- 2.5 KB
misc.c -rw-r--r-- 3.9 KB
pcm.c -rw-r--r-- 34.4 KB
pcm_compat.c -rw-r--r-- 21.7 KB
pcm_dmaengine.c -rw-r--r-- 11.6 KB
pcm_drm_eld.c -rw-r--r-- 2.4 KB
pcm_iec958.c -rw-r--r-- 3.2 KB
pcm_lib.c -rw-r--r-- 71.2 KB
pcm_memory.c -rw-r--r-- 13.5 KB
pcm_misc.c -rw-r--r-- 15.6 KB
pcm_native.c -rw-r--r-- 100.9 KB
pcm_timer.c -rw-r--r-- 3.7 KB
pcm_trace.h -rw-r--r-- 3.7 KB
rawmidi.c -rw-r--r-- 49.3 KB
rawmidi_compat.c -rw-r--r-- 4.8 KB
sgbuf.c -rw-r--r-- 4.2 KB
sound.c -rw-r--r-- 10.5 KB
sound_oss.c -rw-r--r-- 7.1 KB
timer.c -rw-r--r-- 52.6 KB
timer_compat.c -rw-r--r-- 4.9 KB
vmaster.c -rw-r--r-- 12.7 KB

back to top