On 2016-10-28 00:46, Peter Zijlstra wrote:
On Fri, Oct 28, 2016 at 12:10:41AM -0700, Vikram Mulukutla wrote:
+void walt_finish_migrate(struct task_struct *p, struct rq *dest_rq,
bool locked)
+{
+ u64 wallclock;
+ unsigned long flags;
+
+ if (!p->on_rq && p->state != TASK_WAKIN
On 2016-10-28 00:43, Peter Zijlstra wrote:
On Fri, Oct 28, 2016 at 12:10:41AM -0700, Vikram Mulukutla wrote:
+u64 walt_ktime_clock(void)
+{
+ if (unlikely(walt_ktime_suspended))
+ return ktime_to_ns(ktime_last);
+ return ktime_get_ns();
+}
+static int walt_suspend(vo
On Fri, Oct 28, 2016 at 12:10:41AM -0700, Vikram Mulukutla wrote:
> +static int account_cpu_busy_time(struct rq *rq, struct task_struct *p,
> + u64 irqtime, int event)
> +{
> + if (is_idle_task(p)) {
> + /* TASK_WAKE && TASK_MIGRATE is not possible o
On Fri, Oct 28, 2016 at 12:10:41AM -0700, Vikram Mulukutla wrote:
> +void walt_finish_migrate(struct task_struct *p, struct rq *dest_rq, bool
> locked)
> +{
> + u64 wallclock;
> + unsigned long flags;
> +
> + if (!p->on_rq && p->state != TASK_WAKING)
> + return;
> +
> +
On Fri, Oct 28, 2016 at 12:10:41AM -0700, Vikram Mulukutla wrote:
> +u64 walt_ktime_clock(void)
> +{
> + if (unlikely(walt_ktime_suspended))
> + return ktime_to_ns(ktime_last);
> + return ktime_get_ns();
> +}
> +static int walt_suspend(void)
> +{
> + ktime_last = ktime_get(
On Fri, Oct 28, 2016 at 12:10:41AM -0700, Vikram Mulukutla wrote:
> +static int cpu_is_waiting_on_io(struct rq *rq)
> +{
> + if (!walt_io_is_busy)
> + return 0;
> +
> + return atomic_read(&rq->nr_iowait);
> +}
This is just drug induced nonsense. The per-cpu nr_iowait number is
From: Srivatsa Vaddagiri
This patch implements an alternative window-based CPU utilization
tracking mechanism in the scheduler. Per task and per CPU counters are
updated with utilization statistics using a synchronized (across CPUs)
time source and a single statistic (prev_runnable_sum) is fed to
7 matches
Mail list logo