[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAKohpo=ugBphZ2cz6FwOgsMPkPGRo-H2OSRPBbDbTqj=fn_kHw@mail.gmail.com>
Date: Fri, 21 Mar 2014 15:36:09 +0530
From: Viresh Kumar <viresh.kumar@...aro.org>
To: "Srivatsa S. Bhat" <srivatsa.bhat@...ux.vnet.ibm.com>,
Catalin Marinas <catalin.marinas@....com>
Cc: "Rafael J. Wysocki" <rjw@...ysocki.net>,
Lists linaro-kernel <linaro-kernel@...ts.linaro.org>,
"cpufreq@...r.kernel.org" <cpufreq@...r.kernel.org>,
"linux-pm@...r.kernel.org" <linux-pm@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
"ego@...ux.vnet.ibm.com" <ego@...ux.vnet.ibm.com>,
Russell King - ARM Linux <linux@....linux.org.uk>
Subject: Re: [PATCH V4 1/3] cpufreq: Make sure frequency transitions are serialized
On 21 March 2014 14:51, Viresh Kumar <viresh.kumar@...aro.org> wrote:
> @Catalin: We have a problem here and need your expert advice. After changing
> CPU frequency we need to call this code:
>
> cpufreq_notify_post_transition();
> policy->transition_ongoing = false;
>
> And the sequence must be like this only. Is this guaranteed without any
> memory barriers? cpufreq_notify_post_transition() isn't touching
> transition_ongoing at all..
For others this is what we discussed on IRC (rmk: Russell King)
<rmk> I'm no barrier expert, but the compiler can't reorder that assignment
across a function call which it knows nothing about (which it can't
know anything
about because it calls other functions through function pointers)
<rmk> however, the CPU could re-order the effects with respect to other agents
(cpus/devices) when they look at the memory
<rmk> for the local CPU, the question is really: what does the C
language virtual
machine say about this - that's what really matters. If the CPU does
speculative
stuff, it still has to make the machine behaviour fit that model.
--
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