summaryrefslogtreecommitdiff
path: root/drivers/acpi/processor_idle.c
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2015-02-02 23:56:03 +0100
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2015-02-02 23:56:03 +0100
commit2a7383529109252a7f9d81639784e5fddb4f3df4 (patch)
tree9b72cbccefca6f852003a74dff9d13e08f29f740 /drivers/acpi/processor_idle.c
parent5f97d6628640842229824c9f4fd433621c5a7b72 (diff)
downloadlwn-2a7383529109252a7f9d81639784e5fddb4f3df4.tar.gz
lwn-2a7383529109252a7f9d81639784e5fddb4f3df4.zip
ACPI / cpuidle: Drop flags.bm_check tests from acpi_idle_enter_bm()
Since acpi_idle_enter_bm() is only used if flags.bm_check is set for the given acpi_processor object, it doesn't make sense to check that flag in there. For this reason, drop flags.bm_check tests (and some code depending on them) from acpi_idle_enter_bm(). Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi/processor_idle.c')
-rw-r--r--drivers/acpi/processor_idle.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
index c05d5ec9882a..eaa32586f89c 100644
--- a/drivers/acpi/processor_idle.c
+++ b/drivers/acpi/processor_idle.c
@@ -842,28 +842,25 @@ static int acpi_idle_enter_bm(struct cpuidle_device *dev,
/*
* disable bus master
* bm_check implies we need ARB_DIS
- * !bm_check implies we need cache flush
* bm_control implies whether we can do ARB_DIS
*
* That leaves a case where bm_check is set and bm_control is
* not set. In that case we cannot do much, we enter C3
* without doing anything.
*/
- if (pr->flags.bm_check && pr->flags.bm_control) {
+ if (pr->flags.bm_control) {
raw_spin_lock(&c3_lock);
c3_cpu_count++;
/* Disable bus master arbitration when all CPUs are in C3 */
if (c3_cpu_count == num_online_cpus())
acpi_write_bit_register(ACPI_BITREG_ARB_DISABLE, 1);
raw_spin_unlock(&c3_lock);
- } else if (!pr->flags.bm_check) {
- ACPI_FLUSH_CPU_CACHE();
}
acpi_idle_do_entry(cx);
/* Re-enable bus master arbitration */
- if (pr->flags.bm_check && pr->flags.bm_control) {
+ if (pr->flags.bm_control) {
raw_spin_lock(&c3_lock);
acpi_write_bit_register(ACPI_BITREG_ARB_DISABLE, 0);
c3_cpu_count--;