lkml.org 
[lkml]   [2014]   [Feb]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4/6] sched: Adjust sched_reset_on_fork when nothing else changes
    Date
    From: Thomas Gleixner <tglx@linutronix.de>

    If the policy and priority remain unchanged a possible modification of
    sched_reset_on_fork gets lost in the early exit path.

    Cc: stable@vger.kernel.org
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    [bigeasy: rebase ontop of v3.14-rc1]
    Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
    ---
    kernel/sched/core.c | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    diff --git a/kernel/sched/core.c b/kernel/sched/core.c
    index 3112b28..a4c06a8 100644
    --- a/kernel/sched/core.c
    +++ b/kernel/sched/core.c
    @@ -3392,7 +3392,8 @@ static int __sched_setscheduler(struct task_struct *p,
    }

    /*
    - * If not changing anything there's no need to proceed further:
    + * If not changing anything there's no need to proceed further,
    + * but store a possible modification of reset_on_fork.
    */
    if (unlikely(policy == p->policy)) {
    if (fair_policy(policy) && attr->sched_nice != TASK_NICE(p))
    @@ -3402,6 +3403,7 @@ static int __sched_setscheduler(struct task_struct *p,
    if (dl_policy(policy))
    goto change;

    + p->sched_reset_on_fork = reset_on_fork;
    task_rq_unlock(rq, p, &flags);
    return 0;
    }
    --
    1.9.rc1


    \
     
     \ /
      Last update: 2014-02-07 21:41    [W:2.675 / U:0.056 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site