Re: linux-next: build failure

From: Linus Torvalds
Date: Tue Jul 29 2008 - 12:36:46 EST




On Tue, 29 Jul 2008, Ingo Molnar wrote:
>
> the fix is simple enough.
>
> but the question is, wont it generate huge artificial stackframes with
> CONFIG_MAXSMP and NR_CPUS=4096?

Quite the reverse.

The "address-of statement expression" is the one that is more likely to
generate artificial stack-frames because of a temporary variable (of
course, I wouldn't count on it, since statement expressions are gcc
extensions, and as such the gcc people could make up any semantics they
want to them, including just defining that a statement expression with
an lvalue value is the same lvalue rather than any temporary).

In contrast, "address-of lvalue" is _guaranteed_ to not do anything stupid
like that, and gives just the address-of.

Oh, and I was wrong about the &*x losing the 'const'. It doesn't. So I
think Stephen's patch is fine after all - if somebody tries to modify the
end result through the pointer, it will give a big compiler warning.

Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/