On Tue, Feb 3, 2015 at 3:14 AM, Lisa Nguyen <lisa.ngu...@linaro.org> wrote: > On 1 February 2015 at 22:00, Amit Kucheria <amit.kuche...@linaro.org> wrote: >> On Mon, Feb 2, 2015 at 7:34 AM, Lisa Nguyen <lisa.ngu...@linaro.org> wrote: >>> Set the sampling_rate to zero if the sampling_rate attribute cannot >>> be found in either directories listed in the if condition. This will >>> also resolve minor bugs where the sampling_rate is missing. >>> >>> Signed-off-by: Lisa Nguyen <lisa.ngu...@linaro.org> >>> --- >>> include/functions.sh | 4 +++- >>> 1 file changed, 3 insertions(+), 1 deletion(-) >>> >>> diff --git a/include/functions.sh b/include/functions.sh >>> index e3eb140..4486da8 100644 >>> --- a/include/functions.sh >>> +++ b/include/functions.sh >>> @@ -164,8 +164,10 @@ wait_latency() { >>> # consider per-policy governor case >>> if [ -e $CPU_PATH/$wait_latency_cpu/cpufreq/$gov ]; then >>> sampling_rate=$(cat >>> $CPU_PATH/$wait_latency_cpu/cpufreq/$gov/sampling_rate) >>> - else >>> + elif [ -e $CPU_PATH/cpufreq/$gov/sampling_rate ]; then >>> sampling_rate=$(cat $CPU_PATH/cpufreq/$gov/sampling_rate) >>> + else >>> + sampling_rate=0 >>> fi >>> sampling_rate=$((sampling_rate * 1000)) # unit nsec >>> >> >> Hmm, let us think about this a bit. In what situation will be not find >> a sampling rate for the governor? In the case where we are NOT using >> ondemand governor. This is expected on Android which uses the >> interactive governor. >> >> So the entire wait_latency() function is going to return somewhat >> incorrect values when run on Android. > > I agree. > >> I suggest the following removing this patch from the series and >> properly fixing this problem by doing tests on ubuntu and android with >> ondemand and interactive respectively to figure out what variables >> should be read to get the sampling rate. > > The common errors I ran into were these ones without the patch: > > + gov=userspace > + [ -e /sys/devices/system/cpu/cpu0/cpufreq/userspace ] > + cat /sys/devices/system/cpu/cpufreq/userspace/sampling_rate > cat: /sys/devices/system/cpu/cpufreq/userspace/sampling_rate: No such > file or directory > + sampling_rate= > > I'll see what results I get on Ubuntu and Android with ondemand and > interactive respectively.
Read Documentation/cpu-freq/governors.txt for details on the knobs available for ondemand. These knobs are specific to each governor for tuning, so of course you won't find them with the userspace governor. _______________________________________________ linaro-dev mailing list linaro-dev@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-dev