Hi Mohammad, Thanks for investigating. Care to send this patch as a diff?
Also, we'll need to come up with a better solution that to add the "Samsung" string in there before we submit this upstream. Regards, Amit On Tue, May 6, 2014 at 11:06 AM, Mohammad Merajul Islam Molla <meraj.eni...@gmail.com> wrote: > Hello, > > I tested powertop on Samsung Arndale Board with Ubuntu Saucy Server 14.01 > with custom kernel (config file attached, powertop config options enabled), > and reported a bug 1316096. Also, I found the other bug 1316096 happening on > arndale board. > > In short, bug 1316096 - Powertop displays "nan" on top [summary] where it > should show legal value. > Summary: nan wakeups/second, nan > GPU ops/seconds, nan VFS ops/sec and -0.0% CPU use <--- displays "nan" > instead of valid value > > bug 1316096 - Idle stats & Frequency stats pages are empty. > > I did some debugging and it seems that the root cause of both the bugs may > be same. It looks like the parsing code enumerate_cpus()[src/cpu/cpu.cpp] > called from main.cpp, is expecting /proc/cpuinfo file in a particular format > which works on Intel but not on ARM. > > On Intel, it gets the file in the format expected. However, on ARM on > Arndale board with saucy server, the file looks as below - > > processor : 0 > model name : ARMv7 Processor rev 4 (v7l) > Features : swp half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 > idiva idivt vfpd32 lpae evtstrm > CPU implementer : 0x41 > CPU architecture: 7 > CPU variant : 0x0 > CPU part : 0xc0f > CPU revision : 4 > > processor : 1 > model name : ARMv7 Processor rev 4 (v7l) > Features : swp half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 > idiva idivt vfpd32 lpae evtstrm > CPU implementer : 0x41 > CPU architecture: 7 > CPU variant : 0x0 > CPU part : 0xc0f > CPU revision : 4 > > Hardware : SAMSUNG EXYNOS5 (Flattened Device Tree) > Revision : 0000 > Serial : 0000000000000000 > > The parsing code which gathers information about cpus, fails to parse this > file and as a result the vector "all_cpus" remains empty. > > I played with it a bit more and added a few lines to get a work around as > follows - > > in function enumarate_cpus(): > > if (strncmp(line, "processor\t",10) == 0) { > char *c; > c = strchr(line, ':'); > if (c) { > c++; > number = strtoull(c, NULL, 10); > handle_one_cpu(number, "Samsung", 0, 0); [ > line added] > set_max_cpu(number); [ line added] > } > } > > With this changes, idle stat and frequency pages were populated and summary > was shown properly as noted below - > > Summary: 392.6 wakeups/second, 0.0 GPU ops/seconds, 0.0 VFS ops/sec and > 4.0% CPU use > > I think due to this bug, the information shown on summary page was also not > correct and some other info displayed by powertop may be incorrect too. > > Please comment. > > -- > Thanks, > -Meraj > > > > > > _______________________________________________ linaro-dev mailing list linaro-dev@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-dev