Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Project To Mainline Android Kernel Changes Formed

Unknown Lamer posted more than 2 years ago | from the keep-on-merging dept.

Android 73

ghostoftiber writes "From the article: 'Tim Bird, a Sony engineering veteran and the chair of the Architecture Group of the Linux Foundation's CE Workgroup, has announced a new concerted effort to get Android's changes to the Linux kernel back into the mainline Linux kernel tree.' Android has been using Linux 2.6.x for its devices since its release, with patches from Google. To date they haven't been merged back into the kernel mainline but existed on kernel.org. Some of the features such as wakelocks would help with Linux tablet projects, but other features aren't fully realized and support remains spotty. The radio interface layer ... still exists as an ATI/Nvidia-esque shim loader scheme with modem 'drivers' being nothing more than ihex files loaded by open code."

cancel ×

73 comments

Sorry! There are no comments related to the filter you selected.

Me post first. (-1)

Anonymous Coward | more than 2 years ago | (#38450816)

This is stupid very very stupid.

Attention! (3, Informative)

Anonymous Coward | more than 2 years ago | (#38450832)

Android has been using Linux 2.6.x for it is devices since it is release, with patches from Google.

Editors, please edit. Just once. Please.

Re:Attention! (0)

Zugok (17194) | more than 2 years ago | (#38450924)

Yet they contract it to it is to it's. We are fighting a losing battle.

Re:Attention! (5, Funny)

Raenex (947668) | more than 2 years ago | (#38451018)

It's a loosing battle, now.

Re:Attention! (2)

AikonMGB (1013995) | more than 2 years ago | (#38451542)

If we give you enough +Funnys, will it eventually bump to Score:6?

Re:Attention! (1)

warrax_666 (144623) | more than 2 years ago | (#38451886)

No it wont.

Re:Attention! (0)

Anonymous Coward | more than 2 years ago | (#38452104)

you mean it's not gonna happen?

Re:Attention! (1)

nacturation (646836) | more than 2 years ago | (#38456434)

For all intensive purposes, I could care less.

Re:Attention! (0)

Anonymous Coward | more than 2 years ago | (#38457860)

In the meanwhile, people are taking this thing to far.

Re:Attention! (1)

Spugglefink (1041680) | more than 2 years ago | (#38457980)

For all intensive purposes, I could care less.

Supposively, their all the same thing anyway.

Mandatory angryflower link (1)

Liam (39474) | more than 2 years ago | (#38450950)

itsits [angryflower.com]

Re:Attention! (1)

rumith (983060) | more than 2 years ago | (#38451282)

Android has been using Linux 2.6.x for it's devices since it's release

Now they changed it to this. What have you done?!

Re:Attention! (1)

Jesus_666 (702802) | more than 2 years ago | (#38451560)

Devices are release and Google is both. A stealth comment on consumerism? (I know it's not but let me have the illusion at least...)

its. (1)

ischorr (657205) | more than 2 years ago | (#38450848)

"Its".

That is all.

Re:its. (2)

Hatta (162192) | more than 2 years ago | (#38450936)

Monty Python's Flying Circus!

Re:its. (1)

Crudely_Indecent (739699) | more than 2 years ago | (#38451150)

time for something completely different

Re:its. (0)

Anonymous Coward | more than 2 years ago | (#38451362)

A man with three buttocks.

Re:its. (1)

Crudely_Indecent (739699) | more than 2 years ago | (#38451384)

just sleeping

Re:its. (1)

ischorr (657205) | more than 2 years ago | (#38451190)

No, that WOULD be "it's" =)

Re:its. (1)

Tumbleweed (3706) | more than 2 years ago | (#38452038)

Monty Python's Flying Circus!

I prefer their original name, Owl-Stretching Time.

Stupid BBC.

RIL? Kernel? (5, Informative)

Andy Dodd (701) | more than 2 years ago | (#38450854)

On nearly all devices the RIL is in userland.

On Samsung GalaxyS devices, the modem was attached to a serial port and the RIL translated Android RIL function calls into modem AT commands. The kernel part of the radio interface was a serial port driver, nothing more.

Same for most HTC devices, although some that used Qualcomm MSM implemented a pseudo-tty implemented over shared memory - but it was still AT commands being transferred. Other Qualcomm AMSS functions were implemented using an RPC-over-shared-memory interface, the kernel portion of this was small.

Galaxy S II devices (at least GSM Exynos-based ones) have the radio hung as a USB device off of the CPU, so it did require a driver to implement. Still, most of the RIL is in userland, and the RIL belongs there.

Re:Radio Interface Layer? Kernel? (3, Informative)

Anonymous Coward | more than 2 years ago | (#38451758)

I assume you meant Radio Interface Layer but it took a while to figure that out. I figure I'll just help people out a bit.

Re:Radio Interface Layer? Kernel? (3, Informative)

Andy Dodd (701) | more than 2 years ago | (#38451860)

Correct, RIL = radio interface layer in this case. I was responding to this in the summary:

"The radio interface layer ... still exists as an ATI/Nvidia-esque shim loader scheme with modem 'drivers' being nothing more than ihex files loaded by open code."

Now, in many cases, it is correct that hex files are being loaded by open code on initialization... but the radio baseband firmware of any phone I know of has NEVER been open source. All they are doing is bootloading a separate radio chipset, which has its own processor. It's another thing that doesn't belong in the kernel (you want scary? I have seen some cases where device firmware is stored as gigantic C arrays in header files... An example of something that should NOT be in the kernel...)

Re:Radio Interface Layer? Kernel? (1)

Andy Dodd (701) | more than 2 years ago | (#38451926)

So far I can't even find any reference to the RIL/modem drivers anywhere in TFA or any other links...

Looks like just another case of the submitter being an uneducated whiner trying to sensationalize.

Re:Radio Interface Layer? Kernel? (0)

Anonymous Coward | more than 2 years ago | (#38451876)

Thanks, I was going to look that up as well.

Oh, no. (0)

Anonymous Coward | more than 2 years ago | (#38450906)

The best way to describe many of the Android changes to Linux is "utter braindamage". Seriously, are they planning to mainline Binder? Are they nuts or what?
Also, the fact that the network security extensions have "hardcoded group and user IDs" "might make mainlining difficult"? Ha!
What do these guys think Linux is, Google's playground or what?

Re:Oh, no. (-1, Troll)

Anonymous Coward | more than 2 years ago | (#38451240)

The best way to describe many of the Android changes to Linux is "utter braindamage"

Linux is already so retarded that I doubt anybody will notice. We've long reached the stage where there's far too much stuff in the mainline kernel. Every other option is now "WTF is this?" -- where I once understood every single configuration option.

the network security extensions have "hardcoded group and user IDs"

Which may make sense for embedded devices?

Re:Oh, no. (5, Funny)

JonahsDad (1332091) | more than 2 years ago | (#38451298)

Linux is already so retarded that I doubt anybody will notice. We've long reached the stage where there's far too much stuff in the mainline kernel. Every other option is now "WTF is this?" -- where I once understood every single configuration option.

Linus, you don't have to post as an AC.

Re:Oh, no. (0)

lennier1 (264730) | more than 2 years ago | (#38451386)

A kingdom for some mod points!!!

Re:Oh, no. (1)

Anonymous Coward | more than 2 years ago | (#38451838)

A kingdom for some mod points!!!

There you go. I modded GP "Funny" for you. I'll take that kingdom now.

(Posting AC in order to not undo the modding and lose my kingdom, of course).

Re:Oh, no. (3, Informative)

GuB-42 (2483988) | more than 2 years ago | (#38451296)

Linux is everyone's playground.

Google and the mainline developers hold different point of view. For Google, the kernel is just a component of their OS, this is the reason why they can get away with hacks that mainline developers view as brain damage. They just need to get it to work with Android.

Trying to merge the mainline kernel with Android is just a bonus witch benefits both parties.

Re:Oh, no. (2)

Galestar (1473827) | more than 2 years ago | (#38452324)

just a bonus witch

Gotta love those bonus witches.

Re:Oh, no. (0)

Anonymous Coward | more than 2 years ago | (#38453938)

just a bonus witch

Gotta love those bonus witches.

Well, that's how you get to build more bridges.

Re:Oh, no. (0)

Anonymous Coward | more than 2 years ago | (#38459464)

...unless you startle them...

Re:Oh, no. (-1, Troll)

FlyingGuy (989135) | more than 2 years ago | (#38452894)

No it is most assuredly not! Google does not give a rats ass about the cruft they kluge in as long is makes Android look superior to iOS which it is most certainly not.

mod) 0p (-1)

Anonymous Coward | more than 2 years ago | (#38451176)

Lite is s7raini8g

Submitting contributions upstream? (1)

lennier1 (264730) | more than 2 years ago | (#38451322)

What a novel idea!!!

Re:Submitting contributions upstream? (0)

Anonymous Coward | more than 2 years ago | (#38451398)

If you'd been reading some of linuses comments to people who RE mainlining code, you might want something akin to dkms implemented natively in the kernel and just let users download the changes themselves too.

Re:Submitting contributions upstream? (1)

stephanruby (542433) | more than 2 years ago | (#38452762)

Google has been wanting those wakelocks included in the mainline for quite a while now. And it was only recently that the issue was reconsidered by Linus and the other maintainers, so that those changes were finally accepted into the mainline.

Don't mainline kernel changes (1)

Anonymous Coward | more than 2 years ago | (#38451382)

It's better when you snort them.

Contribute upstream, but change everything! (0)

Anonymous Coward | more than 2 years ago | (#38451524)

As I understand, the reason why Android kernel changes have been slow to be merged back in is that the Linux community doesn't want them; things are done differently from what the expected behavior is, and so the linux community demands that Android change its mobile architecture to conform to something that will run on someone's x86 desktop, or not.

Re:Contribute upstream, but change everything! (2)

olau (314197) | more than 2 years ago | (#38452240)

While there may be some truth in this, look at it from the other side of the table. It's a bad idea to take a badly fitting half-baked component thrown over the wall and merge it in, just to shut up a contributor. That's not how you survive in the long term as an open source project.

Re:Contribute upstream, but change everything! (1)

cynyr (703126) | more than 2 years ago | (#38455714)

on top of that there is a history of not accepting patches that cause regressions in some loads, especially when those loads are server ones. The linux kernel community seems to not want them, but in reality they want them to work in/on all systems/platforms.

Anyways, all of that said as nothing more than a long term linux user, as i'm not a kernel dev or anything like one.

Sony is involved? Beware. (0)

Anonymous Coward | more than 2 years ago | (#38451692)

Sony veteran? Are we mainlining some rootkit code?

Re:Sony is involved? Beware. (1)

marcosdumay (620877) | more than 2 years ago | (#38453198)

Sony produces Android phones (or outsources, the difference is not relevant here), so they too write drivers for phones.

Also, as far as I know, there is no evidence indicating that their technical personel is as unethical as their executives, so I'm quite willing to trust them. Besides, it is free software, and rootkit would need to be public.

Just say Nay! (-1, Flamebait)

FlyingGuy (989135) | more than 2 years ago | (#38451768)

I for one don't want half baked Android ( hurry push it out so we can one up Apple's IOS ) garbage in my Linux Kernel thank you.

Android is being pushed by god alone knows how many companies doing their own patches and coordinating with no one. While I am perfectly comfortable with them doing their own thing on their own devices I don't want their kludges to drift back into my server or desktop kernel.

I can only hope and pray that Linus sees his and just tells them to fuck off.

Re:Just say Nay! (-1)

Anonymous Coward | more than 2 years ago | (#38451820)

Can I mainline my penis into your butt?

Re:Just say Nay! (-1)

Anonymous Coward | more than 2 years ago | (#38452070)

Yes plz! 8=======> (_0_)

~T

Re:Just say Nay! (1)

PenquinCoder (1431871) | more than 2 years ago | (#38451920)

Much agreed with this. Mainline kernel does not need more untested kludgy garbage pushed into it from companies that didn't care to do shit right to begin with.

Re:Just say Nay! (1)

Doc Ruby (173196) | more than 2 years ago | (#38452056)

I don't see why Android patches that aren't more or less universal in installation target should be in the mainline kernel. Isn't that exactly what source tree branches are for? Regardless of their quality (which should only determine whether they're committed, not where they're committed) if their features are out of scope of the mainstream, why would they be committed to the mainstream branch?

Re:Just say Nay! (1)

FlyingGuy (989135) | more than 2 years ago | (#38453024)

I don't see why Android patches that aren't more or less universal...

The more or less part is the bit that worries me. When Novell or Redhat or anyone else submits kernel enhancements or patches they are doing so in concert with many other stake holders. What Google and other less reputable entities want to do is back rev the kernel to support Android specifically an OS unto itself if you will and thus will be Android specific. Android has shown itself to be both pretty buggy and having security issues, even in Ice Cream Sandwich.

Re:Just say Nay! (1)

Doc Ruby (173196) | more than 2 years ago | (#38453882)

Well as I said, bugs/quality are one issue that should prevent committing to any "live" branch used for building on actual devices.

But the universality of code is always a call by the project management. There's plenty of code that can be compiled into machines on which it will not run, so long as logic prevents it running there. The extra size of the OS image isn't that big a problem, so long as it's not being executed (and the logic that stops it isn't being executed too much). Generating different versions depending on architecture targets should be a matter of #IFDEF or other conditional compilation at least. It really should be factored into modules, like loadable kernel modules. I personally prefer a microkernel architecture for this reason, but Linux went with monolithic kernels. The kernel build config files should give selection control, including groups per architecture tags. But a little extra that's properly shut off is OK. These gray areas are all delineated by educated guesses by the project management.

Re:Just say Nay! (-1)

Anonymous Coward | more than 2 years ago | (#38455278)

You must be frustrated with the success of Android. Is it because your POS bug filled WP7 phone isn't selling? Did you really think that pathetic company could make a mobile OS consumers would want? You stupid little wanker.

Re:Just say Nay! (3, Insightful)

dbc (135354) | more than 2 years ago | (#38452944)

Exactly. Google is being outrageously arrogant, IMHO. If you want your stuff in the kernel, submit a patch that Linus is happy with -- Google somehow believes that their stuff should get merged just because they are Google.

Clue for Google: IBM, Intel, and every other major player has coded, re-coded, re-re-coded, and absorbed and acted upon LKML input, without getting their feelings hurt (leastwise they didn't whine about it publicly).

It would be best for all concerned if Google's *good* ideas were put in a form that Linus and the LKML are happy with, and merged. The bad ideas should be left out. And merging cruft just because it is from Google is a Really Bad Idea. Cruft is cruft.

Re:Just say Nay! (2)

SadButTrue (848439) | more than 2 years ago | (#38456858)

Knowing next to nothing about what makes kernel code good or cruft what did Google submit that is cruft?

I am not a partisan in this, I really want to know. I chose to ask this question here because you seem passionate about this. I read a bit about the wake lock driver changes forever ago. There seemed to be a lot of disdain for that model at the time.

Aside from that, is there something that the OS community could do to help inform google? I ask only because android seems to be a wonderful means to an end. More than anything before it android could actually make this the year of the linux desktop. (I feel dirty for having said that)

Re:Just say Nay! (0)

Anonymous Coward | more than 2 years ago | (#38457332)

If the year of the linux desktop involves horrible java-dependent crap, I'd rather it never came.

Re:Just say Nay! (1)

dbc (135354) | more than 2 years ago | (#38459866)

The only community input that matters here is that from LKML. The LKML is the judge of cruft. Google knows how to find LKML. Every other company that wants code in the mainline joins the LKML community as a *peer* and leaves the attitude behind.

Re:Just say Nay! (1)

marcosdumay (620877) | more than 2 years ago | (#38453254)

I'd be glad if drivers for all that stuf that goes into phones were availabe at the kernel. It would make it way easier to create other kinds of computers.

But I do understand you are concerned about code quality. The problem is that quality won't start improving if people don't start to reuse their drivers, and people won't reuse drivers if they are not at the main kernel. It is quite ok to ask for a driver that won't cause problems for other code, it is not ok to ask for a driver that doesn't have bugs.

Re:Just say Nay! (2)

bgat (123664) | more than 2 years ago | (#38456190)

... but you can't reuse something that is of sufficiently low quality, whether it is in the mainline kernel or not. And a lot of the drivers associated with Android fall into this category, or at least the ones I have reviewed. Google clearly isn't All That on the driver side, by far. (Or in the HAL code in Android, for that matter, but that is a different topic).

And I have never been convinced that runtime-PM wasn't a technically better solution than Wakelocks, either. So I really haven't lost any sleep over the latter not being in mainline.

Re:Just say Nay! (0)

Anonymous Coward | more than 2 years ago | (#38455170)

I can only hope an pray you get hit by a bus and get dragged until your skin is peeled off, you POS iSheep.

OSS Android Libraries? (2)

Doc Ruby (173196) | more than 2 years ago | (#38451968)

Android's source is (currently) open, and its Dalvik JVM is Apache licensed. But what about the Java class libraries to which apps link in order to run? Is their source open? Because Android's development model makes those libraries as much a part of the OS as is any of the rest of the SW Google added to the Linux kernel (ie. substituting for the GNU SW that's in most popular "Linux" distros).

Re:OSS Android Libraries? (1)

Anonymous Coward | more than 2 years ago | (#38453046)

The framework classes are Apache 2, same as Dalvik.

I'm not sure what your point is; the Android Frameworks classes and code are as relevant to the kernel as Gnome is.

If you want a pure GPL Android framework, you are certainly welcome to cleanroom reverse engineer everything.

Re:OSS Android Libraries? (1)

Doc Ruby (173196) | more than 2 years ago | (#38453828)

Thanks for the clarification on the license.

My point was only that the framework class libraries in Android are part of the OS, even though that's not the traditional view of Java class libraries. I'm not looking for pure GPL.

Why bother? (0)

Anonymous Coward | more than 2 years ago | (#38452086)

Why do people care so much if the Android kernel is in sync with the mainline kernel? I thought the idea behind open source was that you could take the source and do whatever you want (within the restrictions of the license but you know what I mean). Why do people make such a big deal out of forking?

Re:Why bother? (3, Insightful)

olau (314197) | more than 2 years ago | (#38452336)

Because it aids collaboration, avoids duplication of effort, leaves more room for innovation from more people, more eyes make the bugs shallower, etc. The things that make open source a success to begin with.

If you think open source is all there is to open source, you don't understand it properly.

Mainlining (3, Funny)

ilsaloving (1534307) | more than 2 years ago | (#38452198)

Just be mindful about sharing needles while mainlining. Last thing linux needs is to get a virus.

(I'll get my coat...)

baby, bathwater, which direction? (1)

drwho (4190) | more than 2 years ago | (#38453210)

OK, so android is crap in lots of ways. What bothers me the most is the ever increasing incompatibilities between the older versions and the newer ones, and of course all of the vendor customizations. But what about the actual kernel mods? Are they any good? Some of them, perhaps a great number, are going to be used only by android and perhaps one or two other projects. But some may not be. Some people here are saying "don't take the patches just because they come from Google" - well, ok, not google specifically no matter how much of a fanboy you are. But there is something to be said for code which has been developed by a team of highly skilled people and tested on millions of installed devices. It could be from Microsoft for all I care. If the change are good, take them. Consider the big picture: what we have here is a developing fork which we want to head off. So, what should happen is that 1) Linux(s) agrees to seriously investigate merging some of the Android patches, and (2) Google agrees to start using a Linux3 kernel (starting with the version incorporating Google changes). Google should apply their patches to this Linux3 kernel, including the patches which were not accepted into the mainline kernel. Google should NOT be forced to commit to using whichever kernel is considered modern and safe by everyone else but they should be ENCOURAGED to stay reasonably up to date, i.e. not more than a year behind the current releases.

However, even moving to a Linux3 kernel can inadvertently cause bloat which may make future versions of Android even less usable on older phones (like my G1) than they are now. So, consider where the value is in upgrading Android's kernel to Linux3. I don't have enough knowledge on this, so I will have to depend on some experts to make this decision. I hope these experts don't get paid or praised based upon how many new phones are sold...

no freaking way, please!!! (2)

dltaylor (7510) | more than 2 years ago | (#38454326)

As has been repeatedly reported, Linus is fine with someone taking a version of the Linux kernel and forking it off in their own special direction, as the Android developers have done. If you want to put some of the those features back into his main line, though, they will have to meet his standards, and those of the people he has trusted to manage the kernel changes. If the Android developers' changes were acceptable, they would already have been merged.

"wakelocks", for example, are a kludge to cover up some very lax user-space coding standards, and are not acceptable.

There is a lot of recent work (not really finished, IMO) to handle micromanaging power consumption for System on Chip (SoC), battery-powered devices, both in the kernel itself and through controlling userspace. If Android developers want to be using the mainstream kernel, they should be preparing to use the new interfaces and tools, while helping to find any real issues, rather than whining "why won't you just do it our way?".

My contribution to the Linux kernel is incredibly minor, but it had to go through exactly the same vetting process, and the result was a better change.

Re:no freaking way, please!!! (1)

SadButTrue (848439) | more than 2 years ago | (#38456924)

No doubt at all. Everything you said is right on and I suspect that the devs at google doing kernel work would agree. The problem lies in the fact that the "not really finished" power management stuff needed to be done 3 years ago. Now there are hundreds of millions of copies of wakelock code running on real devices.

There are user space workarounds for migration. How do you migrate drivers? Especially when you have no control over how the companies actually implementing your code.

I don't meant to imply that linux should incorporate weak design, but as someone who really wants to see OS thrive where is the line. What would be the path forward for google and android to be acceptable given the constraints?

Re:no freaking way, please!!! (0)

Anonymous Coward | more than 2 years ago | (#38459270)

Linux is where it is because the community, with Linus on top, always resisted 'quick' solutions being integrated, and instead opted for a lenghtier process where a feature is developed to address concerns from coding style and layering, to impact on kernel performance, suggested improvements and making it more general purpose if the initial version was narrower in scope. This is why Linux is probably the best kernel in existence, and runs on everything from refridgerator interface to big Iron.

Let's hope that Google will do it properly some day, but these devices will never be supported by a vanilla kernel. Most of them rely a lot on binary drivers, and the Google kernel uses hacks to load them into kernel without violating the GPL (the ihex file is, if I understand it, another form of a kernel module) - that approach is not going to work with Linus and his crowd.

k5 reunion?!!? (0)

Anonymous Coward | more than 2 years ago | (#38454490)

Unknown Lamer? Check
GhostOfTiber? Check
Michael Crawford and a 9000-word comment about Linux that quickly turns into Cal Tech, Tsutomu Shimomura, Richard Feynman? Ahh, not yet.

Security (0)

Anonymous Coward | more than 2 years ago | (#38459104)

Will this make Linux as insecure as Android?

Check for New Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>