From: Linus Torvalds <torvalds@linux-foundation.org>
To: Nicholas Miell <nmiell@comcast.net>
Cc: Ingo Molnar <mingo@elte.hu>, jim owens <jowens@hp.com>,
"H. Peter Anvin" <hpa@zytor.com>,
Chris Mason <chris.mason@oracle.com>,
Peter Zijlstra <peterz@infradead.org>,
Steven Rostedt <rostedt@goodmis.org>,
paulmck@linux.vnet.ibm.com, Gregory Haskins <ghaskins@novell.com>,
Matthew Wilcox <matthew@wil.cx>, Andi Kleen <andi@firstfloor.org>,
Andrew Morton <akpm@linux-foundation.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
linux-fsdevel <linux-fsdevel@vger.kernel.org>,
linux-btrfs <linux-btrfs@vger.kernel.org>,
Thomas Gleixner <tglx@linutronix.de>,
Nick Piggin <npiggin@suse.de>,
Peter Morreale <pmorreale@novell.com>,
Sven Dietrich <SDietrich@novell.com>
Subject: Re: [patch] measurements, numbers about CONFIG_OPTIMIZE_INLINING=y impact
Date: Fri, 9 Jan 2009 16:05:26 -0800 (PST) [thread overview]
Message-ID: <alpine.LFD.2.00.0901091535330.6528@localhost.localdomain> (raw)
In-Reply-To: <1231543701.2081.185.camel@entropy>
On Fri, 9 Jan 2009, Nicholas Miell wrote:
>
> So take your complaint about gcc's decision to inline functions called
> once.
Actually, the "called once" really is a red herring. The big complaint is
"too aggressively when not asked for". It just so happens that the called
once logic is right now the main culprit.
> Ignore for the moment the separate issue of stack growth and let's
> talk about what it does to debugging, which was the bulk of your
> complaint that I originally responded to.
Actually, stack growth is the one that ends up being a correctness issue.
But:
> In the general case is it does nothing at all to debugging (beyond the
> usual weird control flow you get from any optimized code) -- the
> compiler generates line number information for the inlined functions,
> the debugger interprets that information, and your backtrace is
> accurate.
The thng is, we do not use line number information, and never will -
because it's too big. MUCH too big.
We do end up saving function start information (although even that is
actually disabled if you're doing embedded development), so that we can at
least tell which function something happened in.
> It is only in the specific case of the kernel's broken backtrace code
> that this becomes an issue. It's failure to function correctly is the
> direct result of a failure to keep up with modern compiler changes that
> everybody else in the toolchain has dealt with.
Umm. You can say that. But the fact is, most others care a whole lot
_less_ about those "modern compiler changes". In user space, when you
debug something, you generally just stop optimizing. In the kernel, we've
tried to balance the "optimize vs debug info" thing.
> I think that the answer to that is that the kernel should do its best to
> be as much like userspace apps as it can, because insisting on special
> treatment doesn't seem to be working.
The problem with that is that the kernel _isn't_ a normal app. An it
_definitely_ isn't a normal app when it comes to debugging.
You can hand-wave and talk about it all you want, but it's just not going
to happen. A kernel is special. We don't get dumps, and only crazy people
even ask for them.
The fact that you seem to think that we should get them just shows that
you either don't udnerstand the problems, or you live in some sheltered
environment wher crash-dumps _could_ work, but also by definition those
environments aren't where they buy kernel developers anything.
The thing is, a crash dump in a "enterprise environment" (and that is the
only kind where you can reasonably dump more than the minimal stuff we do
now) is totally useless - because such kernels are usually at least a year
old, often more. As such, debug information from enterprise users is
almost totally worthless - if we relied on it, we'd never get anything
done.
And outside of those kinds of very rare niches, big kernel dumps simply
are not an option. Writing to disk when things go hay-wire in the kernel
is the _last_ thing you must ever do. People can't have dedicated dump
partitions or network dumps.
That's the reality. I'm not making it up. We can give a simple trace, and
yes, we can try to do some off-line improvement on it (and kerneloops.org
to some degree does), but that's just about it.
But debugging isn't even the only issue. It's just that debuggability is
more important than a DUBIOUS improvement in code quality. See? Note the
DUBIOUS.
Let's take a very practical example on a number that has been floated
around here: letting gcc do inlining decisions apparently can help for up
to about 4% of code-size. Fair enough - I happen to believe that we could
cut that down a bit by just doing things manually with a checker, but
that's neither here nor there.
What's the cost/benefit of that 4%? Does it actually improve performance?
Especially if you then want to keep DWARF unwind information in memory in
order to fix up some of the problems it causes? At that point, you lost
all the memory you won, and then some.
Does it help I$ utilization (which can speed things up a lot more, and is
probably the main reason -Os actually tends to perform better)? Likely
not. Sure, shrinking code is good for I$, but on the other hand inlining
can actually be bad for I$ density because if you inline a function that
doesn't get called, you now fragmented your footprint a lot more.
So aggressively inlining has to be shown to be a real _win_.
You try to say "well, do better debug info", but that turns inlining into
a _loss_, so then the proper response is "don't inline".
So when is inlining a win?
It's a win when the thing you inline is clearly not bigger than the call
site. Then it's totally unambiguous.
It's also often a win if it's a unconditional call from a single site, and
you only inline one such, so that you avoid all of the downsides (you may
be able to _shrink_ stack usage, and you're hopefully making I$ accesses
_denser_ rather than fragmenting it).
And if you can seriously simplify the code by taking advantage of constant
arguments, it can be an absolutely _huge_ win. Except as we've seen in
this discussion, gcc currently doesn't apparently even consider this case
before it does the inlining decision.
But if we're just looking at code-size, then no, it's _not_ a win. Code
size can be a win (4% denser I$ is good), but a lot of the cases I've seen
(which is often the _bad_ cases, since I end up looking at them because we
are chasing bugs due to things like stack usage), it's actually just
fragmenting the function and making everybody lose.
Oh, and yes, it does depend on architectures. Some architectures suck at
function calls. That's why being able to trust the compiler _would_ be a
good thing, no question about that. But yes, we do need to be able to
trust it to make sense.
Linus
next prev parent reply other threads:[~2009-01-10 0:05 UTC|newest]
Thread overview: 362+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-31 11:28 Btrfs for mainline Chris Mason
2008-12-31 18:45 ` Andrew Morton
2008-12-31 23:19 ` Chris Mason
2009-01-02 16:37 ` Ryusuke Konishi
2009-01-02 18:06 ` Chris Mason
2009-01-02 19:38 ` Chris Mason
2009-01-03 9:44 ` Ryusuke Konishi
2009-01-05 14:14 ` Chris Mason
2009-01-05 16:43 ` Ryusuke Konishi
2009-01-05 10:32 ` Nick Piggin
2009-01-05 13:21 ` Chris Mason
2009-01-05 14:39 ` generic pagecache to block mapping layer (was Re: Btrfs for mainline) Nick Piggin
2009-01-05 16:37 ` Chris Mason
2009-01-05 17:10 ` Nick Piggin
2009-01-06 17:20 ` Nick Piggin
2009-01-02 19:05 ` Btrfs for mainline Andi Kleen
2009-01-02 19:32 ` Chris Mason
2009-01-02 21:01 ` Andi Kleen
2009-01-02 21:35 ` Chris Mason
2009-01-02 22:26 ` Roland Dreier
2009-01-04 13:28 ` KOSAKI Motohiro
2009-01-04 15:56 ` Ed Tomlinson
2009-01-05 10:07 ` Chris Samuel
2009-01-05 13:18 ` Chris Mason
2009-01-05 16:33 ` J. Bruce Fields
2009-01-06 22:09 ` Jamie Lokier
2009-01-03 19:17 ` Matthew Wilcox
2009-01-03 19:50 ` Christoph Hellwig
2009-01-03 20:17 ` Chris Mason
2009-01-04 21:52 ` Arnd Bergmann
2009-01-05 14:01 ` Chris Mason
2009-01-03 21:12 ` Matthew Wilcox
2009-01-04 18:21 ` Peter Zijlstra
2009-01-04 18:41 ` Matthew Wilcox
2009-01-05 14:47 ` Nick Piggin
2009-01-05 16:23 ` Matthew Wilcox
2009-01-05 16:30 ` Chris Mason
2009-01-07 13:07 ` Ingo Molnar
2009-01-07 13:24 ` Matthew Wilcox
2009-01-07 14:56 ` Ingo Molnar
2009-01-06 11:40 ` [PATCH][RFC]: mutex: adaptive spin Peter Zijlstra
2009-01-06 12:10 ` Ingo Molnar
2009-01-06 12:21 ` Peter Zijlstra
2009-01-06 15:01 ` Matthew Wilcox
2009-01-06 13:10 ` Gregory Haskins
2009-01-06 13:16 ` Ingo Molnar
2009-01-06 13:20 ` Peter Zijlstra
2009-01-06 14:15 ` Gregory Haskins
2009-01-06 21:42 ` Paul E. McKenney
2009-01-06 21:44 ` Peter Zijlstra
2009-01-06 21:50 ` Linus Torvalds
2009-01-06 22:07 ` Peter Zijlstra
2009-01-06 22:22 ` Linus Torvalds
2009-01-06 22:43 ` Peter Zijlstra
2009-01-06 22:56 ` Linus Torvalds
2009-01-06 23:00 ` Linus Torvalds
2009-01-06 23:09 ` Matthew Wilcox
2009-01-07 0:06 ` Linus Torvalds
2009-01-06 23:16 ` Peter Zijlstra
2009-01-07 12:03 ` [PATCH -v4][RFC]: mutex: implement adaptive spinning Peter Zijlstra
2009-01-07 14:50 ` Frédéric Weisbecker
2009-01-07 14:58 ` Peter Zijlstra
2009-01-07 15:22 ` Steven Rostedt
2009-01-07 15:29 ` Steven Rostedt
2009-01-07 15:54 ` Peter Zijlstra
2009-01-07 16:25 ` Linus Torvalds
2009-01-07 16:57 ` [PATCH -v5][RFC]: " Peter Zijlstra
2009-01-07 18:55 ` Linus Torvalds
2009-01-07 20:40 ` Steven Rostedt
2009-01-07 20:55 ` Linus Torvalds
2009-01-07 21:09 ` Matthew Wilcox
2009-01-07 21:24 ` Linus Torvalds
2009-01-07 21:32 ` Ingo Molnar
2009-01-07 21:47 ` Andrew Morton
2009-01-07 21:57 ` Ingo Molnar
2009-01-07 21:39 ` Linus Torvalds
2009-01-07 21:39 ` Andi Kleen
2009-01-07 22:28 ` Gregory Haskins
2009-01-07 22:33 ` Ingo Molnar
2009-01-07 22:51 ` Peter W. Morreale
2009-01-07 23:14 ` Peter W. Morreale
2009-01-07 22:56 ` Gregory Haskins
2009-01-07 23:09 ` Steven Rostedt
2009-01-07 23:32 ` Linus Torvalds
2009-01-07 23:46 ` Steven Rostedt
2009-01-07 23:47 ` Steven Rostedt
2009-01-07 23:52 ` Linus Torvalds
2009-01-08 3:28 ` Gregory Haskins
2009-01-08 7:10 ` Peter Zijlstra
2009-01-07 23:15 ` Linus Torvalds
2009-01-07 23:18 ` Linus Torvalds
2009-01-08 3:27 ` Gregory Haskins
2009-01-08 3:38 ` Steven Rostedt
2009-01-08 4:00 ` Gregory Haskins
2009-01-07 23:23 ` Paul E. McKenney
2009-01-07 21:28 ` Ingo Molnar
2009-01-07 21:51 ` Peter Zijlstra
2009-01-07 21:58 ` Linus Torvalds
2009-01-07 22:06 ` Linus Torvalds
2009-01-07 22:18 ` Peter Zijlstra
2009-01-07 23:10 ` Linus Torvalds
2009-01-08 9:58 ` [PATCH -v6][RFC]: " Peter Zijlstra
2009-01-08 14:18 ` Ingo Molnar
2009-01-08 14:33 ` Gregory Haskins
2009-01-08 14:46 ` [PATCH -v7][RFC]: " Peter Zijlstra
2009-01-08 15:09 ` Steven Rostedt
2009-01-08 15:23 ` Peter Zijlstra
2009-01-08 15:28 ` Steven Rostedt
2009-01-08 15:30 ` Peter Zijlstra
2009-01-08 15:30 ` Steven Rostedt
2009-01-08 16:11 ` Linus Torvalds
2009-01-08 16:58 ` Linus Torvalds
2009-01-08 17:08 ` Chris Mason
2009-01-08 17:33 ` Steven Rostedt
2009-01-08 17:52 ` Linus Torvalds
2009-01-08 18:03 ` Steven Rostedt
[not found] ` <alpine.DEB.1.10.0901081300370.24688@gandalf.stny.rr.com>
2009-01-08 18:14 ` Steven Rostedt
2009-01-08 19:17 ` Chris Mason
2009-01-08 19:45 ` Steven Rostedt
2009-01-08 18:16 ` Linus Torvalds
2009-01-08 18:27 ` Chris Mason
2009-01-08 19:02 ` Chris Mason
2009-01-08 19:13 ` Linus Torvalds
2009-01-08 19:23 ` Peter Zijlstra
2009-01-09 17:40 ` Jiri Kosina
2009-01-09 9:28 ` Peter Zijlstra
2009-01-10 23:59 ` Jeremy Fitzhardinge
2009-01-08 19:54 ` Linus Torvalds
2009-01-08 20:12 ` Steven Rostedt
2009-01-09 10:47 ` Peter Zijlstra
2009-01-09 15:06 ` Peter Zijlstra
2009-01-09 15:11 ` Chris Mason
2009-01-09 15:59 ` Steven Rostedt
2009-01-09 16:03 ` Peter Zijlstra
2009-01-09 16:34 ` Linus Torvalds
2009-01-09 16:44 ` Steven Rostedt
2009-01-09 18:16 ` Peter Zijlstra
2009-01-09 18:24 ` Linus Torvalds
2009-01-08 18:00 ` Linus Torvalds
2009-01-08 18:33 ` Ingo Molnar
2009-01-08 18:41 ` H. Peter Anvin
2009-01-09 3:46 ` Linus Torvalds
2009-01-09 4:59 ` David Miller
2009-01-09 5:00 ` H. Peter Anvin
2009-01-09 13:00 ` [patch] measurements, numbers about CONFIG_OPTIMIZE_INLINING=y impact Ingo Molnar
2009-01-09 14:03 ` jim owens
2009-01-09 15:35 ` Ingo Molnar
2009-01-09 16:28 ` Linus Torvalds
2009-01-09 19:56 ` H. Peter Anvin
2009-01-10 8:55 ` Chris Samuel
2009-01-09 20:17 ` Nicholas Miell
2009-01-09 20:29 ` Linus Torvalds
2009-01-09 23:28 ` Nicholas Miell
2009-01-10 0:05 ` Linus Torvalds [this message]
2009-01-10 0:37 ` Andi Kleen
2009-01-10 0:41 ` Linus Torvalds
2009-01-10 1:08 ` Andi Kleen
2009-01-10 2:12 ` Nicholas Miell
2009-01-10 4:05 ` Linus Torvalds
2009-01-10 6:44 ` Nicholas Miell
2009-01-09 20:29 ` Steven Rostedt
2009-01-09 16:34 ` H. Peter Anvin
2009-01-09 16:44 ` Linus Torvalds
2009-01-09 16:47 ` Dirk Hohndel
2009-01-09 16:46 ` Dirk Hohndel
2009-01-09 16:51 ` H. Peter Anvin
2009-01-09 17:07 ` Steven Rostedt
2009-01-09 17:14 ` Linus Torvalds
2009-01-09 17:32 ` Andi Kleen
2009-01-09 17:20 ` Andi Kleen
2009-01-09 17:11 ` Linus Torvalds
2009-01-09 17:46 ` Andi Kleen
2009-01-09 17:28 ` Matthew Wilcox
2009-01-09 17:47 ` Andi Kleen
2009-01-09 17:39 ` Matthew Wilcox
2009-01-09 17:54 ` Linus Torvalds
2009-01-09 18:07 ` H. Peter Anvin
2009-01-09 18:19 ` Andi Kleen
2009-01-09 18:59 ` Richard Guenther
2009-01-09 19:13 ` H. Peter Anvin
2009-01-09 19:21 ` Andi Kleen
2009-01-09 19:10 ` Richard Guenther
2009-01-09 19:17 ` H. Peter Anvin
2009-01-09 19:40 ` Andi Kleen
2009-01-09 19:32 ` Richard Guenther
2009-01-09 19:09 ` Richard Guenther
2009-01-09 19:44 ` Linus Torvalds
2009-01-09 20:14 ` Richard Guenther
2009-01-09 20:26 ` Linus Torvalds
2009-01-09 20:37 ` Richard Guenther
2009-01-09 21:23 ` Theodore Tso
2009-01-09 21:33 ` Steven Rostedt
2009-01-09 20:58 ` Sam Ravnborg
2009-01-09 17:41 ` Dirk Hohndel
2009-01-09 18:02 ` Andi Kleen
2009-01-09 17:57 ` Linus Torvalds
2009-01-09 18:55 ` Andi Kleen
2009-01-09 19:00 ` Linus Torvalds
2009-01-09 19:35 ` Andi Kleen
2009-01-09 19:29 ` Matthew Wilcox
2009-01-09 19:48 ` Linus Torvalds
2009-01-09 19:52 ` Theodore Tso
2009-01-09 22:07 ` Arjan van de Ven
2009-01-09 22:44 ` Andi Kleen
[not found] ` <20090109224410.GQ26290@one.firstfloor.org>
2009-01-09 22:35 ` H. Peter Anvin
2009-01-09 22:55 ` Arjan van de Ven
2009-01-09 23:32 ` Sam Ravnborg
2009-01-10 5:29 ` Arjan van de Ven
2009-01-10 5:57 ` H. Peter Anvin
2009-01-11 22:45 ` Valdis.Kletnieks
2009-01-09 17:13 ` Christoph Hellwig
2009-01-09 15:25 ` Ingo Molnar
2009-01-08 19:00 ` [PATCH -v7][RFC]: mutex: implement adaptive spinning Andi Kleen
2009-01-09 1:42 ` H. Peter Anvin
2009-01-09 13:37 ` Ingo Molnar
2009-01-09 16:09 ` Linus Torvalds
2009-01-09 16:23 ` H. Peter Anvin
2009-01-09 16:37 ` Linus Torvalds
2009-01-09 20:41 ` Ingo Molnar
2009-01-09 20:56 ` Ingo Molnar
2009-01-09 20:56 ` Linus Torvalds
2009-01-09 21:34 ` Ingo Molnar
2009-01-09 21:41 ` Harvey Harrison
2009-01-09 21:50 ` Linus Torvalds
2009-01-09 21:59 ` Harvey Harrison
2009-01-09 22:09 ` Linus Torvalds
2009-01-09 22:13 ` Harvey Harrison
2009-01-09 22:25 ` Harvey Harrison
2009-01-10 0:53 ` Jamie Lokier
2009-01-10 1:04 ` Linus Torvalds
2009-01-10 1:13 ` Andi Kleen
2009-01-09 23:12 ` Ingo Molnar
2009-01-09 23:24 ` Linus Torvalds
2009-01-10 1:01 ` Ingo Molnar
2009-01-10 1:06 ` Linus Torvalds
2009-01-10 1:20 ` Ingo Molnar
2009-01-10 1:34 ` Linus Torvalds
2009-01-10 1:08 ` Harvey Harrison
2009-01-10 1:30 ` Linus Torvalds
2009-01-10 5:03 ` H. Peter Anvin
2009-01-10 5:28 ` Linus Torvalds
2009-01-10 5:57 ` H. Peter Anvin
2009-01-11 0:54 ` Ingo Molnar
2009-01-12 1:56 ` Jamie Lokier
2009-01-12 8:40 ` Ingo Molnar
2009-01-10 1:18 ` Steven Rostedt
2009-01-10 1:39 ` Linus Torvalds
2009-01-10 1:41 ` Andrew Morton
2009-01-10 3:02 ` Andi Kleen
2009-01-11 12:26 ` David Woodhouse
2009-01-11 18:13 ` Andi Kleen
2009-01-11 19:25 ` Linus Torvalds
2009-01-11 20:14 ` gcc inlining heuristics was " Andi Kleen
2009-01-11 20:15 ` David Woodhouse
2009-01-11 20:34 ` Andi Kleen
2009-01-11 20:51 ` Linus Torvalds
2009-01-11 23:05 ` Linus Torvalds
2009-01-12 0:12 ` Andi Kleen
2009-01-12 0:21 ` Linus Torvalds
2009-01-12 0:52 ` Andi Kleen
2009-01-12 1:20 ` H. Peter Anvin
2009-01-12 18:06 ` Bernd Schmidt
2009-01-12 19:02 ` Linus Torvalds
2009-01-12 19:32 ` Andi Kleen
2009-01-12 19:22 ` H. Peter Anvin
2009-01-12 19:45 ` Linus Torvalds
2009-01-12 23:01 ` Jamie Lokier
2009-01-12 23:19 ` Linus Torvalds
2009-01-12 19:42 ` Linus Torvalds
[not found] ` <alpine.LFD.2.00.0901121128080.6528@localhost.localdomain>
2009-01-12 20:08 ` Linus Torvalds
2009-01-12 22:03 ` Bernd Schmidt
2009-01-13 0:21 ` Linus Torvalds
2009-01-13 1:30 ` Steven Rostedt
2009-01-19 0:13 ` Ingo Molnar
2009-01-19 6:22 ` Nick Piggin
2009-01-19 21:01 ` Linus Torvalds
2009-01-20 0:51 ` Nick Piggin
2009-01-20 12:38 ` Ingo Molnar
2009-01-20 19:49 ` David Woodhouse
2009-01-20 21:05 ` Ingo Molnar
2009-01-20 21:23 ` Linus Torvalds
2009-01-20 22:05 ` Ingo Molnar
2009-01-21 1:22 ` H. Peter Anvin
2009-01-21 8:54 ` Andi Kleen
2009-01-21 8:52 ` Nick Piggin
2009-01-21 9:20 ` Andi Kleen
2009-01-21 9:25 ` Nick Piggin
2009-01-21 9:54 ` Andi Kleen
2009-01-21 10:14 ` Nick Piggin
2009-01-20 4:20 ` Andi Kleen
2009-01-20 17:43 ` Miguel F Mascarenhas Sousa Filipe
2009-01-12 19:55 ` Bernd Schmidt
2009-01-12 20:11 ` Linus Torvalds
2009-01-12 7:59 ` Hard to debug kernel issues (was Re: [PATCH -v7][RFC]: mutex: implement adaptive spinning) Chris Samuel
2009-01-10 6:44 ` [PATCH -v7][RFC]: mutex: implement adaptive spinning H. Peter Anvin
2009-01-09 21:46 ` Linus Torvalds
2009-01-09 21:58 ` Ingo Molnar
2009-01-09 21:15 ` Andi Kleen
2009-01-08 19:59 ` Harvey Harrison
2009-01-09 1:44 ` H. Peter Anvin
2009-01-09 2:24 ` Harvey Harrison
2009-01-09 5:05 ` H. Peter Anvin
2009-01-09 3:35 ` Andi Kleen
2009-01-09 3:42 ` Linus Torvalds
2009-01-09 6:57 ` Andi Kleen
2009-01-09 6:00 ` Andrew Morton
2009-01-09 6:58 ` Andi Kleen
2009-01-09 13:05 ` Chris Mason
2009-01-08 17:23 ` Peter Zijlstra
2009-01-07 22:54 ` [PATCH -v5][RFC]: " Dave Kleikamp
2009-01-07 23:19 ` Linus Torvalds
2009-01-07 23:49 ` Steven Rostedt
2009-01-07 23:57 ` Linus Torvalds
2009-01-08 2:18 ` KAMEZAWA Hiroyuki
2009-01-08 2:33 ` Steven Rostedt
2009-01-08 2:49 ` KAMEZAWA Hiroyuki
2009-01-08 6:52 ` Andi Kleen
2009-01-08 14:24 ` Steven Rostedt
2009-01-08 14:45 ` Andi Kleen
2009-01-07 21:37 ` Andi Kleen
2009-01-07 21:35 ` Andrew Morton
2009-01-07 17:20 ` [PATCH -v4][RFC]: " Chris Mason
2009-01-07 17:50 ` Linus Torvalds
2009-01-07 18:00 ` Chris Mason
2009-01-07 3:57 ` [PATCH][RFC]: mutex: adaptive spin Lai Jiangshan
2009-01-07 6:32 ` Peter Zijlstra
2009-01-07 7:34 ` Lai Jiangshan
2009-01-07 13:35 ` Matthew Wilcox
2009-01-06 22:31 ` Paul E. McKenney
2009-01-06 15:55 ` Linus Torvalds
2009-01-06 16:11 ` Linus Torvalds
2009-01-06 16:28 ` Steven Rostedt
2009-01-06 16:40 ` Linus Torvalds
2009-01-06 16:42 ` Linus Torvalds
2009-01-06 17:02 ` Ingo Molnar
2009-01-06 16:54 ` Ingo Molnar
2009-01-06 16:56 ` Ingo Molnar
2009-01-06 16:59 ` Linus Torvalds
2009-01-06 16:19 ` Chris Mason
2009-01-10 17:52 ` Pavel Machek
2009-01-06 13:29 ` Nick Piggin
2009-01-06 16:23 ` Chris Mason
2009-01-06 17:08 ` Andrew Morton
2009-01-06 17:37 ` Steven Rostedt
2009-01-06 18:02 ` Linus Torvalds
2009-01-06 18:20 ` Steven Rostedt
2009-01-06 18:28 ` Linus Torvalds
2009-01-06 18:25 ` Linus Torvalds
2009-01-06 19:03 ` Steven Rostedt
2009-01-05 14:34 ` Btrfs for mainline Chris Mason
2009-01-04 8:32 ` Gabor MICSKO
2009-01-05 14:35 ` Chris Mason
2009-01-05 15:01 ` Tomasz Torcz
2009-01-05 16:30 ` Chris Mason
2009-01-06 19:41 ` Chris Mason
2009-01-07 9:33 ` David Woodhouse
2009-01-07 18:45 ` Chris Mason
2009-01-08 20:15 ` jim owens
2009-01-11 23:34 ` Andrew Morton
2009-01-12 13:58 ` Chris Mason
2009-01-12 15:14 ` Miguel Figueiredo Mascarenhas Sousa Filipe
2009-01-12 15:17 ` Chris Mason
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=alpine.LFD.2.00.0901091535330.6528@localhost.localdomain \
--to=torvalds@linux-foundation.org \
--cc=SDietrich@novell.com \
--cc=akpm@linux-foundation.org \
--cc=andi@firstfloor.org \
--cc=chris.mason@oracle.com \
--cc=ghaskins@novell.com \
--cc=hpa@zytor.com \
--cc=jowens@hp.com \
--cc=linux-btrfs@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=matthew@wil.cx \
--cc=mingo@elte.hu \
--cc=nmiell@comcast.net \
--cc=npiggin@suse.de \
--cc=paulmck@linux.vnet.ibm.com \
--cc=peterz@infradead.org \
--cc=pmorreale@novell.com \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).