G
Greg Kroah-Hartman
kroah.com · Personal blog · on HN since 2008
Greg Kroah-Hartman, a Linux kernel maintainer, writes about kernel development, stable releases, Android, and patch workflows.
What HN saysHN commenters cite his stable API nonsense essay, his talks on kernel contribution, and his USB programming material as good teaching.
84HN people shared it
43linked it in comments
49stories submitted
1.4Kstory points
3 months agolast shared
2008people per year2026
Most-shared posts
- 1Patch Workflow with Mutt10 people · 15 points · first shared 2019 · 1 comments on HN
- 2Linux Kernel Release Model8 people · 32 points · first shared 2018 · 2 comments on HN
- 3Meltdown and Spectre Linux kernel status5 people · 514 points · first shared 2018 · 174 comments on HN
- 4What stable kernel should I use?5 people · 99 points · first shared 2018 · 20 comments on HN
- 5Greg Kroah-Hartman's explanation of Android/Linux parting5 people · 20 points · first shared 2010 · discussion on HN
- 6Stable api nonsense5 people · first shared 2010
- 7Linux CVE Assignment Process4 people · 3 points · first shared 2026 · 1 comments on HN
- 8Log4 people · first shared 2012
- 9Linux Is a CVE Numbering Authority (CNA)3 people · 24 points · first shared 2024 · 10 comments on HN
- 10Linux Kernel Version Numbers3 people · 6 points · first shared 2025 · discussion on HN
- 11Linux Kernel Community Enforcement Statement3 people · 5 points · first shared 2017 · discussion on HN
- 12Lkn3 people · first shared 2010
- 13Kdbus details3 people · first shared 2014
- 14Linux kernel 3.10 is going to be the next longterm release2 people · 75 points · first shared 2013 · 5 comments on HN
- 15Booting a Self-signed Linux Kernel2 people · 74 points · first shared 2013 · 20 comments on HN
What HN people wrote when they linked it
krschultz · 2013-09-08
The old classic argument around why Linux doesn't have a rigid internal API comes to mind (http://www.kroah.com/log/linux/stable_api_nonsense.html). Maybe there are commonalities between supporting Mir and Wayland that would allow Intel to create a more universal piece of software? If Canonical does the work to make the driver universal, wouldn't the whole community benefit?
I'm not a big fan of letting politics get in the way of engineering, and this smells of the fact that Intel is trying to battle ARM in a proxy war, with FOSS as collateral damage.
mvanga · 2011-07-12
Getting code into the Linux kernel requires patience and a lot of work to conform to the standards set by the developers. I saw a great talk at ELC 2010 [1] from Greg Kroah-Hartman on the problems they faced when trying to get the Android changes into the kernel. He also did a short write-up of the problems[2].
[1] Video: http://free-electrons.com/blog/elc-2010-videos/
[2] http://www.kroah.com/log/linux/android-kernel-problems.html
runjake · 2011-05-29
Greg Kroah-Hartman is a great speaker & teacher. If you'd like to jump into Linux USB programming, his presentation on that is golden: http://www.kroah.com/linux/
lsc · 2010-08-16
my understanding is that while Google is following the letter of the GPL and giving back their changes to the GPL'd code, they are not putting fourth the effort to get those changes integrated with the rest of the linux kernel, so practically speaking, you aren't going to be seeing much of the android changes outside of android.
http://www.kroah.com/log/linux/android-kernel-problems.html
phpisthebest · 2023-03-16
If you know, and followed the enactment of the "Linux Kernel Community Enforcement Statement " [1] [2] [3] which started out as an effort to stop a "rouge" developer from being a copyright toll, then further devolved with interactions with the core linux group and SFC based on a fundamental difference in the understanding of the GPL problem, and what GPL enforcement should be
SFC wants to use the law as a stick, while trying to get people to comply with out legal action. Many core members prefer to not even engage with the threat of legal action at all, they believe that simply asking nicely will get companies like VmWare to comply. of course this is rarely true but.....
[1] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git…
[2] http://kroah.com/log/blog/2017/10/16/linux-kernel-community-enforcemen…
[3] http://kroah.com/log/blog/2017/10/16/linux-kernel-community-enforcemen…
my123 · 2021-11-04
It's much more complex than that. Security bugs have different levels of severity, with different reactions to those.
Let's for example see the Microsoft ESU policy:
https://docs.microsoft.com/en-us/lifecycle/faq/extended-security-updat…
For Windows 7, only Critical and Important security updates are shipped to those _paying_ customers. This leaves Moderate and Low as uncovered.
For Linux: http://www.kroah.com/log/blog/2018/08/24/what-stable-kernel-should-i-u…
> Older LTS release
> There is one huge caveat when using a kernel like this. The number of security fixes that get backported are not as great as with the latest LTS release, because the traditional model of the devices that use these older LTS kernels is a much more reduced user model. These kernels are not to be used in any type of “general computing” model where you have untrusted users or virtual machines, as the ability to do some of the recent Spectre-type fixes for older releases is greatly reduced, if present at all in some branches
> So again, only use older LTS releases in a device that you fully control, or lock down with a very strong security model (like Android enforces using SELinux and application isolation). Never use these releases on a server with untrusted users, programs, or virtual machines.
sreevisakh · 2021-03-30
Conventional mail clients and web clients are a non-starter if you want to work with mailing lists or git email workflows. To begin with, both of them rely heavily on email threads. Patch sets and reviews are both threaded. Modern clients don't emphasize these threading well enough, and can leave you confused about the context of the messages when using these workflows.
Another problem is html mail. Lists and patches are easier to read as plain text. But again, it's hard in modern clients to figure out if you are composing a plain-text or html mail. As a result, you end up with mangled patches and badly formatted text in the mailing list. Another really annoying problem is top-posting when replying to a mail. Ideally, the quotes from original message and the reply should be interleaved, so that the context of the discussion is very clear. But web clients often just quote the entire original message and hide it away at the bottom of the reply. It isn't even easy to expand and split the quotes.
Finally, there is the problem of applying patches to repository from email. I don't think this was even a design consideration for modern clients.
> What am I missing from some amazing holy grail mail client
I assume you are unfamiliar with the workflow. The reality is that the UI is never ideal, even with traditional text mail clients. List support is better than with modern clients, but patches need hacks or a bunch of other tools. But the tool selection makes it way more…
npsimons · 2017-02-15
> It's in integrating the fickle whims of myriad hardware devices with amazingly high expectations of reliability and performance consistency under diverse workloads.
So much this; Linux Plumbers conference years ago was bitching about how every gorram vendor wanted to be a special snowflake, so even though the architecture was ARM, you basically had to port the kernel all over again to every new phone. I haven't kept up with it, but I can't imagine it's gotten better. The problems they're listing as reasons to move to a new kernel aren't caused by Linux and they won't go away until you slap the vendors and slap them hard for the bullshit they pull, both on developers and users.
As for kernel ABI, this has been rehashed to death: just release your fucking driver as open source code, and it will be integrated and updated in mainline forever: http://www.kroah.com/log/linux/free_drivers.html
SwellJoe · 2015-04-22
There are several documentation projects about the Linux kernel, of wildly varying quality. Honestly, though, I believe you'd be better served by the Stevens books and the Tanenbaum MINIX book, if you're not already familiar with kernels or the UNIX architecture, in general. The Stevens books are, bar none, the best books about UNIX programming and TCP/IP network programming, and as far as I can tell every serious Linux developer has a working knowledge of Stevens, and many have referenced Stevens when discussing implementation details. And, of course, Linux was originally developed as kind of a response to MINIX and shares many characteristics, and was designed as a teaching operating system (there are other teaching operating systems, but none are probably closer to Linux than older MINIX versions).
Here's some Linux kernel specific stuff:
http://tldp.org/LDP/tlk/tlk.html
http://www.kroah.com/lkn/
http://www.amazon.com/Linux-System-Programming-Talking-Directly/dp/144…
The first two have some age on them, but are still relatively reflective of the overall architecture of Linux, even if a lot of detail has changed. Anyway, these three are of reasonable quality. Some of the other stuff out there is pretty rough.
sloped · 2026-07-21
More useful context http://www.kroah.com/log/blog/2026/02/16/linux-cve-assignment-process/
Nothing to panic about.
khurs · 2026-07-21
All these seem to be by the same person.
Go Greg!!
https://en.wikipedia.org/wiki/Greg_Kroah-Hartman
http://www.kroah.com/linux/
staticassertion · 2026-05-01
http://www.kroah.com/log/blog/2026/02/16/linux-cve-assignment-process/
I'd start with Greg's on words. You can probably find more on it from Spender/grsecurity's blog.
Propelloni · 2024-06-13
The Linux developer community promised almost 20 years ago [1] that no release of the stable kernel will ever break something that worked in a stable kernel before. AFAICT, this promise holds. If you upstream your driver, the community will take care (cf. AMD), if you don't your users experience occasional pain (cf. NVidia).
[1] http://kroah.com/log/blog/2018/02/05/linux-kernel-release-model/
infamouscow · 2023-02-08
Greg Kroah-Hartman explains the differences: http://www.kroah.com/log/blog/2018/08/24/what-stable-kernel-should-i-u…
gregkh · 2022-03-07
I've described how we (the kernel security team) handles this type of things many times, and even summarized it in the past here:
http://www.kroah.com/log/blog/2018/02/05/linux-kernel-release-model/
Scroll down to the section entitled "Security" for the details.
If you wish to disagree with how we handle all of this, wonderful, we will be glad to discuss it on the mailing lists. Just don't try to rehash all the same old arguments again, as that's not going to work at all.
Also, this was fixed in a public kernel last week, what prevented you from updating your kernel already? Did you need more time to test the last release?
Edit: It was fixed in a public release 12 days ago.
ddevault · 2021-03-30
I use an email client I wrote for this purpose:
https://aerc-mail.org/
Greg-KH has also written about his mutt workflow:
http://www.kroah.com/log/blog/2019/08/14/patch-workflow-with-mutt-2019…
Though his volume and needs are probably different from most users.
hyperrail · 2021-02-07
The weirdest naming scheme for computers I've seen is the one used some years ago by my college: It named Linux workstations after Linux kernel committers' email usernames!
There were the better-known folks like linus (Linus Torvalds [1]) and gregkh (Greg Kroah-Hartman [2]), but also relatively more obscure people, like shemminger (Stephen Hemminger [3]) and stelian (Stelian Pop [4]).
I didn't recognize most of those names at the time, but now that I do, I wonder what those people would have thought about having a large organization's computers named after them. A bit creeped out, I would think.
[1] https://github.com/torvalds
[2] http://www.kroah.com/log/
[3] https://www.linkedin.com/in/networkplumber/
[4] https://www.popies.net
tlamponi · 2020-12-14
FYI: the last kernel release of a year will normally become a new LTS kernel, see the "Choosing the LTS kernel" section from:
http://www.kroah.com/log/blog/2018/02/05/linux-kernel-release-model/
mycpuorg · 2018-01-10
Please look under "Meltdown - x86" section in GKH's (The Stable Kernel Maintainer) blog:
http://www.kroah.com/log/
cesarb · 2018-01-06
According to https://access.redhat.com/articles/3311301 PTI should be enabled on Intel even with the new microcode, so the microcode update probably doesn't fix variant 3 (Meltdown).
Also, I don't think the microcode updates just expose some chicken bits. IBRS seems to be exposing one or more chicken bits as a single bit, but IBPB seems to be a command to run a routine in the microcode to immediately clear part of the branch predictor state, not a chicken bit.
Yes, the kernel changes in the Linus tree only fix variant 3, there are several partial and/or mutually incompatible patch sets being posted on the linux kernel mailing list to fix the other variants; the Red Hat kernel seems to have an early version of some of these. See also the just posted http://kroah.com/log/blog/2018/01/06/meltdown-status/ for more detail.
nickysielicki · 2017-02-12
> I'm not sure if there are any advantages to this
This comes to mind: http://kroah.com/log/blog/2013/09/02/booting-a-self-signed-linux-kerne…
gtirloni · 2016-12-11
For anyone wondering, 4.9 is expected to be the next LTS kernel:
http://kroah.com/log/blog/2016/09/06/4-dot-9-equals-equals-next-lts-ke…
cwyers · 2015-08-06
Binder is in the kernel already so it's also GPL. One of the kernel devs has written a summary as to why it's so different from kdbus, to the point where I can't see Google ever adopting kdbus:
http://kroah.com/log/blog/2014/01/15/kdbus-details/
pkaye · 2015-07-26
No this would be the definitive guide: http://www.kroah.com/lkn/
johnny22 · 2015-04-28
this article compare kdbus (and thus dbus) to android's binder: http://kroah.com/log/blog/2014/01/15/kdbus-details/
andor · 2014-09-23
Oh, and it requires everyone to rewrite their code to use systemd's dbus library rather than libdbus too.
Have you actually read the mail you're giving as "evidence"?
The last paragraph begins with: "The current idea is that systemd will provide a bridge service, that
offers the current D-Bus socket, and an unmodified libdbus (or an
alternative implementation) can talk to that socket like it talks
today to the dbus-daemon."
Edit:
kdbus is also not a NIH-implementation, in any meaning of the word. It was "invented there", and it also fixes things: it will have much lower latency and overhead than the current userspace D-Bus.
http://kroah.com/log/blog/2014/01/15/kdbus-details/
sp332 · 2014-01-20
Greg Kroah-Hartman hasn't mentioned it on his blog. He's doing one per year, but he didn't announce last years' until it had been out for a month already. http://www.kroah.com/log/blog/2013/08/04/longterm-kernel-3-dot-10/
Edit: more official link https://www.kernel.org/category/releases.html
rogerbinns · 2013-08-04
Greg Kroah Hartman wrote about implementing Thunderbolt for Linux: http://www.kroah.com/log/linux/hardware.html (not a pretty story)
I suspect Intel has realised that people who need Thunderbolt have no practical alternative. May as well charge what that market will bear for a while.
AMD does have a low cost alternative - Lightening Bolt http://en.wikipedia.org/wiki/Lightning_Bolt_(interface) - and I will admit that if it takes off and beats Intel/Thunderbolt I will smile a bit. It will be AMD64 all over again.
shuaib · 2010-11-16
For all those looking for a compact guide to Linux kernel compilation:
http://www.kroah.com/lkn/