Messages in this thread | | | Date | Sun, 28 May 2006 10:11:09 +1000 | From | Peter Williams <> | Subject | Re: [RFC 2/5] sched: Add CPU rate soft caps |
| |
Peter Williams wrote: > Balbir Singh wrote: >> On 5/26/06, Peter Williams <pwil3058@bigpond.net.au> wrote: >> <snip> >>> >>> Notes: >>> >>> 1. To minimize the overhead incurred when testing to skip caps >>> processing for >>> uncapped tasks a new flag PF_HAS_CAP has been added to flags. >>> >>> 2. The implementation involves the addition of two priority slots to the >>> run queue priority arrays and this means that MAX_PRIO no longer >>> represents the scheduling priority of the idle process and can't be >>> used to >>> test whether priority values are in the valid range. To alleviate this >>> problem a new function sched_idle_prio() has been provided. >> >> I am a little confused by this. Why link the bandwidth expired tasks a >> cpu (its caps) to a priority slot? Is this a hack to conitnue using >> the prio_array? why not move such tasks to the expired array? > > Because it won't work as after the array switch they may get to run > before tasks who aren't exceeding their cap (or don't have a cap).
Another important reason for using these slots is that it allows waking tasks to preempt tasks that have exceeded their cap.
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/
| |