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-unstable] x86: Add warning comment explaining restr

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] x86: Add warning comment explaining restrictions to play_dead().
From: Xen patchbot-unstable <patchbot@xxxxxxx>
Date: Thu, 03 Mar 2011 02:40:08 +0000
Delivery-date: Wed, 02 Mar 2011 18:40:32 -0800
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 Shan Haitao <haitao.shan@xxxxxxxxx>
# Date 1299060115 0
# Node ID bde351b18fd0fce23e6d4ae24627ed15a9b7c768
# Parent  c5d121fd35c0451e8ae08749566c7fbbddb92706
x86: Add warning comment explaining restrictions to play_dead().

Signed-off-by: Shan Haitao <haitao.shan@xxxxxxxxx>
Signed-off-by: Keir Fraser <keir@xxxxxxx>
---


diff -r c5d121fd35c0 -r bde351b18fd0 xen/arch/x86/domain.c
--- a/xen/arch/x86/domain.c     Mon Feb 28 16:55:20 2011 +0000
+++ b/xen/arch/x86/domain.c     Wed Mar 02 10:01:55 2011 +0000
@@ -99,6 +99,15 @@
 
 static void play_dead(void)
 {
+    /*
+     * NOTE: After cpu_exit_clear, per-cpu variables are no longer accessible,
+     * as they may be freed at any time. In this case, heap corruption or
+     * #PF can occur (when heap debugging is enabled). For example, even
+     * printk() can involve tasklet scheduling, which touches per-cpu vars.
+     * 
+     * Consider very carefully when adding code to this path. Most hypervisor
+     * subsystems are unsafe to call.
+     */
     cpu_exit_clear(smp_processor_id());
     mb();
     local_irq_disable();

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] x86: Add warning comment explaining restrictions to play_dead()., Xen patchbot-unstable <=