Re: [PATCH] x86: clean up vdso-layout.lds.S

From: Roland McGrath
Date: Tue Jun 09 2009 - 03:53:36 EST


> > I am wondering why we need -P -C here - but we do not need it for lds.S files?
> > Seems like something we could let go.

AFAIK these only affect readability of the lds.s output files.
The difference should be entirely cosmetic.

> > > > .altinstructions : { *(.altinstructions) }
> > > > @@ -43,9 +42,49 @@ SECTIONS
> > > > */
> > > > . = ALIGN(0x100);
> >
> > What is 0x100?
>
> Um. No idea. Roland, you added this line in commit
> f6b46ebf904f69a73907a5e6b1ed2228e3f03d9e. Can you shed some light on
> this magic constant?

You mean this one:

/*
* Align the actual code well away from the non-instruction data.
* This is the best thing for the I-cache.
*/
. = ALIGN(0x100);

Reading the comment might make it obvious that it's intended for optimal
code alignment. I suspect someone at the time told me 256 is as big as an
I-cache line was ever likely to get. You could use L1_CACHE_BYTES instead
I suppose.

> What would you expect? The linker script language is quite limited in
> its capabilities... Best I could do is split the ".broken" section into
> several sections and move the descriptions from the individual comments
> above here. If this muckle of empty ".broken.*" sections gets correctly
> discarded and triggers no bug in binutils, I can probably do it.

Adding more sections and section names unnecessarily bloats the size of the
vDSO image. Keep the set of output sections to the necessary minimum.


Thanks,
Roland
--
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/