lkml.org 
[lkml]   [1999]   [Dec]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patches in this message
    /
    Date
    From
    Subject[patch] freeing spinlock when UP.

    Linus, Alan

    In both stable and development branches of the kernel, when
    reschedule_idle is called, it is presumed, that reschedule_idle will
    release the spin_lock, thus call spin_unlock_irqrestore. This does not
    happen when the kernels are compiled this __SMP__. Artur Skawina
    <skawina@geocities.com> thinks this might delay servicing interrupts
    unnecessarily. (thanks Artur for your response).

    Here's the patch against 2.2.14-pre17:
    diff -ruN linux-2.2.14-pre17/kernel/sched.c linux/kernel/sched.c
    --- linux-2.2.14-pre17/kernel/sched.c Wed Oct 20 02:14:02 1999
    +++ linux/kernel/sched.c Wed Dec 29 12:22:28 1999
    @@ -325,6 +325,7 @@
    tsk = current;
    if (preemption_goodness(tsk, p, this_cpu) > 0)
    tsk->need_resched = 1;
    + spin_unlock_irqrestore(&runqueue_lock, flags);
    #endif
    }

    And here's the patch against 2.3.35-pre6:
    --- linux-2.3.35-pre6/kernel/sched.c Fri Dec 10 23:57:11 1999
    +++ linux-2.3.34-post/kernel/sched.c Wed Dec 29 12:34:05 1999
    @@ -273,6 +273,7 @@
    tsk = cpu_curr(this_cpu);
    if (preemption_goodness(tsk, p, this_cpu) > 0)
    tsk->need_resched = 1;
    + spin_unlock_irqrestore(&runqueue_lock, flags);
    #endif
    }

    Can you put this in?

    me


    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.rutgers.edu
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:55    [W:0.021 / U:89.504 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site