Re: [PATCH] x86: linker script syntax nits

From: H. Peter Anvin
Date: Thu Oct 15 2009 - 13:19:48 EST


On 10/14/2009 11:38 PM, Ingo Molnar wrote:
>
> We could introduce a COMPAT_ASSERT() wrapper perhaps, to move it more in
> line with the 'official' syntax.
>
> Or we could wrap ASSERT() itself (this runs through the preprocessor
> before going to the linker) - although that would be a pretty obfuscated
> move.
>
> At minimum we should add a comment to the first use of ASSERT() here
> that we assign the current address due to compatibility reasons. (same
> goes for arch/x86/boot/setup.ld)
>
> Anyway - any such cleanup would be .33 material.
>

The tricky part about wrapping ASSERT() is that you have to have a sink
for the old versions of ld. We use . as the sink, but that changes .
which you don't want to do silently.

The other -- and somewhat less cantankerous way -- is to use a dummy symbol:

#define LINUX_ASSERT(expr, name, string) name = ASSERT(expr, string)

"name" would have to be unique for each instance.

-hpa
--
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/