|
As the Android kernel code is now gone from the Linux kernel, as of the 2.6.33 kernel release, I'm starting to get a lot of questions about what happened, and what to do next with regards to Android. So here's my opinion on the whole matter... posted Tue, 02 Feb 2010 in [/linux]
Here's the state of the -stable kernel trees, as of January 18, 2010. 2.6.27-stableThe 2.6.27-stable kernel tree is still living on, as a "long-term" stable release. But, I do have to warn users of this tree, the older it gets, the less viable it becomes. Not all bugfixes are being backported to this kernel version due to massive code changes in the over 2 years since this kernel has been released. I am doing my best to backport fixes that I become aware of, and I encourage anyone who does fix any types of bugs in the main kernel tree to let me know if the change should be applied to this older kernel version. I'll probably keep maintaining it for at least 6-8 more months, but after that, I can not guarantee it's viability. Note, one other developer has volunteered to pick up the tree after I am finished with it, but I can not speak for him at this time. 2.6.31-stableToday the last 2.6.31-stable kernel was released, all users of this kernel series are strongly encouraged to switch to the 2.6.32 kernel series, as there will not be any more updates for this branch in the future. 2.6.32-stableI'd like to announce that the 2.6.32-stable tree is also going to be maintained as a "long-term" stable release, living for 2-3 years, like the 2.6.27 kernel is. This is because a number (i.e. more than 2) Linux distributions are basing their "enterprise" releases on this kernel version, and it will make their lives easier if I keep it alive. Note, the viability of me keeping this tree alive for such a length of time relies on the developers working for those distros to keep me informed of patches that need to be backported and applied to it. Without their help, I will have no problem in stopping the maintenance of the tree. Submitting patches for stable treesAgain, the easiest way to get your patch into a -stable tree is to merely add the line:
to the Signed-off-by: area of your patch. When the patch goes into Linus's tree, it will be automatically sent to the stable address, and I will know to apply it to the trees. If I have any problem applying it at that time, I will email the author and reviewers of the patch about it. If you forgot to add this line to the patch, or you have found a patch written by someone else that you wish to have applied to the stable trees, email the git commit id of the patch as it shows up in Linus's tree to the stable@kernel.org email address. Any stable correspondence sent to my personal accounts has the chance of being lost in the shuffle, so please try to not do that. If a patch needs to be backported to one of the stable trees because it does not apply directly, please send the backported patch, along with the git commit id of the original patch, to the stable@kernel.org address, with a description of which kernel tree it should be applied to. If anyone has any other questions about stable releases, please let me know. posted Mon, 18 Jan 2010 in [/linux] Way back in 2008 I started to use twitter as a dump of my command line. Well, 23 thousand tweets later, most of them being something as boring as q ref, I've stopped the experiment. Turns out just seeing one side of the conversation (what I type) and not the output, is a pretty boring thing. That being said, 155 people did find it amusing enough to follow, and for that, I am totally amazed. True, 150 of them are probably bots, I sure hope their scripts enjoyed the show. Twitter also started to rate limit me after the first few months, in a silent manner. The server would say it accepted the message, yet it would never show up anywhere. The good thing out of this, was the tool, bti, which lots of people seem to be using as it provides an easy way to pipe output to twitter-like services. It has also grown way beyond my initial expectations, now providing the ability to read messages, and lots of other things (readline? Yeah, readline, the GPL trojen horse, is now supported, I need to work on making it so that readline doesn't force a GPLv3 change to the codebase.) So, it's back to normal for twitter and identi.ca for me now, just kernel release announcements and complaints about companies not working well with the kernel community. posted Tue, 05 Jan 2010 in [/diary]
This was originally sent to the linux-kernel and driver-devel mailing lists. Might as well post it here to get a wider audience as the last report was received well. Here's a summary of the state of the drivers/staging/ tree, basically what will be coming in the 2.6.33 merge, and what the status of the different drivers are so far. Sorry it's late (after the merge), but hey, better late than never. Again, drivers/staging/ is NOT a dumping ground for dead code. If no one steps up to maintain and work to get the code merged into the main portion of the kernel, the drivers will be removed. Also, drivers can now be merged from mainling into the staging directory, providing a path out of the kernel for some obsolete and/or broken drivers. So, here's some drivers that will be removed in the 2.6.33 kernel:
Here is some new drivers that will show up in .33:
Here's the list of drivers that have had work done on them that will show up in the .33 release:
Here's some drivers not listed so far, that have had work done recently, after the 2.6.33-rc1 merge happened, so it has to wait for the .34 kernel release:
Hm, so, what's up with all of the other staging drivers, and why have they not had any development? What is the status of them? They are now on the short list to be deleted in 2 kernel releases, unless some real development happens on them. This means, unless someone steps up and starts doing real work (not trivial spelling fixes) on the following drivers, they will be removed in the future kernel releases.
Again, if someone is looking for some kernel development work to do, picking any of the above drivers up to get them merged into mainline, would be a great thing to do. And, on a final, and sadder note, I'd like to announce the failure of the driver project to complete a driver for a company that requested it. This was totally my fault, and I would publically like to apologize about my lack of getting a SCSI driver written in time for a company that had asked for it. So, while the Linux driver project is doing great work for a large number of companies, every once in a while we do fail, we are only human. posted Tue, 22 Dec 2009 in [/linux]
I decided to do a screencast of how I apply patches to the Linux stable tree to give people an idea of my patch workflow. The video is here: HOWTO - apply a Linux kernel patch to the stable tree. If anyone has any questions about it, let me know. If there is interest in how I do a stable kernel release from these patches, or anything else, let me know. posted Tue, 15 Dec 2009 in [/linux]
As others have noticed, I was interviewed by the team at How Software is Built a few weeks ago, and the interview is now posted here. It was a fun interview, and a long one as well, and I think it turned out very good. If you are interested in how Linux is developed, or the history of the Linux Driver Project, check it out. And while you are there, take some time to read the other excellent interviews that they have done in the past. I personally liked Dirk Hohndel's discussion about Moblin and Linux and Alexey Rusakov talk about Russia and Free Software as well as ALT-Linux, but there are many, many, more there. Highly recommended. posted Wed, 25 Nov 2009 in [/diary] Somehow I got convinced to give a tutorial at LinuxCon this year, and it was originally scheduled to be my normal "Write a Real, Working, Linux Driver" tutorial I've been giving for the past 4 years or so (which happens to be online here, if you are bored and need something to fall asleep to.) But that's old-hat, as people on 4 major continents have seen it before. So, to try to break up the boredom, I'm please to announce a change: Write and Submit Your First Kernel PatchThis tutorial will cover the steps necessary to properly compose, describe, and submit a Linux kernel patch. It will cover the basic usage of git, and how that works with the Linux kernel development cycle. As part of the tutorial, every attendee will compose and submit a patch to the Linux kernel that will be included in the main kernel tree. Every attendee should have a solid grasp of the C language, and know how to build and install, a Linux kernel from scratch (if not, reading the book, Linux Kernel in a Nutshell, free online, ahead of time would be a very good idea.) The latest source tree, from the git repository, of the Linux kernel should be installed on every attendees laptop before they arrive. Sign up on the tutorial web site if you are going to attend so I get a clue how many people to expect. Right now I have unique material for 100 people to write new patches for, but can come up with more if needed. See you all at LinuxCon, should be a fun time. I'm also giving a few other talks there as well, so come and heckle. posted Fri, 11 Sep 2009 in [/diary]
This was originally sent to the linux-kernel and driver-devel mailing lists. Based on some of the feedback I got, I figured I should post it here as well. Here's a summary of the state of the drivers/staging/ tree, basically what will be coming in the 2.6.32 merge, and what the status of the different drivers are so far. First off, drivers/staging/ is NOT a dumping ground for dead code. If no one steps up to maintain and work to get the code merged into the main portion of the kernel, the drivers will be removed. As proof of that, the epl (Ethernet Power Link) driver will be removed in the .32 kernel, as no one is working on it, the upstream developers never respond to my emails, and no one seems to care about it. The pata_rdc driver is also going to be removed, as there is a "better" one being merged through the libata tree for this hardware. So, taking the drivers in chunks, here's some that have had active development on for the .32 release:
New drivers that will show up in the .32 kernel release:
Drivers not being actively worked on:
That should cover all of the 600+ patches in the staging tree for the .32 kernel merge, and the existing drivers/staging/ tree. If I missed anything, please let me know. posted Wed, 09 Sep 2009 in [/linux] Today another nice thing for the Linux kernel happened, we got working VME bus drivers and infrastructure submitted to the kernel tree. Now, I don't expect it to generate as much press as the Microsoft kernel driver thing did, but it should, as I feel it's more important in a way. The VME bus code has lived outside of the kernel for many years, and there was at least three different implementations at the same time floating around. Martyn Welch from GE Faunc took the time, merged all of them together, and rounded up the different copyright holders of the code and got legal approval from all of them to properly release the code under the GPLv2. Now as someone who has tried to do this kind of thing, I know how thankless and how difficult it can be. So here's a great big thank you to Martyn and his employer for getting this work done, and taking the time to work toward getting it merged into the main kernel tree. The patches are here, here, here, here, and a good readme for the api is here. posted Mon, 03 Aug 2009 in [/linux] As announced on the linux-kernel and driver project mailing lists here, Microsoft has released their Linux Hyper-V drivers under the GPL version 2, and have submitted them for inclusion in the main Linux kernel source tree. I've been working with the developers at Microsoft for a while now trying to make this happen, through the Linux Driver Project. Now, on one hand this is no different from any other company that I have worked with through the driver project. We are averaging about 2 new companies a month right now, working with them to get their code cleaned up and merged into the Linux kernel tree. Stuff like this happens all the time with new companies becoming part of the Linux kernel community every day. This is backed up with the statistics published for every kernel release on the LWN.net kernel pages. But, on the other hand, this is Microsoft, so it is a big deal. There are two major aspects of what they did here:
Q: Why release the code? As one person involved in this whole process said to me, "It looks like hell just froze over." Update: posted Mon, 20 Jul 2009 in [/linux]
This is a status report for the Linux Driver Project as of June 2009, describing what has happened in the past year of work. It was originally posted on the Linux Driver Project developer mailing list. posted Thu, 04 Jun 2009 in [/linux] The 2.6.29 kernel release is now out, and if you look closely, there are a number of drivers for the Android platform merged in, starting with this patch. Yes, there's still a lot to go, like cleaning up the user/kernel interfaces, and prodding the core Android developers to start working upstream more, which they have already started to do. It's a great start, and one that I hope will succeed overall, as it really is a nice system to develop for, and one the phone manufacturers have been asking for from the Linux community, for years. And besides, how can you not like such a cute robot:
posted Tue, 24 Mar 2009 in [/linux]
It's been many months since the Linux Kernel developers conference, where the linux-staging tree was discussed and role changed. It turns out that people are still a bit confused as to what the staging tree is for, and how it works. So here's a short summary, I'm not going into the history or background here, that's a much longer writeup that I'd be glad to do if people are interested. The Linux Staging Tree, what it is and is not.What the Linux Staging tree isThe Linux Staging tree (or just "staging" from now on) is used to hold stand-alone drivers and filesystems that are not ready to be merged into the main portion of the Linux kernel tree at this point in time for various technical reasons. It is contained within the main Linux kernel tree so that users can get access to the drivers much easier than before, and to provide a common place for the development to happen, resolving the "hundreds of different download sites" problem that most out-of-tree drivers have had in the past. What the Linux Staging tree is notThe staging tree is not a place to dump code and run away, hoping that someone else will to the cleanup work for you. While there are developers available and willing to do this kind of work, you need to get them to agree to "babysit" the code in order for it to be accepted. Location and DevelopmentThe staging tree is now contained within the main Linux kernel source tree at the location drivers/staging/. All development happens within the main kernel source tree, like any other subsystem within the kernel. This means:
RuntimeWhen code from the staging tree is loaded in the kernel, a warning message will be printed to the kernel log saying:
and the kernel will be tainted with the TAINT_CRAP flag. This flag shows up in any kernel oops that might be produced after the driver has been loaded. Note, most kernel developers have expressed the warning that they will not work on bugs for when this taint flag has happened, so if you run into a kernel problem after loading such a module, please work to reproduce the issue without a staging module loaded in order to be able to get help from the community. If anyone has any questions that this summary doesn't answer, please let me know. posted Wed, 18 Mar 2009 in [/linux] A few years ago, when one of my kids was asked what their dad did for work, they replied, "Sit in the basement and write email." It's not that far from the truth. I looked back at my mail server logs for 2008 to see just how much email I did write. For 2008, it turned out that I wrote 19057 unique emails. Yes, that's an average of about 52 emails a day, and no, that is not a number of individual recipients (one email sent to three people was counted as one email, not three.) I do send out a lot of patches for review (for -stable trees, and for when patches get sent to Linus for inclusion in the main kernel tree), and I also send out a bunch of "Now that you got a patch into the Linux kernel, we were wondering who you work for", type emails to help lwn.net with their statistic gathering. But that doesn't justify the numbers overall, I just think I have a bad habit. Here's a breakdown of emails sent by the time of day for the whole year:
You can pretty clearly see when I go eat dinner and then switch over to using my laptop in the evening (time zone is local time of the day.) When I tried to graph per day, you can kind of see lower numbers on the weekends if you squint:
I guess it's no wonder that Google thinks my email address is a spam-bot and refuses to let me sign up for any google groups with it. I think it is trying to tell me to cut down on my output or something. Clearly I need help... posted Fri, 16 Jan 2009 in [/linux]
A while ago I talked about piping all of my bash commands to twitter.com. I've kind of stopped doing that now, after I maxed out at over 14000 updates in about 2 weeks, but it was fun while it lasted. But in order to do this kind of thing nicely, I ended up writing a command line program to make it easier. Some people have noticed it at times, by poking around in my kernel.org home directory, so I might as well announce the thing publicly. So, consider this an announcement of the tool, bti. It allows you to send tweets to twitter.com or identi.ca directly from the command line from any Linux machine. It probably works on other systems as well, but you will have to tweak the Makefile yourself. The latest version can always be found here. The development for the tool is done in git, and the tree can be found on the ever-awesome github.com in this repository. posted Wed, 22 Oct 2008 in [/linux] |
|
My Linux Stuff RSS |
|
||