lkml.org 
[lkml]   [2015]   [Sep]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH] sched: fix lose fair sleeper bonus in switch_to_fair()
    From
    Date
    On 9/8/15 4:22 PM, Byungchul Park wrote:
    > On Tue, Sep 08, 2015 at 04:04:49PM +0800, Wanpeng Li wrote:
    >>>> However, if se->vruntime -= cfs_rq->min_vruntime is positive, the
    >>>> behavior is different after your patch. e.g. se->vruntime(the
    >>>> relative vruntime in switched_to_fair()) < min_vruntime -
    >>>> sysctl_sched_latency/2
    >>>>
    >>>> before your patch:
    >>>>
    >>>> se->vruntime = min_vruntime - sysctl_sched_latency/2 (place_entity())
    >>> my patch is based on ff277d4 commit at tip/sched/core.
    >>>
    >>> there's no change between before and after.
    >>>
    >>> check it please.
    >>>
    >>> and this logic seems to be no problem to me. :(
    >> Your logic will lose fair sleeper bonus in the scenario which I pointed out.
    > i mean in ff277d4 commit:

    Please include the commit subject when you point out a commit, do you
    mean this one?

    commit ff277d4250fe715b6666219b1a3423b863418794
    Author: Andrea Parri <parri.andrea@gmail.com>
    Date: Wed Aug 5 15:56:19 2015 +0200

    sched/deadline: Fix comment in enqueue_task_dl()

    The "dl_boosted" flag is set by comparing *absolute* deadlines
    (c.f., rt_mutex_setprio()).


    What's the relationship w/ this patch?

    Regards,
    Wanpeng Li

    >
    > se->vruntime += cfs->min_vruntime (switched_to_fair())
    > se->vruntime = se->vruntime or bonused value (place_entity())
    >
    > after my patch:
    >
    > se->vruntime += cfs->min_vruntime (switched_to_fair())
    > se->vruntime = se->vruntime or bonused value (place_entity())
    >
    > ---
    >
    > SAME!!!
    >
    > in addtion, se->vruntime already had a bonused value if eligible,
    > when it was detached from cfs_rq.
    >
    >>>> after your patch:
    >>>>
    >>>> se->vruntime += cfs->min_vruntime (switched_to_fair())
    >>>> se->vruntime = se->vruntime (place_entity())
    >>>>
    >>>>
    >>>> Regards,
    >>>> Wanpeng Li
    >>>>
    >>>> --
    >>>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    >>>> the body of a message to majordomo@vger.kernel.org
    >>>> More majordomo info at http://vger.kernel.org/majordomo-info.html
    >>>> Please read the FAQ at http://www.tux.org/lkml/
    >> --
    >> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    >> the body of a message to majordomo@vger.kernel.org
    >> More majordomo info at http://vger.kernel.org/majordomo-info.html
    >> Please read the FAQ at http://www.tux.org/lkml/



    \
     
     \ /
      Last update: 2015-09-08 10:41    [W:2.768 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site