diff options
| -rw-r--r-- | drivers/acpi/processor_idle.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index af9f2afd72da..f8d2b2f47fd4 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c | |||
| @@ -287,10 +287,10 @@ static void acpi_processor_idle(void) | |||
| 287 | pr->power.bm_check_timestamp = jiffies; | 287 | pr->power.bm_check_timestamp = jiffies; |
| 288 | 288 | ||
| 289 | /* | 289 | /* |
| 290 | * Apply bus mastering demotion policy. Automatically demote | 290 | * If bus mastering is or was active this jiffy, demote |
| 291 | * to avoid a faulty transition. Note that the processor | 291 | * to avoid a faulty transition. Note that the processor |
| 292 | * won't enter a low-power state during this call (to this | 292 | * won't enter a low-power state during this call (to this |
| 293 | * funciton) but should upon the next. | 293 | * function) but should upon the next. |
| 294 | * | 294 | * |
| 295 | * TBD: A better policy might be to fallback to the demotion | 295 | * TBD: A better policy might be to fallback to the demotion |
| 296 | * state (use it for this quantum only) istead of | 296 | * state (use it for this quantum only) istead of |
| @@ -298,7 +298,8 @@ static void acpi_processor_idle(void) | |||
| 298 | * qualification. This may, however, introduce DMA | 298 | * qualification. This may, however, introduce DMA |
| 299 | * issues (e.g. floppy DMA transfer overrun/underrun). | 299 | * issues (e.g. floppy DMA transfer overrun/underrun). |
| 300 | */ | 300 | */ |
| 301 | if (pr->power.bm_activity & cx->demotion.threshold.bm) { | 301 | if ((pr->power.bm_activity & 0x1) && |
| 302 | cx->demotion.threshold.bm) { | ||
| 302 | local_irq_enable(); | 303 | local_irq_enable(); |
| 303 | next_state = cx->demotion.state; | 304 | next_state = cx->demotion.state; |
| 304 | goto end; | 305 | goto end; |
