[PATCH v2 0/7] Cpufreq, cpu hotplug, suspend/resume related fixes

From: Srivatsa S. Bhat
Date: Mon Jul 29 2013 - 18:57:10 EST



Hi,

This patchset reorganizes the cpufreq code and preserves the file permissions
of cpufreq-related per-cpu sysfs files across suspend/resume cycles, by
performing a light-weight init/teardown in those paths.

Patches 1 - 4 reorganize the code and have no functional impact, and can go
in as general cleanups as well. This reorganization builds a base that the
rest of the patches will make use of.

Patch 5 and 6 add a mechanism to perform light-weight init/tear-down of CPUs
in the cpufreq subsystem and finally patch 7 uses it to preserve sysfs files
across suspend/resume.

All the patches apply on Rafael's bleeding-edge branch on linux-pm git
tree[1].


Changes in v2:
* Fixed a refcounting bug explained here:
http://marc.info/?l=linux-kernel&m=137511192600806&w=2

* Addressed some suggestions about code reorganization received in v1.
* Rebased on top of the bleeding-edge branch.


[1]. git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git bleeding-edge

Thank you very much!


Srivatsa S. Bhat (7):
cpufreq: Fix misplaced call to cpufreq_update_policy()
cpufreq: Add helper to perform alloc/free of policy structure
cpufreq: Extract non-interface related stuff from cpufreq_add_dev_interface
cpufreq: Extract the handover of policy cpu to a helper function
cpufreq: Introduce a flag ('frozen') to separate full vs temporary init/teardown
cpufreq: Preserve policy structure across suspend/resume
cpufreq: Perform light-weight init/teardown during suspend/resume


drivers/cpufreq/cpufreq.c | 303 ++++++++++++++++++++++++++-------------
drivers/cpufreq/cpufreq_stats.c | 8 -
2 files changed, 205 insertions(+), 106 deletions(-)


Thanks,
Srivatsa S. Bhat
IBM Linux Technology Center

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/