lkml.org 
[lkml]   [2007]   [Nov]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [BUG]: Crash with CONFIG_FAIR_CGROUP_SCHED=y
    Hi Srivatsa,

    > [ ... ]
    > --
    >
    > current task is not present in its runqueue in case of sched_fair class
    > tasks. Take care of this fact in rt_mutex_setprio(),
    > sched_setscheduler() and sched_move_task() routines.
    >
    > Signed-off-by : Srivatsa Vaddagiri <vatsa@linux.vnet.ibm.com>
    >
    >
    > ---
    > kernel/sched.c | 45 +++++++++++++++++++++++++--------------------
    > 1 files changed, 25 insertions(+), 20 deletions(-)
    >
    > Index: current/kernel/sched.c
    > ===================================================================
    > --- current.orig/kernel/sched.c
    > +++ current/kernel/sched.c
    > @@ -3986,11 +3986,13 @@ void rt_mutex_setprio(struct task_struct
    > oldprio = p->prio;
    > on_rq = p->se.on_rq;
    > running = task_running(rq, p);
    > - if (on_rq) {
    > + if (on_rq)
    > dequeue_task(rq, p, 0);
    > - if (running)
    > - p->sched_class->put_prev_task(rq, p);
    > - }
    > + /* current task is not kept in its runqueue in case of sched_fair class.
    > + * Hence we need the 'on_rq?' and 'running?' tests to be separate.

    Humm... the 'current' is not kept within the tree but
    current->se.on_rq is supposed to be '1' ,
    so the old code looks ok to me (at least for the 'leaf' elements).

    Maybe you were able to get more useful oops on your site?


    > --
    > Regards,
    > vatsa
    >

    --
    Best regards,
    Dmitry Adamushko
    -
    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: 2007-11-09 09:47    [W:0.038 / U:32.100 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site