* [PATCH 1/3] m32r: Remove unused .altinstructions and .exit.* code from linker script.
@ 2009-07-31 20:58 Tim Abbott
2009-07-31 20:58 ` [PATCH 2/3] m32r: Move the spi_stack_top and spu_stack_top into .data section Tim Abbott
2009-07-31 20:58 ` [PATCH 3/3] m32r: Cleanup linker script using new linker script macros Tim Abbott
0 siblings, 2 replies; 3+ messages in thread
From: Tim Abbott @ 2009-07-31 20:58 UTC (permalink / raw)
To: Linux Kernel Mailing List
Cc: Sam Ravnborg, Anders Kaseorg, Nelson Elhage, Tim Abbott, Hirokazu Takata
It appears that m32r copied the .altinstructions definition from x86
when the architecture was first merged into Linux. m32r doesn't put
anything in .altinstructions, so this is just dead code.
The following block affecting .exit.text/.exit.data, which has a
comment also copied from x86, should also be deleted; the linker
script later discards the .exit.text and .exit.data sections.
Signed-off-by: Tim Abbott <tabbott@ksplice.com>
Cc: Hirokazu Takata <takata@linux-m32r.org>
---
arch/m32r/kernel/vmlinux.lds.S | 9 ---------
1 files changed, 0 insertions(+), 9 deletions(-)
diff --git a/arch/m32r/kernel/vmlinux.lds.S b/arch/m32r/kernel/vmlinux.lds.S
index 4179adf..eb3e425 100644
--- a/arch/m32r/kernel/vmlinux.lds.S
+++ b/arch/m32r/kernel/vmlinux.lds.S
@@ -91,15 +91,6 @@ SECTIONS
.con_initcall.init : { *(.con_initcall.init) }
__con_initcall_end = .;
SECURITY_INIT
- . = ALIGN(4);
- __alt_instructions = .;
- .altinstructions : { *(.altinstructions) }
- __alt_instructions_end = .;
- .altinstr_replacement : { *(.altinstr_replacement) }
- /* .exit.text is discard at runtime, not link time, to deal with references
- from .altinstructions and .eh_frame */
- .exit.text : { EXIT_TEXT }
- .exit.data : { EXIT_DATA }
#ifdef CONFIG_BLK_DEV_INITRD
. = ALIGN(4096);
--
1.6.3.3
^ permalink raw reply [flat|nested] 3+ messages in thread* [PATCH 2/3] m32r: Move the spi_stack_top and spu_stack_top into .data section.
2009-07-31 20:58 [PATCH 1/3] m32r: Remove unused .altinstructions and .exit.* code from linker script Tim Abbott
@ 2009-07-31 20:58 ` Tim Abbott
2009-07-31 20:58 ` [PATCH 3/3] m32r: Cleanup linker script using new linker script macros Tim Abbott
1 sibling, 0 replies; 3+ messages in thread
From: Tim Abbott @ 2009-07-31 20:58 UTC (permalink / raw)
To: Linux Kernel Mailing List
Cc: Sam Ravnborg, Anders Kaseorg, Nelson Elhage, Tim Abbott, Hirokazu Takata
Since these get squashed into the .data output section by the m32r
linker script, it seems likely that they don't need their own input
sections.
I'd like an explicit confirmation from Hirokazu Takata that this is
correct (in particular, that there isn't some hidden reason why there
two structures need to be at the start of the .data output section).
This patch is preparation for cleaning up the m32r architecture to use
the new macros in vmlinux.lds.h; if these sections are indeed not
needed, then we can use the RW_DATA_SECTION macro for m32r and save a
bunch of redundant code.
Signed-off-by: Tim Abbott <tabbott@ksplice.com>
Cc: Hirokazu Takata <takata@linux-m32r.org>
---
arch/m32r/kernel/head.S | 4 ++--
arch/m32r/kernel/vmlinux.lds.S | 2 --
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/arch/m32r/kernel/head.S b/arch/m32r/kernel/head.S
index 0a71944..fc4d769 100644
--- a/arch/m32r/kernel/head.S
+++ b/arch/m32r/kernel/head.S
@@ -268,13 +268,13 @@ ENTRY(empty_zero_page)
/*------------------------------------------------------------------------
* Stack area
*/
- .section .spi
+ .section .data
ALIGN
.global spi_stack_top
.zero 1024
spi_stack_top:
- .section .spu
+ .section .data
ALIGN
.global spu_stack_top
.zero 1024
diff --git a/arch/m32r/kernel/vmlinux.lds.S b/arch/m32r/kernel/vmlinux.lds.S
index eb3e425..1984b9f 100644
--- a/arch/m32r/kernel/vmlinux.lds.S
+++ b/arch/m32r/kernel/vmlinux.lds.S
@@ -49,8 +49,6 @@ SECTIONS
/* writeable */
.data : { /* Data */
- *(.spu)
- *(.spi)
DATA_DATA
CONSTRUCTORS
}
--
1.6.3.3
^ permalink raw reply [flat|nested] 3+ messages in thread* [PATCH 3/3] m32r: Cleanup linker script using new linker script macros.
2009-07-31 20:58 [PATCH 1/3] m32r: Remove unused .altinstructions and .exit.* code from linker script Tim Abbott
2009-07-31 20:58 ` [PATCH 2/3] m32r: Move the spi_stack_top and spu_stack_top into .data section Tim Abbott
@ 2009-07-31 20:58 ` Tim Abbott
1 sibling, 0 replies; 3+ messages in thread
From: Tim Abbott @ 2009-07-31 20:58 UTC (permalink / raw)
To: Linux Kernel Mailing List
Cc: Sam Ravnborg, Anders Kaseorg, Nelson Elhage, Tim Abbott, Hirokazu Takata
This patch is largely a straightforward conversion. One thing to note
is that the new macros use fewer separate output sections than the old
code; this should have no functional impact but is relevant for people
objdumping vmlinux files.
Also note that it moves the .data.init_task output sections inside
_edata.
Signed-off-by: Tim Abbott <tabbott@ksplice.com>
Cc: Hirokazu Takata <takata@linux-m32r.org>
---
arch/m32r/kernel/vmlinux.lds.S | 66 +++++-----------------------------------
1 files changed, 8 insertions(+), 58 deletions(-)
diff --git a/arch/m32r/kernel/vmlinux.lds.S b/arch/m32r/kernel/vmlinux.lds.S
index 1984b9f..9b5a7eb 100644
--- a/arch/m32r/kernel/vmlinux.lds.S
+++ b/arch/m32r/kernel/vmlinux.lds.S
@@ -40,72 +40,22 @@ SECTIONS
#endif
_etext = .; /* End of text section */
- . = ALIGN(16); /* Exception table */
- __start___ex_table = .;
- __ex_table : { *(__ex_table) }
- __stop___ex_table = .;
-
+ EXCEPTION_TABLE(16)
RODATA
-
- /* writeable */
- .data : { /* Data */
- DATA_DATA
- CONSTRUCTORS
- }
-
- . = ALIGN(4096);
- __nosave_begin = .;
- .data_nosave : { *(.data.nosave) }
- . = ALIGN(4096);
- __nosave_end = .;
-
- . = ALIGN(32);
- .data.cacheline_aligned : { *(.data.cacheline_aligned) }
-
+ RW_DATA_SECTION(32, PAGE_SIZE, THREAD_SIZE)
_edata = .; /* End of data section */
- . = ALIGN(8192); /* init_task */
- .data.init_task : { *(.data.init_task) }
-
/* will be freed after init */
- . = ALIGN(4096); /* Init code and data */
+ . = ALIGN(PAGE_SIZE); /* Init code and data */
__init_begin = .;
- .init.text : {
- _sinittext = .;
- INIT_TEXT
- _einittext = .;
- }
- .init.data : { INIT_DATA }
- . = ALIGN(16);
- __setup_start = .;
- .init.setup : { *(.init.setup) }
- __setup_end = .;
- __initcall_start = .;
- .initcall.init : {
- INITCALLS
- }
- __initcall_end = .;
- __con_initcall_start = .;
- .con_initcall.init : { *(.con_initcall.init) }
- __con_initcall_end = .;
- SECURITY_INIT
-
-#ifdef CONFIG_BLK_DEV_INITRD
- . = ALIGN(4096);
- __initramfs_start = .;
- .init.ramfs : { *(.init.ramfs) }
- __initramfs_end = .;
-#endif
-
- PERCPU(4096)
- . = ALIGN(4096);
+ INIT_TEXT_SECTION(PAGE_SIZE)
+ INIT_DATA_SECTION(16)
+ PERCPU(PAGE_SIZE)
+ . = ALIGN(PAGE_SIZE);
__init_end = .;
/* freed after init ends here */
- __bss_start = .; /* BSS */
- .bss : { *(.bss) }
- . = ALIGN(4);
- __bss_stop = .;
+ BSS_SECTION(0, 0, 4)
_end = . ;
--
1.6.3.3
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-07-31 21:01 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-07-31 20:58 [PATCH 1/3] m32r: Remove unused .altinstructions and .exit.* code from linker script Tim Abbott
2009-07-31 20:58 ` [PATCH 2/3] m32r: Move the spi_stack_top and spu_stack_top into .data section Tim Abbott
2009-07-31 20:58 ` [PATCH 3/3] m32r: Cleanup linker script using new linker script macros Tim Abbott
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®