|
|
Subscribe / Log in / New account

New column: Ask a kernel developer

September 23, 2009

This article was contributed by Greg Kroah-Hartman.

[Editor's note: Greg Kroah-Hartman has graciously agreed to write an occasional column for LWN in which he answers questions that readers may wish to ask of the kernel development community. Greg will do a great job, but the key to a successful column will be good questions; please come up with your best and send them in.]

Hi, and welcome to a new semi-weekly column. In here, we are going to try to answer your common questions about Linux kernel development. This column will rely on the readers to submit new questions to be answered either here in comments, or by email to greg@kroah.com, with the understanding that not all questions can be answered.

Valid topics can range from the technical, to the procedural, or on toward anything remotely related to the Linux kernel that you can think of.

To start it off, I've provided a few "seed" questions that I get asked a lot, and would like to finally answer in one place so I don't have to do it again.

Why is the 2.6.27 kernel still being maintained while the newer 2.6.29 kernel is no longer getting updates?

The Linux kernel stable series strives to only maintain one kernel tree at at time, the most recent one, with a small overlap of a release or two when a new kernel is released. So for right now, as the 2.6.31 kernel was just released, both the .31 and .30 trees are being updated. After the next release of the .30 stable tree, it will be abandoned, and only the .31 tree will be updated with security and bug fixes.

But some kernel trees are a bit "special". The 2.6.27 kernel looked like a good kernel to maintain for a longer period of time. Some users have reported that they like to remain on one kernel version for longer than 3-4 months, so the 2.6.27 kernel tree will try to be a tree that they can rely on to get security and bug fixes for a longer time frame. As the 2.6.27 kernel was first released on October 9, 2008, there has almost been a full year of support for this kernel so far.

After I get tired of maintaining this kernel branch, Adrian Bunk has volunteered to maintain it even longer, so in another year or so, maintenance will switch over to him, and it will continue to live on.

How do I get a patch included in the stable kernel updates?

First off, take a look at the file Documentation/stable_kernel_rules.txt to verify that the patch you are considering meets the rules for a stable kernel release. If it does, the easiest way to get it included is to add a:

    Cc: stable <stable@kernel.org>

line to the Signed-off-by: area in the patch before it is sent to the subsystem maintainer. When a patch with that line in it is accepted into Linus's kernel tree, the stable team will be automatically notified that the patch should be included, and they will queue it up for the next stable kernel release(s).

If you notice a patch that you feel should be included in the stable release, and does not have this marking, and is already in Linus's tree, a simple email to the stable@kernel.org address with the git commit id of the patch in Linus's tree and a short description of which stable kernel releases you feel it should be included in is all that is needed.

So bring on the questions!

Index entries for this article
GuestArticlesKroah-Hartman, Greg


to post comments

New column: Ask a kernel developer

Posted Sep 24, 2009 13:07 UTC (Thu) by PaXTeam (guest, #24616) [Link] (1 responses)

why hasn't the latest and greatest stable kernel been updated as it has been out with a trivially exploitable privilege elevation bug for two weeks now? see http://lwn.net/Articles/353976/ for details.

New column: Ask a kernel developer

Posted Sep 24, 2009 17:42 UTC (Thu) by gregkh (subscriber, #8) [Link]

It is now released, been swamped with LinuxCon and Plumbers conference talks.

New column: Ask a kernel developer

Posted Sep 24, 2009 16:49 UTC (Thu) by lacostej (guest, #2760) [Link] (11 responses)

Background

I have been living with very visible kernel issues on my machine for about
2.5 years:
* resume doesn't work if I use the open source nvidia driver. Work-around:
use the nvidia proprietary one
* my mouse doesn't work after I come back from suspend: workaround unbind
then bind my i8042 driver
* I get very very poor overall machine performance when using sdcards (I
can't use my machine for about 2 minutes): workaround avoid using sdcards
when one expects to use the machine afterwards
* etc

So why don't I get those issues really fixed ?

I usualy run a distribution kernel om my machine. I've compiled my own
kernels in the past, althought not in the past years. I've posted several
times on lkml but I almost never got the issues fixed as a result. The
problems were maybe harder to describe than the ones above though.

I now often use launchpad to report my issues. In lkml I often feel that my
bugs are lost in the middle of a sea of other bugs. I feel that the
communication throughput with the kernel developers isn't big enough.

Another issue is that upgrading the kernel is not always possible as it
requires to update userspace.

I am willing to invest time to get those issues fixed yet I have to get
some confidence that the time I am going to invest is going to be usefull.

It's sometimes hard when the machine is used as a work-machine. Rebooting
means losing 10-15 min in context switching and lost revenue.

Question: How do I open an effective communication channel with a kernel
developer to get my issues fixed ?

New column: Ask a kernel developer

Posted Sep 24, 2009 18:35 UTC (Thu) by mjg59 (subscriber, #23239) [Link] (10 responses)

"resume doesn't work if I use the open source nvidia driver. Work-around:
use the nvidia proprietary one"

Reinitialising nvidia hardware requires parsing and executing a set of scripts held in the GPU's BIOS. The nvidia driver has no code to do this - nor has nvidia (the company) released any specifications to allow this to be done. The open-source nouveau driver has a reverse-engineered reimplementation of this code which may work on your hardware, but no guarantees are made.

New column: Ask a kernel developer

Posted Sep 24, 2009 23:31 UTC (Thu) by nix (subscriber, #2304) [Link] (9 responses)

I suspect that switching to text mode before suspending will help here,
unless nvidia hardware requires special support to resume from suspend
which differs from that required simply to power on (which seems highly
unlikely).

(The tuxonice hibernate script has support for this with its
SwitchToTextMode option. I happen to need it on my ATI R770 card as well,
as resuming that isn't 100% reliable yet either.)

New column: Ask a kernel developer

Posted Sep 24, 2009 23:38 UTC (Thu) by mjg59 (subscriber, #23239) [Link] (8 responses)

It does. nvidia mobile hardware stubs out the c000:0003 entry point on first POST, because it pages in a pile of code from the system BIOS that doesn't fit in the legacy 64K window and so isn't there once the system is running.

New column: Ask a kernel developer

Posted Sep 25, 2009 6:27 UTC (Fri) by nix (subscriber, #2304) [Link] (7 responses)

Aha. So suspend-to-disk (e.g. tuxonice) works, but suspend-to-RAM won't,
then? I can't see how it could distinguish between POST-and-we're-booting
and POST-and-we're-resuming: the state of the hardware is identical.

New column: Ask a kernel developer

Posted Sep 25, 2009 6:28 UTC (Fri) by johill (subscriber, #25196) [Link] (5 responses)

There's no POST when resuming.

New column: Ask a kernel developer

Posted Sep 25, 2009 15:27 UTC (Fri) by nix (subscriber, #2304) [Link] (4 responses)

There surely is with tuxonice, which does a full ACPI S5 powerdown after hibernating. Suspend-to-RAM and lower suspend states are always iffier than full suspend-to-disk precisely because they don't turn the whole box off and let it reinitialize itself conventionally.

(I may have messed up terminology here: I can never remember which of 'suspend' and 'hibernate' is to disk and which to RAM. I've been talking about suspend-to-disk at all times, mainly because I've never managed to get suspending to RAM working with anything Linux-like *or* Windows-like. The last time I owned a machine *that* worked on was so long ago that it was running DOS...)

Suspend

Posted Sep 26, 2009 6:43 UTC (Sat) by job (guest, #670) [Link] (3 responses)

Here's another data point for you: I suspend-to-RAM my Thinkpad about four or five times a day and it works perfectly. Well, almost, the exception is the iwl3945 driver which crashes hard after a number of cycles (actually it's enough to 'ifconfig wlan0 down' and then 'up' a number of times) which means when the link state is wrong it's time to reboot (it's a distribution kernel and not mainline). Anyway, some hardware works better than others and that may be a good thing to keep in mind when shopping for hardware.

Suspend

Posted Sep 27, 2009 10:13 UTC (Sun) by nix (subscriber, #2304) [Link] (1 responses)

Yes, well, laptops are likelier to work with suspend-to-RAM than other
systems. I suspend several desktops to disk to save power: on not a single
one of them does suspend-to-RAM work, because it requires BIOS work that
the desktop vendors didn't do. Requiring things of BIOSes is always risky
(as we all know).

Suspend

Posted Sep 27, 2009 20:19 UTC (Sun) by khc (guest, #45209) [Link]

better yet, my desktop with 2.6.31 used to suspend to ram correctly, and after some distro updates (ubuntu 9.10) now it always fails. So it's is quite fragile even when it works.

Suspend

Posted Sep 27, 2009 13:15 UTC (Sun) by xoddam (subscriber, #2322) [Link]

I'm laughing! I have observed the same problem once or twice (also more irritatingly, a symptom similar to the old bug of not aging networks whilst suspended so my machine tries to hook up with the work network when I open it at home and vice versa).

I find rmmod works, though IIRC is not guaranteed to. So I happily rmmod iwlagn && insmod iwlagn and wireless lives indefinitely.

The only thing that crashes on me after extended use now is Firefox with its many tabs and sandboxed proprietary Flash player. Yet it all comes back in more-or-less the same state when I restart it, thanks to sqlite. Crash-only software rules, ok!

New column: Ask a kernel developer

Posted Sep 25, 2009 16:27 UTC (Fri) by mjg59 (subscriber, #23239) [Link]

Right, suspend to disk should work ok.

New column: Ask a kernel developer

Posted Sep 25, 2009 18:38 UTC (Fri) by giraffedata (guest, #1954) [Link] (4 responses)

Hi, and welcome to a new semi-weekly column.

I assume that's biweekly.

New column: Ask a kernel developer

Posted Sep 25, 2009 18:58 UTC (Fri) by Klavs (guest, #10563) [Link] (1 responses)

Or it's weekly, when there's questions for it :)

New column: Ask a kernel developer

Posted Sep 25, 2009 19:02 UTC (Fri) by giraffedata (guest, #1954) [Link]

Ahh, quasi-weekly. That makes more sense.

New column: Ask a kernel developer

Posted Sep 30, 2009 20:53 UTC (Wed) by roelofs (guest, #2599) [Link] (1 responses)

I assume that's biweekly.

Ah, but biweekly (non-US) is semi-weekly (US). (And perhaps the opposite is true as well. I was too surprised to ask. :-) )

Greg

New column: Ask a kernel developer

Posted Oct 3, 2009 16:06 UTC (Sat) by ccurtis (guest, #49713) [Link]

"Semi" has two meanings which are used somewhat loosely, which makes things confusing. Something "biweekly" is every other week. Something "semiannually" is twice a year. But "semi" can also mean "somewhat" and is also used as a playful "pseudo", as in "semi-hot". Generally the latter is spelled "semi-" but there's not much consistency. My (U.S.) interpretation of "semi-weekly" is "about once a week - we'll shoot for weekly but no promises".

Greg Kroah-Hartman?

Posted Oct 1, 2009 3:15 UTC (Thu) by j16sdiz (guest, #57302) [Link] (1 responses)

Are you the same greg who write books, present in conference, maintain tty layer, run the linux driver project and lots more?

How many hours you sleep a day?

Greg Kroah-Hartman?

Posted Oct 1, 2009 3:49 UTC (Thu) by gregkh (subscriber, #8) [Link]

> Are you the same greg who write books, present in conference,
> maintain tty layer, run the linux driver project and lots more?

yes.

> How many hours you sleep a day?

Not enough.


Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds