WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-3.4-testing] x86: Process only pending timers in ac

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-3.4-testing] x86: Process only pending timers in acpi idle handler, not all
From: "Xen patchbot-3.4-testing" <patchbot-3.4-testing@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 06 Jul 2009 05:46:04 -0700
Delivery-date: Mon, 06 Jul 2009 05:47:14 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1246883126 -3600
# Node ID 5018fc6b67a5b67cf05044a079a74b840d74ce1d
# Parent  ddf8e5917a12027af82adc599469ac59da1635e2
x86: Process only pending timers in acpi idle handler, not all
softirqs. This fixes a bug where bailing into SCHEDULE_SOFTIRQ may not
actually return.

From: Ke Yu <ke.yu@xxxxxxxxx>
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
xen-unstable changeset:   19890:7605b318619f
xen-unstable date:        Mon Jul 06 11:46:22 2009 +0100
---
 xen/arch/x86/acpi/cpu_idle.c |    9 ++-------
 1 files changed, 2 insertions(+), 7 deletions(-)

diff -r ddf8e5917a12 -r 5018fc6b67a5 xen/arch/x86/acpi/cpu_idle.c
--- a/xen/arch/x86/acpi/cpu_idle.c      Thu Jul 02 16:17:12 2009 +0100
+++ b/xen/arch/x86/acpi/cpu_idle.c      Mon Jul 06 13:25:26 2009 +0100
@@ -200,13 +200,8 @@ static void acpi_processor_idle(void)
     cpufreq_dbs_timer_suspend();
 
     sched_tick_suspend();
-    /*
-     * sched_tick_suspend may raise TIMER_SOFTIRQ by __stop_timer,
-     * which will break the later assumption of no sofirq pending,
-     * so add do_softirq
-     */
-    if ( softirq_pending(smp_processor_id()) )
-        do_softirq();
+    /* sched_tick_suspend() can raise TIMER_SOFTIRQ. Process it now. */
+    process_pending_timers();
 
     /*
      * Interrupts must be disabled during bus mastering calculations and

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-3.4-testing] x86: Process only pending timers in acpi idle handler, not all, Xen patchbot-3.4-testing <=