Re: [PATCH] sched/deadline: Use IPI to trigger DL task push migration instead of pulling

2015-03-31 Thread Wanpeng Li
Sorry for forget Cc Steven, On Wed, Apr 01, 2015 at 07:18:36AM +0800, Wanpeng Li wrote: >On Mon, Mar 30, 2015 at 09:41:40AM -0400, Steven Rostedt wrote: >>On Mon, 30 Mar 2015 07:07:10 +0800 >>Wanpeng Li wrote: >> >>> +static int find_next_push_cpu(struct rq *rq) >>> +{ >>> + struct rq *next_rq;

Re: [PATCH] sched/deadline: Use IPI to trigger DL task push migration instead of pulling

2015-03-31 Thread Wanpeng Li
On Mon, Mar 30, 2015 at 09:41:40AM -0400, Steven Rostedt wrote: >On Mon, 30 Mar 2015 07:07:10 +0800 >Wanpeng Li wrote: > >> +static int find_next_push_cpu(struct rq *rq) >> +{ >> +struct rq *next_rq; >> +int cpu; >> + >> +while (1) { >> +cpu = dlo_next_cpu(rq); >> +

Re: [PATCH] sched/deadline: Use IPI to trigger DL task push migration instead of pulling

2015-03-30 Thread Steven Rostedt
On Mon, 30 Mar 2015 07:07:10 +0800 Wanpeng Li wrote: > +static int find_next_push_cpu(struct rq *rq) > +{ > + struct rq *next_rq; > + int cpu; > + > + while (1) { > + cpu = dlo_next_cpu(rq); > + if (cpu >= nr_cpu_ids) > + break; > +

[PATCH] sched/deadline: Use IPI to trigger DL task push migration instead of pulling

2015-03-29 Thread Wanpeng Li
This design the same as rt class to send out only one IPI to the first overloaded CPU. It tries to push any tasks that it can, and then looks for the next overloaded CPU that can push to the source CPU. The IPIs stop when all overloaded CPUs that have pushable tasks that have deadlines earlier