lkml.org 
[lkml]   [2010]   [Jan]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH tracing/kprobes] kprobes: Disable booster when CONFIG_PREEMPT=y
    From
    Date
    On Fri, 2010-01-29 at 12:08 -0500, Mathieu Desnoyers wrote:
    >
    > If a task is set as stopped, and the preempted before calling schedule,
    > can this result in a preempted task staying in that state for an
    > arbitrary long period of time ? Or is there some mechanism prohibiting
    > that in the scheduler ?

    PREEMPT_ACTIVE does that:

    preempt_schedule()
    add_preempt_count(PREEMPT_ACTIVE);
    schedule();


    schedule()
    if (prev->state && !(preempt_count() & PREEMPT_ACTIVE)) {
    if (unlikely(signal_pending_state(prev->state, prev)))
    prev->state = TASK_RUNNING;
    else
    deactivate_task(rq, prev, 1);
    switch_count = &prev->nvcsw;
    }




    \
     
     \ /
      Last update: 2010-01-29 18:19    [W:0.036 / U:0.256 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site