lkml.org 
[lkml]   [2006]   [May]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC 3/5] sched: Add CPU rate hard caps
    Con Kolivas wrote:
    > On Friday 26 May 2006 14:20, Peter Williams wrote:
    >> This patch implements hard CPU rate caps per task as a proportion of a
    >> single CPU's capacity expressed in parts per thousand.
    >
    > A hard cap of 1/1000 could lead to interesting starvation scenarios where a
    > mutex or semaphore was held by a task that hardly ever got cpu. Same goes to
    > a lesser extent to a 0 soft cap.
    >
    > Here is how I handle idleprio tasks in current -ck:
    >
    > http://ck.kolivas.org/patches/2.6/pre-releases/2.6.17-rc5/2.6.17-rc5-ck1/patches/track_mutexes-1.patch
    > tags tasks that are holding a mutex
    >
    > http://ck.kolivas.org/patches/2.6/pre-releases/2.6.17-rc5/2.6.17-rc5-ck1/patches/sched-idleprio-1.7.patch
    > is the idleprio policy for staircase.
    >
    > What it does is runs idleprio tasks as normal tasks when they hold a mutex or
    > are waking up after calling down() (ie holding a semaphore).

    I wasn't aware that you could detect those conditions. They could be
    very useful.

    > These two in
    > combination have shown resistance to any priority inversion problems in
    > widespread testing. An attempt was made to track semaphores held via a
    > down_interruptible() but unfortunately the lack of strict rules about who
    > could release the semaphore meant accounting was impossible of this scenario.
    > In practice, though there were no test cases that showed it to be an issue,
    > and the recent conversion en-masse of semaphores to mutexes in the kernel
    > means it has pretty much covered most possibilities.
    >

    Thanks,
    Peter
    --
    Peter Williams pwil3058@bigpond.net.au

    "Learning, n. The kind of ignorance distinguishing the studious."
    -- Ambrose Bierce
    -
    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: 2006-05-26 16:01    [W:0.033 / U:32.088 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site