[lkml]   [2011]   [Jun]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [RFC][PATCH 1/3] sched, block: Move unplug
    On 2011-06-22 01:34, Peter Zijlstra wrote:
    > Thomas found that we're doing a horrendous amount of work in that scheduler
    > unplug hook while having preempt and IRQs disabled.
    > Move it to the head of schedule() where both preemption and IRQs are enabled
    > such that we don't get these silly long IRQ/preempt disable times.
    > This allows us to remove a lot of special magic in the unplug path,
    > simplifying that code as a bonus.

    The major change here is moving the queue running inline, instead of
    punting to a thread. The worry is/was that we risk blowing the stack if
    something ends up blocking inadvertently further down the call path.
    Since it's the unlikely way to unplug, a bit of latency was acceptable
    to prevent this problem.

    I'm curious why you made that change? It seems orthogonal to the change
    you are actually describing in the commit message.

    Jens Axboe

     \ /
      Last update: 2011-06-22 09:03    [W:0.020 / U:53.408 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site