Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Vincent Guittot
On Wed, 30 Jan 2019 at 15:27, Vincent Guittot wrote: > > On Wed, 30 Jan 2019 at 15:01, Peter Zijlstra wrote: > > > > On Wed, Jan 30, 2019 at 03:01:04PM +0100, Peter Zijlstra wrote: > > > --- a/kernel/sched/fair.c > > > +++ b/kernel/sched/fair.c > > > @@ -282,13 +282,15 @@ static inline struct cfs

Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Peter Zijlstra
On Wed, Jan 30, 2019 at 04:48:47PM +0100, Vincent Guittot wrote: > On Wed, 30 Jan 2019 at 14:40, Peter Zijlstra wrote: > > > > > > > static inline void list_del_leaf_cfs_rq(struct cfs_rq *cfs_rq) > > @@ -352,7 +354,12 @@ static inline void list_del_leaf_cfs_rq(struct cfs_rq > > *cfs_rq) > >

Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Vincent Guittot
On Wed, 30 Jan 2019 at 14:40, Peter Zijlstra wrote: > > > static inline void list_del_leaf_cfs_rq(struct cfs_rq *cfs_rq) > @@ -352,7 +354,12 @@ static inline void list_del_leaf_cfs_rq(struct cfs_rq > *cfs_rq) > } > } > > -/* Iterate through all leaf cfs_rq's on a runqueue: */ > +static

Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Vincent Guittot
On Wed, 30 Jan 2019 at 15:01, Peter Zijlstra wrote: > > On Wed, Jan 30, 2019 at 06:22:47AM +0100, Vincent Guittot wrote: > > Sargun reported a crash: > > "I picked up c40f7d74c741a907cfaeb73a7697081881c497d0 sched/fair: Fix > >infinite loop in update_blocked_averages() by reverting a9e7f6544

Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Vincent Guittot
On Wed, 30 Jan 2019 at 15:01, Peter Zijlstra wrote: > > On Wed, Jan 30, 2019 at 03:01:04PM +0100, Peter Zijlstra wrote: > > --- a/kernel/sched/fair.c > > +++ b/kernel/sched/fair.c > > @@ -282,13 +282,15 @@ static inline struct cfs_rq *group_cfs_r > > return grp->my_q; > > } > > > > -static

Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Peter Zijlstra
On Wed, Jan 30, 2019 at 03:01:04PM +0100, Peter Zijlstra wrote: > --- a/kernel/sched/fair.c > +++ b/kernel/sched/fair.c > @@ -282,13 +282,15 @@ static inline struct cfs_rq *group_cfs_r > return grp->my_q; > } > > -static inline void list_add_leaf_cfs_rq(struct cfs_rq *cfs_rq) > +static inl

Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Peter Zijlstra
On Wed, Jan 30, 2019 at 06:22:47AM +0100, Vincent Guittot wrote: > Sargun reported a crash: > "I picked up c40f7d74c741a907cfaeb73a7697081881c497d0 sched/fair: Fix >infinite loop in update_blocked_averages() by reverting a9e7f6544b9c >and put it on top of 4.19.13. In addition to this, I u

Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Peter Zijlstra
On Wed, Jan 30, 2019 at 02:29:42PM +0100, Vincent Guittot wrote: > On Wed, 30 Jan 2019 at 14:27, Peter Zijlstra wrote: > > > > On Wed, Jan 30, 2019 at 02:06:20PM +0100, Peter Zijlstra wrote: > > > On Wed, Jan 30, 2019 at 02:04:10PM +0100, Peter Zijlstra wrote: > > > > > > So I don't much like this

Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Vincent Guittot
On Wed, 30 Jan 2019 at 14:27, Peter Zijlstra wrote: > > On Wed, Jan 30, 2019 at 02:06:20PM +0100, Peter Zijlstra wrote: > > On Wed, Jan 30, 2019 at 02:04:10PM +0100, Peter Zijlstra wrote: > > > > So I don't much like this; at all. But maybe I misunderstand, this is > > > somewhat tricky stuff and

Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Peter Zijlstra
On Wed, Jan 30, 2019 at 02:06:20PM +0100, Peter Zijlstra wrote: > On Wed, Jan 30, 2019 at 02:04:10PM +0100, Peter Zijlstra wrote: > > So I don't much like this; at all. But maybe I misunderstand, this is > > somewhat tricky stuff and I've not looked at it in a while. > > > > So per normal we do:

Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Peter Zijlstra
On Wed, Jan 30, 2019 at 02:04:10PM +0100, Peter Zijlstra wrote: > On Wed, Jan 30, 2019 at 06:22:47AM +0100, Vincent Guittot wrote: > > > The algorithm used to order cfs_rq in rq->leaf_cfs_rq_list assumes that > > it will walk down to root the 1st time a cfs_rq is used and we will finish > > to add

Re: [PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-30 Thread Peter Zijlstra
On Wed, Jan 30, 2019 at 06:22:47AM +0100, Vincent Guittot wrote: > The algorithm used to order cfs_rq in rq->leaf_cfs_rq_list assumes that > it will walk down to root the 1st time a cfs_rq is used and we will finish > to add either a cfs_rq without parent or a cfs_rq with a parent that is > alread

[PATCH v2] sched/fair: Fix insertion in rq->leaf_cfs_rq_list

2019-01-29 Thread Vincent Guittot
Sargun reported a crash: "I picked up c40f7d74c741a907cfaeb73a7697081881c497d0 sched/fair: Fix infinite loop in update_blocked_averages() by reverting a9e7f6544b9c and put it on top of 4.19.13. In addition to this, I uninlined list_add_leaf_cfs_rq for debugging. This revealed a new b