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-devel

Re: [Xen-devel] RE: [Patch] Fix IDLE issue with sedf scheduler on IA64

To: "Tian, Kevin" <kevin.tian@xxxxxxxxx>
Subject: Re: [Xen-devel] RE: [Patch] Fix IDLE issue with sedf scheduler on IA64
From: Hollis Blanchard <hollisb@xxxxxxxxxx>
Date: Wed, 13 Jul 2005 09:32:06 -0500
Cc: "Magenheimer, Dan \(HP Labs Fort Collins\)" <dan.magenheimer@xxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx, xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Wed, 13 Jul 2005 14:30:47 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <571ACEFD467F7749BC50E0A98C17CDD807478DD8@pdsmsx403>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <571ACEFD467F7749BC50E0A98C17CDD807478DD8@pdsmsx403>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
On Jul 13, 2005, at 8:34 AM, Tian, Kevin wrote:

Magenheimer, Dan (HP Labs Fort Collins) wrote:

Is there a better way (for ia64)?  I kind of like the solution
Keir and Ian imply... is it possible in context_switch to simply
"refuse" to switch to the idle domain?   E.g. if the idle domain
is the target of the switch, instead switch to domain0 (and
make it runnable)?

This seems not easy to be simply done in context_switch without common
change. Preventing switch to IDLE is easy, and a simple check in
context_switch can achieve. However the really bad thing is about
housekeep info within scheduler. Eg. domain0 may have been placed on
waitq, with begin of next period still far away. Stealing slice of IDLE
to Dom0 without notifying scheduler, may mess the future decision since
next schedule will happen on Dom0's context and base on dom0's statistic
info...

See how x86 does this in context_switch() (arch/x86/domain.c). In particular, __context_switch is avoided for the idle domain, so the context restored is some register pops in ret_from_intr/restore_all_xen (arch/x86/x86_32/entry.S).

No scheduler changes or confusion necessary...

--
Hollis Blanchard
IBM Linux Technology Center


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