
Google to Samsung: Stop messing with Linux kernel code. It's hurting Android - notlukesky
https://www.zdnet.com/article/google-to-samsung-stop-messing-with-linux-kernel-code-its-hurting-android-security/
======
sdenton4
Once, some time ago, I was working on an Interesting Feature for an app using
wifi hotspots to connect multiple devices. There were LOTS of problems getting
this working properly on arbitrary devices, but I found that Joe-random
devices pumped out of a back room in Shenzen... Actually usually weren't bad.
The worst were Samsung devices: endless changes deep in the stack for no
apparent reason, which created all kinds of funny behavior that had to be
discovered the hard way and accounted for. (Also, it turns out there are like
twenty different phones called the J2. Nightmare for bug reporting...)

~~~
dehrmann
I've had surprisingly good luck with generic hardware based on well-known
chipsets.

Samsung, though. They see themselves more like Apple and want to control more
of the ecosystem, but they're not very good at it, and no one wants it. They
make decent hardware, but they let their software ambitions get in the way.

~~~
Intermernet
_cough_ ...bixby... _cough_

~~~
wayneftw
Man, I hate comments like this.

At least leave a link to whatever it is that you’re referencing or say why you
think it's relevant.

~~~
Intermernet
Sorry, to explain: Bixby is Samsung's attempt at jumping on the "intelligent
assistant" bandwagon. It's technically pretty good, but it has been pushed
down Samsung user's throats by being non-uninstallable, having a dedicated
button on the phone to enable it (that is _really_ hard to disable), and
trampling over Google assistant in random ways (like causing occasional issues
with Android Auto etc).

It's a lost cause that Samsung refuse to admit should be dead. It's pretty
much the canonical example of Samsung making good hardware, but having a
terrible plan when it comes to software.

Honestly, I figured everyone on HN would have at least _heard_ of Bixby, as
it's been a garbage fire for the last few years, and it touches on ML / mobile
/ questionable business decisions and terrible UX. This seems like a Venn
diagram that includes ~90% of HN users.

~~~
wayneftw
Never heard of it, but I'm always happy to be part of the 10% of exceptional
people.

Thanks for the explanation!

------
wicket
Me to Google: Stop messing with Linux kernel code. It's hurting Linux.

[https://leste.maemo.org/Leste_FAQ#What.27s_wrong_with_Androi...](https://leste.maemo.org/Leste_FAQ#What.27s_wrong_with_Android_.28vendor.29_kernels.3F)

~~~
ebg13
It doesn't hurt Linux. It hurts a billion Android users floating in a
wasteland of devices that never update. But the only part Google could
actually control is if they provided the stable driver interface that the
kernel refuses to provide, so it's not like Google is doing anything that the
kernel mainlining objective wasn't causing vendors to do anyway in the absence
of that stability.

------
darkengine
The original Project Zero article was discussed here 3 days ago:
[https://news.ycombinator.com/item?id=22315235](https://news.ycombinator.com/item?id=22315235)

------
DagAgren
Had to fix a Samsung kernel driver once because their temperature sensor
driver stored the measured temperature in Celsius in an unsigned char.

Meaning, of course, that if the processor was ever below freezing, it would
think it was running at over 200 degrees, and turn every clock it could find
down as far as possible because it thought it was about to catch on fire.

~~~
pjmlp
Gosling on why Java does not do unsigned arithemtic as primitive type.

> In programming language design, one of the standard problems is that the
> language grows so complex that nobody can understand it. One of the little
> experiments I tried was asking people about the rules for unsigned
> arithmetic in C. It turns out nobody understands how unsigned arithmetic in
> C works. There are a few obvious things that people understand, but many
> people don't understand it.

[https://www.artima.com/intv/gosling3.html](https://www.artima.com/intv/gosling3.html)

~~~
pingyong
Hm, I wonder what kind of questions that entailed. Because unsigned arithmetic
in C seems very intuitive to me. I have a hard time coming up with a question
that would be hard to answer. Certainly, if we're talking about the C
standard, unsigned integers are much more intuitive than signed integers.

Although even if there somehow are hard questions, I'm not sure understanding
unsigned arithmetic would have helped whoever wrote that code. Because I think
if you asked that person "what does this unsigned type do with -5 C?" the
answer would have been pretty obvious.

~~~
mantap
The problem is that programmers tend to confuse the concept of unsigned
integers and non-negative integers. They think that just because a number can
never be negative it is OK to use an unsigned integer to represent it. This
leads to lots of mixed arithmetic of unsigned and signed types which leads to
subtle bugs because neither is a subset of the other.

------
boring_twenties
If arbitrary code execution, according to Samsung, is of "moderate" severity,
I'd hate to see what their idea of a real bug is!

~~~
gradys
The highest level of severity is reserved for anything that allows users to
uninstall the crapware they ship with their phones.

~~~
raverbashing
No kidding

It's ridiculous how a brand new phone from Samsung comes with non user-
removable Facebook spyware and all their Bixby stuff that all want you to
create an account

~~~
tbrock
Vote with your wallet and buy pixels or Apple phones.

~~~
raverbashing
Pixels are not so easy to buy for some reason (outside of the US), only
through the web site and some stores.

I'm also voting with my wallet against Apple taking out the headphone jack.

~~~
StreamBright
[https://store.google.com/regionpicker](https://store.google.com/regionpicker)

Not sure what you are talking about. If I google buy google pixel outside of
the US it takes me to this where I can select my region. I includes many
regions/countries outside of the US.

~~~
graycrow
Many, but not all. Half of Europe is missing, for example.

~~~
cesarb
Also missing is all of the American continent other than North America and
Brazil. And selecting Brazil, there's only the Nest Mini and the Chromecast,
and nothing else.

------
mullingitover
This seems like one of those accidents that create valuable backdoors for
intelligence agencies with plausible deniability.

~~~
goldenManatee
Honestly, the truth is probably very mundane. It’s more likely that inter-
department political vying for power has created a lot of redundancy,
unnecessary work justified, and everything’s just barely being held together
by the public’s faith that because they’re big they’ve got it all figured out.

------
benbristow
What's with the autoplaying video and prompt for notifications? Annoying.

------
sub7
Hurting Android is embedding unremovable Google services all over the place
and implementing bullshit defaults like auto turning your wifi on and
collecting + storing all available networks silently. Pretty sure they are
intentionally slowing down old Pixels as well.

/rant

------
paulie_a
Samsung can't stop themselves from making inferior software at every turn.

------
FirstLvR
leave Android alone!!

 __sob __

ps: seriously, a great OS is chaos because no one respect no one but himself

------
cosmicexplorer
Telling hardware vendors not to modify kernel code feels grotesquely anti-
competitive.

~~~
jimmaswell
Definitely a bad look for Google to say they're the only ones allowed to write
kernel/driver code.

~~~
qtplatypus
Google doesn't say that at all. What they say to samsung is to push there
changes up so that the kernal teams can review them.

~~~
pjmlp
Just like Google Android team does, oh wait...

~~~
qtplatypus
Can you clarify that? I did some searches and all I could find was reports
that google made large contributions to the Linux kernel.

~~~
pjmlp
AOSP is just a subset of Google's changes made to Linux kernel.

Thanks to Project Treble, Linux on Android feels more like a pseudo micro
kernel than traditional Linux.

Then it is more like Linux + grsecurity than plain Linux, as it has LinuxSE,
seccomp, Fortify, hardware pointer validation (on supported devices) and a
couple of other security measures enabled by default, constraining what NDK is
actually allowed to do.

It has its own way of OOM killer daemon, it is compiled with clang.

Google is indeed a major Linux kernel contributor, but in the context of
Android team, they only contribute a subset of their changes.

------
briandilley
that guy was the most annoying interview i have seen in a while.

