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.2-testing] x86: Reduce assertion aggressiveness i

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-3.2-testing] x86: Reduce assertion aggressiveness in send_IPI_mask().
From: "Xen patchbot-3.2-testing" <patchbot-3.2-testing@xxxxxxxxxxxxxxxxxxx>
Date: Wed, 23 Apr 2008 01:30:36 -0700
Delivery-date: Wed, 23 Apr 2008 01:30:44 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/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 1208938577 -3600
# Node ID c32fcc1672c4fad5771abddd2042d142651edbb3
# Parent  872282b8c11a5dfad51822485d0b937dd8cb9439
x86: Reduce assertion aggressiveness in send_IPI_mask().
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
xen-unstable changeset:   17503:a5319f23db7c0985ac7ac84a998fedf435565062
xen-unstable date:        Wed Apr 23 09:15:34 2008 +0100
---
 xen/arch/x86/smp.c |   27 +++++----------------------
 1 files changed, 5 insertions(+), 22 deletions(-)

diff -r 872282b8c11a -r c32fcc1672c4 xen/arch/x86/smp.c
--- a/xen/arch/x86/smp.c        Wed Apr 23 09:02:46 2008 +0100
+++ b/xen/arch/x86/smp.c        Wed Apr 23 09:16:17 2008 +0100
@@ -75,20 +75,10 @@ static inline int __prepare_ICR2 (unsign
     return SET_APIC_DEST_FIELD(mask);
 }
 
-static inline void check_IPI_mask(cpumask_t cpumask)
-{
-    /*
-     * Sanity, and necessary. An IPI with no target generates a send accept
-     * error with Pentium and P6 APICs.
-     */
-    ASSERT(cpus_subset(cpumask, cpu_online_map));
-    ASSERT(!cpus_empty(cpumask));
-}
-
 void apic_wait_icr_idle(void)
 {
-       while ( apic_read( APIC_ICR ) & APIC_ICR_BUSY )
-               cpu_relax();
+    while ( apic_read( APIC_ICR ) & APIC_ICR_BUSY )
+        cpu_relax();
 }
 
 void send_IPI_mask_flat(cpumask_t cpumask, int vector)
@@ -97,7 +87,8 @@ void send_IPI_mask_flat(cpumask_t cpumas
     unsigned long cfg;
     unsigned long flags;
 
-    check_IPI_mask(cpumask);
+    /* An IPI with no target generates a send accept error from P5/P6 APICs. */
+    WARN_ON(mask == 0);
 
     local_irq_save(flags);
 
@@ -130,17 +121,9 @@ void send_IPI_mask_phys(cpumask_t mask, 
     unsigned long cfg, flags;
     unsigned int query_cpu;
 
-    check_IPI_mask(mask);
-
-    /*
-     * Hack. The clustered APIC addressing mode doesn't allow us to send 
-     * to an arbitrary mask, so I do a unicasts to each CPU instead. This 
-     * should be modified to do 1 message per cluster ID - mbligh
-     */ 
-
     local_irq_save(flags);
 
-    for_each_cpu_mask( query_cpu, mask )
+    for_each_cpu_mask ( query_cpu, mask )
     {
         /*
          * Wait for idle.

_______________________________________________
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.2-testing] x86: Reduce assertion aggressiveness in send_IPI_mask()., Xen patchbot-3.2-testing <=