I'm posting this so that others thinking about purchasing the device may get a perspective that they won't find in a YouTube product review, on the huawei subreddit, etc... I'm also posting to bring awareness to device owners/this community... Before replying, please have a look through the thread; I'm starting to provide a lot of info, that may give better insights to the problems I see...
I'm not bashing you for buying this device, so don't take my criticisms personally... I will try to provide as much info as I can. feel free to ask questions, share your own insights/experiences, etc...
First, i'd like to point out that the hardware is great, EMUI is better than i expected and has some nice extras (compared with stock android). There are many aspects that I do like about the phone, however there are many problems too. I take issue with a few things that I will outline in this post && in the thread;
- huawei revoking the bootloader unlock service
- huawei is extremely developer unfriendly/hostile.
- huawei's poor management of customers, poor policies && support
- huawei's "technical support" staff lack any real knowledge of their products.
- huawei as a company seems to be shady, imho && lacks any transparency.
It is very unfortunate, because i do like the device (the hardware/build seems to be very good). the leica cameras + camera software are great. i do like the native dark theme, the CPU is fast, nice display, etc.. but given the above and also after poking around the kernel code, in depth;
- huawei's kernel sources are by far the absolute worst kernel source code that I've seen in my life.
- it appears huawei has intentionally obfuscated their changesets, by how they distribute them...
- the code doesn't follow C standards, nor any consistent coding style / best practices typically found in the linux kernel.
- the published source code may not even be what's running on the device (EDIT: It's not. I've now verified this, follow the link at the bottom).
- they are also using a technology that allows live patching the running kernel remotely (so even if the sources are the same, it can be patched at runtime anyway. cant be properly audited)...
- they are a full year behind on linux LTS.
I have contacted huawei directly via email, phone and live chat (EDIT: everyday now, since I posted this thread and I will be continuing to do so). They have given me the run around continually and their staff were not able to give me any satisfactory answers to my concerns, nor did i get the impression they even gave a crap ... They have only added to my suspicions (significantly) and along with the recent bad press that huawei has had in US, UK, Canada (where i am) and Australia; i don't trust huawei, their lack of transparency and lack of cooperation; is rather unsettling... Likewise, I find their hostility towards developers and users who would like to service their own devices (via OEM unlock) to be a brutal policy. (especially since their justifications are mostly FUD/untrue.).
- Audio latency is also horrible on the P20 Pro. it experiences anywhere from 50-500ms of latency with pro audio type apps. (noise app by roli in playstore shows just how bad it is, so does Beatonal app, many others too.) the device uses x6 the audio buffering compared the OG pixel. (the OG pixel has no problems with low latency at all, with far lower specs).
so to recap; it's pretty sad and unfortunate,
- i can't run my apps. (love my music creation apps)
- i have no control or ownership over my P20 Pro. apparently only huawei and the Chinese gov't do.
- i don't trust or have faith in the manufacturer.
- the kernel source code is disgusting and incomplete.
- I find some of the technology used troubling at best.
Here's some links in the thread, where some of the above is discussed in more detail;
some kernel source related issues outlined in more detail by me:
(note: I'm discussing evira kernel, but nearly all of the issues apply to the distributed kernel sources that evira is based on)
if you are interested in helping me verify if the kernel sources actually reflect what's running on your device, follow this post;
https://forum.xda-developers.com/sho...0&postcount=32 (this would be very helpful, as it will be ammo that I bring to huawei).
The distributed kernel sources are absolutely NOT the kernel sources used to compile the kernel that's running on your device:
(this is an update to the above help request; I've now verified that at least L29/LO4 running kernels differ from the provided sources)
livepatch/OASES/Karma technology used by huawei, zte and others: