[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20181228174600.GK2509588@devbig004.ftw2.facebook.com>
Date: Fri, 28 Dec 2018 09:46:00 -0800
From: Tejun Heo <tj@...nel.org>
To: Vincent Guittot <vincent.guittot@...aro.org>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
Sargun Dhillon <sargun@...gun.me>,
Xie XiuQi <xiexiuqi@...wei.com>,
Ingo Molnar <mingo@...hat.com>,
Peter Zijlstra <peterz@...radead.org>, xiezhipeng1@...wei.com,
huawei.libin@...wei.com,
linux-kernel <linux-kernel@...r.kernel.org>,
Dmitry Adamushko <dmitry.adamushko@...il.com>,
Rik van Riel <riel@...riel.com>
Subject: Re: [PATCH] sched: fix infinity loop in update_blocked_averages
On Fri, Dec 28, 2018 at 06:25:37PM +0100, Vincent Guittot wrote:
> > done without extra space as long as each node has the parent pointer,
> > which they do. Is the dedicated list an optimization?
>
> It prevents to parse and walk all task group struct every time.
> Instead, you just have to follow a linked list
Hmmm... I'm having a bit of a hard time imagining doing an actual
traversal being a meaningful optimization. It may require more
branches but that shouldn't be expensive at all, especially compared
to walking all idle groups in the system each time which the code used
to do. Anyways, this is tangential.
Thanks for the explanation and happy new year!
--
tejun
Powered by blists - more mailing lists