linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] macros for section name cleanup
@ 2009-04-30 19:32 Tim Abbott
  2009-04-30 19:32 ` [PATCH 1/6] Add new macros for page-aligned data and bss sections Tim Abbott
  0 siblings, 1 reply; 10+ messages in thread
From: Tim Abbott @ 2009-04-30 19:32 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: linux-mips, linux-m68k, linux-ia64, linux-sh, Denys Vlasenko,
	Greg Ungerer, Jeff Arnold, linuxppc-dev, Paul Mackerras,
	H. Peter Anvin, sparclinux, Waseem Daher, linux-arm-kernel,
	linux-s390, Jesper Nilsson, linux-am33-list, Yoshinori Sato,
	Helge Deller, Ingo Molnar, Geert Uytterhoeven, microblaze-uclinux,
	Russell King, user-mode-linux-devel, Heiko Carstens, Jeff Dike,
	dev-etrax, Mikael Starvik, Tony Luck, Tim Abbott, Cyrill Gorcunov,
	Michal Simek, Richard Henderson, Chris Zankel, Bryan Wu,
	linux-m32r, linux-parisc, Haavard Skinnemoen, Hirokazu Takata,
	Ralf Baechle, Anders Kaseorg, Kyle McMartin, Paul Mundt,
	Thomas Gleixner, linux-alpha, Martin Schwidefsky,
	uclinux-dist-devel, Linus Torvalds, David S. Miller

Here are the architecture-independent macro definitions needed for
to clean up the kernel's section names.  The overall diffstat from
this section name cleanup project is:

 96 files changed, 261 insertions(+), 503 deletions(-)

The decrease results from removing a lot of redundancy in the linker
scripts.

The long-term goal here is to add support for building the kernel with
-ffunction-sections -fdata-sections.  This requires renaming all the
magic section names in the kernel of the form .text.foo, .data.foo,
.bss.foo, and .rodata.foo to not have collisions with sections
generated for code like:

static int nosave = 0; /* -fdata-sections places in .data.nosave */
static void head(); /* -ffunction-sections places in .text.head */

Sam Ravnborg proposed that rather than just renaming all the sections
outright, we should start by first getting more control over the
section names used in the kernel so that we can later rename sections
without touching too many files.  These patch series implement that
cleanup.  Later, there will be another patch series to actually rename
the sections.

I'm hoping we can get just these macro definitions into 2.6.30 so that
the arch maintainers don't have to grab the macro definitions for
their trees while reviewing the patches for 2.6.31.

Shortly, I'm going to send one patch series for each of the
architectures updating those architectures to use these new macros
(and otherwise cleaning up section names on those architectures).

	-Tim Abbott

Tim Abbott (6):
  Add new macros for page-aligned data and bss sections.
  Add new NOSAVE_DATA linker script macro.
  Add new CACHELINE_ALIGNED_DATA linker script macro.
  Add new INIT_TASK_DATA() linker script macro.
  Add new READ_MOSTLY_DATA(align) linker script macro.
  Add support for __read_mostly to linux/cache.h

 include/asm-generic/vmlinux.lds.h |   27 +++++++++++++++++++++++++++
 include/linux/cache.h             |    6 ++++++
 include/linux/init_task.h         |    3 +++
 include/linux/linkage.h           |    9 +++++++++
 4 files changed, 45 insertions(+), 0 deletions(-)

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2009-05-01 21:55 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-30 19:32 [PATCH 0/6] macros for section name cleanup Tim Abbott
2009-04-30 19:32 ` [PATCH 1/6] Add new macros for page-aligned data and bss sections Tim Abbott
2009-04-30 19:32   ` [PATCH 2/6] Add new NOSAVE_DATA linker script macro Tim Abbott
2009-04-30 19:32     ` [PATCH 3/6] Add new CACHELINE_ALIGNED_DATA " Tim Abbott
2009-04-30 19:32       ` [PATCH 4/6] Add new INIT_TASK_DATA() " Tim Abbott
2009-04-30 19:32         ` [PATCH 5/6] Add new READ_MOSTLY_DATA(align) " Tim Abbott
2009-04-30 19:32           ` [PATCH 6/6] Add support for __read_mostly to linux/cache.h Tim Abbott
2009-05-01  9:44             ` Sam Ravnborg
2009-05-01 13:52               ` Christoph Lameter
2009-05-01 21:47                 ` [microblaze-uclinux] " Edgar E. Iglesias

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).