[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5164CEF9.1080005@intel.com>
Date: Wed, 10 Apr 2013 10:31:21 +0800
From: Alex Shi <alex.shi@...el.com>
To: Vincent Guittot <vincent.guittot@...aro.org>
CC: "mingo@...hat.com" <mingo@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Thomas Gleixner <tglx@...utronix.de>,
Andrew Morton <akpm@...ux-foundation.org>,
Arjan van de Ven <arjan@...ux.intel.com>,
Borislav Petkov <bp@...en8.de>, Paul Turner <pjt@...gle.com>,
Namhyung Kim <namhyung@...nel.org>,
Mike Galbraith <efault@....de>,
Morten Rasmussen <morten.rasmussen@....com>,
gregkh@...uxfoundation.org,
Preeti U Murthy <preeti@...ux.vnet.ibm.com>,
Viresh Kumar <viresh.kumar@...aro.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
Len Brown <len.brown@...el.com>, rafael.j.wysocki@...el.com,
jkosina@...e.cz, Clark Williams <clark.williams@...il.com>,
"tony.luck@...el.com" <tony.luck@...el.com>, keescook@...omium.org,
Mel Gorman <mgorman@...e.de>, riel@...hat.com
Subject: Re: [patch v3 6/8] sched: consider runnable load average in move_tasks
On 04/09/2013 11:16 PM, Vincent Guittot wrote:
>> > Thanks a lot for info sharing! Vincent.
>> >
>> > But I checked the rq->avg and task->se.avg, seems none of them are
>> > possible be updated on different CPU at the same time. So my printk
>> > didn't catch this with benchmark kbuild and aim7 on my SNB EP box.
> The problem can happen because reader and writer are accessing the
> variable asynchronously and on different CPUs
>
> CPUA write runnable_avg_sum
> CPUB read runnable_avg_sum
> CPUB read runnable_avg_period
> CPUA write runnable_avg_period
>
> I agree that the time window, during which this can occur, is short
> but not impossible
May I didn't say clear. Vincent.
member of rq struct include avg, should be protected by rq->lock when
other cpu want to access them. Or be accessed only by local cpu. So they
should be no above situation.
And for per task avg, the task is impossible to be on different cpu at
the same time. so there are also no above problem.
I thought the problem may exists for middle level entity, but seems task
group has each of entity on every cpu. So there is no this problem too.
So, you may better to hold rq->lock when check the buddy cpu info.
Correct me if sth wrong. :)
--
Thanks Alex
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists