With Android Oreo, Google Is Introducing Linux Kernel Requirements (betanews.com)
Mark Wilson shares a report from BetaNews: As is easy to tell by comparing versions of Android from different handset manufacturers, developers are -- broadly speaking -- free to do whatever they want with Android, but with Oreo, one aspect of this is changing. Google is introducing a new requirement that OEMs must meet certain requirements when choosing the Linux kernel they use. Until now, as pointed out by XDA Developers, OEMs have been free to use whatever Linux kernel they wanted to create their own version of Android. Of course, their builds still had to pass Google's other tests, but the kernel number itself was not an issue. Moving forward, Android devices running Oreo must use at least kernel 3.18, but there are more specific requirements to meet as well. Google explains on the Android Source page: "Android O mandates a minimum kernel version and kernel configuration and checks them both in VTS as well as during an OTA. Android device kernels must enable the kernel .config support along with the option to read the kernel configuration at runtime through procfs."
If the complete kernel configuration can be read, does this mean malware authors like NSA, CIA, criminals etc. will have an easier time getting inside your phone?
Whoooppeeee!
# echo "3.18" > /proc/version
I know it's a little more complicated than that, but I know that some of those handset devs will be tempted to try just modifying the kernel number to pass the test.
"First they came for the slanderers and i said nothing."
So, they want you to run a kernel that is younger than two years old, and they want to be able to see which features it has enabled. Both perfectly reasonable requirements, most likely based or real engineering issues.
Re:systemd here we come!
All we need now is Wayland
Congratulation, you've successfully described Jolla's Sailfish OS....
and the Unity desktop
...and Canonical's attempts at Ubuntu Touch.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
It's shit!!!
It's shit!!!!
Who will educate Google on the importance of including all kernel versions, not just the newer more fertile ones?
With v4.13 just released!
It's a really new OS, then!
Sent as ripples into the electromagnetic field. No single photon has been harmed in the process.
It's shit just like the other mobileOSes!!!
Sent as ripples into the electromagnetic field. No single photon has been harmed in the process.
What are all the people who don't suck Satan's co.... I mean... those who refuse to refer to it by an advert going to call it?
Android Orange-Slices?
Android O...?
All SoCs productized in 2017 must launch with kernel 4.4 or newer.
All other SoCs launching new Android devices running Android O must use kernel 3.18 or newer.
Regardless of launch date, all SoCs with device launches on Android O remain subject to kernel changes required to enable Treble.
Older Android devices released prior to Android O but that will be upgraded to Android O can continue to use their original base kernel version if desired.
Then some app comes along that needs to do something different depending on kernel version, and uses the 3.18 which fails, even though the app supports the 2.6 version that the phone is actually running.
That you can't use the word "mandate" because it has the word "man" in it and that's a micro-aggression towards women in tech.
And "date" because its meaning either has sexual connotations or is ageist.
some phones use really horrible outdated kernel versions, mostly because they have blobs in them that aren't updated.
this is a good step in the right direction, but google could still do more.
On a long enough timeline, the survival rate for everyone drops to zero.
The ideal of standards is good for Android. But like any product you need a little customizing to sell it as unique. Kind of the boring part of a Chromebook that except for design and a couple hardware changes. I think some basic requirements is probably good to maintain a reasonable experience. We all know there are a lot of crappy Android phones out there.
I'm actually surprised that Android was (is, 3.18 is 2.5years old!) permitted to use old kernels with all the bugs they had (unauthorised remote access was rarely a problem... but quite a few bugs allowed privilege scalation provided physical access, and a phone is not a computer room).
And when you use the two words together you get a "man date", which is coercion toward women, forcing them to use their phones wether they want it or not.
#DeleteFacebook
This seems to me like a major hindrance for developers of custom firmwares. Since OEM's don't give a shit and don't release hardware blobs for their own devices, community developers had to use older kernels with new firmwares. For example my 4 year old Nexus 4 runs a bugfree custom Android 7.1.1 but the kernel is still the same as with 5.0, since Google stopped supporting the device and didn't release blobs for newer kernels. Now a kernel version of 3.18 for O seems fine, but there's no guarantee that newer firmwares won't have much higher requirements, like 4.0 for P etc. This would make many devices obsolete despite the high effort of those community developers, doing on their spare time the jobs that the OEM's should do.
If Google wanted to be serious about this they had to at least demand of OEM's to publish hardware blobs from now on for newer kernels. But it seems that this action is just another another step by big G to help the OEM's to accomplish more easily their planned obsolescence for any device which is over a year old.
It's shit just like the other OSes!!!
I wonder how much is to simplify life for project Treble, and how much to fuck everyone with safetynet?
Right now you can defeat the safetynet checks by having the kernel not report on the bootloader lock/unlock status, but if you enforce a 4.4.x kernel as well as publishing the config, safetynet will check the bootloader status and will see from the config if the kernel is reporting it or not. If unlocked or configured to not report it, safetynet will fail the basic checks.
This will quickly kill custom ROMs, as well as any pretense to android's openness, as more and more ***hole devs use safetynet to block running their apps on rooted/modified devices.
Android? Oh.
#DeleteFacebook
All these air quotes you people are doing is a form of talking with your hands, which is now accepted to be a micro-aggression also.
"His name was James Damore."
Then some app comes along that needs to do something different depending on kernel version, and uses the 3.18 which fails
App devs are practical, however, and will figure it out and add more specific tests. If they don't, they lose sales.
"His name was James Damore."
I take offense at your use of "micro." You are impugning my manhood. My aggressions are a "good size." She told me so and that's why I know it's true.
I've fallen off your lawn, and I can't get up.
It's shit just like everything.
CONFIG_DOUBLE_STUF
cause you know more is always better...
They want ALL OSs to be subvertable. Because in theory you could run a ciphered communications app on the phone and they might have a "need" to obtain the keys.
So they simply ensure the kernel AND the hardware are hackable remotely. And in an automated fashion.
Linux had a zero day in gethostbyname() just recently. So all you need is about 10 lines of JS injected into your browsing session and they have your Linix kernel pwned. Of course that one is fixed and NSA/JCS will by now have inserted some other shit.
# echo "3.18" > /proc/version
bash: echo: write error: Input/output error
(because /proc/version is r/o)
When all you have is a hammer, every problem starts to look like a thumb.
Yeaeh you would have to modify the version number at compile time.
"First they came for the slanderers and i said nothing."
I like asparagus.
What's weird though is that echo /proc/version yielded /proc/version even though kwrite /proc/version got the correct info.
I think we've pushed this "anyone can grow up to be president" thing too far.
In every environment I have ever worked in the "version number" is simply a compiled in constant. I have the kernel source, can't I simply compile in the version of the kernel that is being tested for?
I have mod points and I am not afraid to use them
so it will pay out for accepting binary firmware blob all along...
For the company.
That's because echo is for outputting text, not files (that's `cat`). `echo /proc/version` should work.
and tax-payers supported the attempt to give you an education... what a waste.
That's impossible, this is slashdot, everybody has Data A Live running in a loop in the "living-room" half of the basement.
No deto, no social life. You can't take that away from them. Let them have their deto.
Good post, except that Linux does not have user space device drivers, with a few exceptions such as X11 and FUSE.
Technically correct, as user-space driver subsystems like CUPS (for printing) and SANE (for scanning) don't depend much on anything specific to Linux proper. They're used with GNU/Linux, but they're also used with (say) FreeBSD.
Thanks. I thought that /proc/version was returning a text string, though in that case one has to wonder why I even tried kwrite.
I think we've pushed this "anyone can grow up to be president" thing too far.