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/
Home Products Support Community News


Re: [Xen-devel] SEDF Scheduler slice time fix

To: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Subject: Re: [Xen-devel] SEDF Scheduler slice time fix
From: Atsushi SAKAI <sakaia@xxxxxxxxxxxxxx>
Date: Mon, 22 May 2006 09:16:52 +0900
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Sun, 21 May 2006 17:18:28 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: (Your message of "Fri, 19 May 2006 17:47:00 +0100") <ad417492cac2e00847bff88f1ffd118c@xxxxxxxxxxxx>
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: <200605190246.k4J2kjv3016072@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> <ad417492cac2e00847bff88f1ffd118c@xxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Hello, Keir.

Thank you for you comments, and Sorry for disturbing you.
After your comments, I read the code again I found my mistake.

The real code is 
            ret.time = MIN(now + runinf->slice - runinf->cputime,
                           PERIOD_BEGIN(waitinf)) - now;

But I mis-reading the code of ')' position like this.
(This is not real code! in sched_sedf.c, I imagined code)

            ret.time = MIN(runinf->slice - runinf->cputime,
                           PERIOD_BEGIN(waitinf) - now);
                                                ^     ^

I must check carefully the code.

Atsushi SAKAI

>On 19 May 2006, at 03:46, Atsushi SAKAI wrote:
>>  Without this patch, CPU slice time is over allocated.
>>  (Because CPU slice time is absolute time at this moment(large value),
>>  but waitq time is relative time(small value),
>>  and MIN() selects smaller value(waitq).)
>A question then: you change the parameter to MIN() to no longer have 
>'now' added to it. Because both values are supposed to be relative not 
>absolute. If that's the case, should we be subtracting 'now' from the 
>result of MIN()? We currently do, and your patch does not change that. 
>So it seems a bit odd to me.
>  -- Keir

Atsushi SAKAI

Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>