OpenCloudOS-Kernel/drivers/base/power
Rafael J. Wysocki 37530f2bda PM / QoS: Remove device PM QoS sysfs attributes at the right place
Device PM QoS sysfs attributes, if present during device removal,
are removed from within device_pm_remove(), which is too late,
since dpm_sysfs_remove() has already removed the whole attribute
group they belonged to.  However, moving the removal of those
attributes to dpm_sysfs_remove() alone is not sufficient, because
in theory they still can be re-added right after being removed by it
(the device's driver is still bound to it at that point).

For this reason, move the entire desctruction of device PM QoS
constraints to dpm_sysfs_remove() and make it prevent any new
constraints from being added after it has run.  Also, move the
initialization of the power.qos field in struct device to
device_pm_init_common() and drop the no longer needed
dev_pm_qos_constraints_init().

Reported-by: Sasha Levin <sasha.levin@oracle.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-03-04 14:23:12 +01:00
..
Makefile PM / Domains: Add device stop governor function (v4) 2011-12-01 21:47:40 +01:00
clock_ops.c base: power - use clk_prepare_enable and clk_prepare_disable 2012-11-15 00:36:43 +01:00
common.c PM: Do not use the syscore flag for runtime PM 2012-09-04 01:36:05 +02:00
domain.c PM / Domains: don't use [delayed_]work_pending() 2013-01-26 00:39:11 +01:00
domain_governor.c PM / Domains: Fix computation of maximum domain off time 2012-05-11 21:11:44 +02:00
generic_ops.c PM / Sleep: Introduce generic callbacks for new device PM phases 2012-01-29 20:38:41 +01:00
main.c PM / QoS: Remove device PM QoS sysfs attributes at the right place 2013-03-04 14:23:12 +01:00
opp.c PM / OPP: Export more symbols for module usage 2013-02-02 00:01:16 +01:00
power.h PM / QoS: Remove device PM QoS sysfs attributes at the right place 2013-03-04 14:23:12 +01:00
qos.c PM / QoS: Remove device PM QoS sysfs attributes at the right place 2013-03-04 14:23:12 +01:00
runtime.c pm / runtime: force memory allocation with no I/O during Runtime PM callbcack 2013-02-23 17:50:16 -08:00
sysfs.c PM / QoS: Remove device PM QoS sysfs attributes at the right place 2013-03-04 14:23:12 +01:00
trace.c drivers/base: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required. 2011-10-31 19:31:38 -04:00
wakeup.c PM: Introduce suspend state PM_SUSPEND_FREEZE 2013-02-09 22:30:44 +01:00