On Tue, Oct 31 2017 at 03:57, Joel Fernandes wrote:
Hi Zachariah,
On Mon, Oct 30, 2017 at 2:41 PM, Zachariah Kennedy zkennedy87@gmail.com wrote:
I do have an EM. I am developing for the OnePlus 5 with the same SD835 as the Pixel 2s. So I am using the same EM as the Pixel 2. I can even check proc/sys/kernel/sched_domain and see the EM data per core. I am guessing that during suspend, certain cores are offlined and the sched_domain data is cleared for those cores thus providing the warning. It splats about 20 times a second during suspend.
Yes, this would definitely be explained by cores being hotplugged out - I haven't looked into the details but a simple example is that if all the cores but one are hotplugged out, then there won't be _any_ sched_domains (IIUC), so the checks introduced by the patch in question will definitely fail.
I'm happy to leave the patch reverted - I wrote it a long time ago to to simplify asking the question "are you sure you actually have an EM loaded?" when our synthetic tests failed. We now have a check in LISA's 'preliminary' suite that tells you the answer to that, and it doesn't require carrying a kernel patch, so I'd say it's a simpler solution. And in the end, when you're testing real Android platforms, there isn't really an avenue for make the mistake of missing out an EM.
Thanks for the report!
This could be a sign of a bigger problem then and I'm curious to know what Brendan thinks since he added the warning patch.
So another question I am unsure of is:
Is the sched_domain data supposed to stick around even during suspend? If you dont know, that's OK. I just appreciate you getting with me.
Here's what I understand: During boot, the energy data is read from DT and store into an sge_array global data on boot up. Then when CPUs are brought online/offline - build_sched_domains calls init_sched_energy and stores a pointer to the sched_group_energy (depending on whether the domain is at cluster or core level). I suspect something is messed up here for your kernel.
Lastly, on a different note while I have ya, will the Pixel 2 eventually get EAS 1.4 and so on? I know on the Pixel, you guys opted to stick with EAS 1.1 for stability and performance on 3.18. So I was curious how far you guys were planning on pushing EAS on the new Pixel 2s.
I really don't know the answer to that at the moment.
Keep up the great work. Not only have I been following y'alls work, but I am part of the XDA Developer community and there are a large number of others interested in the future of EAS.
Nice to know. Thanks. Developers are welcome to participate.
- Joel
[..]