* RFC: [PATCH] Fixup modpost warnings in head*.S for ppc32
@ 2007-08-17 13:48 Kumar Gala
2007-08-17 14:05 ` Josh Boyer
2007-08-17 15:11 ` Josh Boyer
0 siblings, 2 replies; 5+ messages in thread
From: Kumar Gala @ 2007-08-17 13:48 UTC (permalink / raw)
To: linuxppc-dev
Addess the following modpost warnings we get out of the ppc32 head files:
WARNING: vmlinux.o(.text+0x358): Section mismatch: reference to .init.text:early_init (between 'skpinv' and 'interrupt_base')
WARNING: vmlinux.o(.text+0x380): Section mismatch: reference to .init.text:machine_init (between 'skpinv' and 'interrupt_base')
WARNING: vmlinux.o(.text+0x384): Section mismatch: reference to .init.text:MMU_init (between 'skpinv' and 'interrupt_base')
WARNING: vmlinux.o(.text+0x3aa): Section mismatch: reference to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')
WARNING: vmlinux.o(.text+0x3ae): Section mismatch: reference to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')
diff --git a/arch/powerpc/kernel/head_32.S b/arch/powerpc/kernel/head_32.S
index 7d73a13..6d332db 100644
--- a/arch/powerpc/kernel/head_32.S
+++ b/arch/powerpc/kernel/head_32.S
@@ -48,20 +48,17 @@
mtspr SPRN_DBAT##n##L,RB; \
1:
- .text
+ .section .text.head, "ax"
.stabs "arch/powerpc/kernel/",N_SO,0,0,0f
.stabs "head_32.S",N_SO,0,0,0f
0:
- .globl _stext
-_stext:
+_ENTRY(_stext);
/*
* _start is defined this way because the XCOFF loader in the OpenFirmware
* on the powermac expects the entry point to be a procedure descriptor.
*/
- .text
- .globl _start
-_start:
+_ENTRY(_start);
/*
* These are here for legacy reasons, the kernel used to
* need to look like a coff function entry for the pmac
@@ -841,7 +838,7 @@ relocate_kernel:
* r3 = dest addr, r4 = source addr, r5 = copy limit, r6 = start offset
* on exit, r3, r4, r5 are unchanged, r6 is updated to be >= r5.
*/
-_GLOBAL(copy_and_flush)
+_ENTRY(copy_and_flush)
addi r5,r5,-4
addi r6,r6,-4
4: li r0,L1_CACHE_BYTES/4
@@ -954,9 +951,9 @@ __secondary_start:
* included in CONFIG_6xx
*/
#if !defined(CONFIG_6xx)
-_GLOBAL(__save_cpu_setup)
+_ENTRY(__save_cpu_setup)
blr
-_GLOBAL(__restore_cpu_setup)
+_ENTRY(__restore_cpu_setup)
blr
#endif /* !defined(CONFIG_6xx) */
@@ -1080,7 +1077,7 @@ start_here:
/*
* Set up the segment registers for a new context.
*/
-_GLOBAL(set_context)
+_ENTRY(set_context)
mulli r3,r3,897 /* multiply context by skew factor */
rlwinm r3,r3,4,8,27 /* VSID = (context & 0xfffff) << 4 */
addis r3,r3,0x6000 /* Set Ks, Ku bits */
diff --git a/arch/powerpc/kernel/head_44x.S b/arch/powerpc/kernel/head_44x.S
index 8869596..7b0fda9 100644
--- a/arch/powerpc/kernel/head_44x.S
+++ b/arch/powerpc/kernel/head_44x.S
@@ -50,9 +50,9 @@
* r7 - End of kernel command line string
*
*/
- .text
-_GLOBAL(_stext)
-_GLOBAL(_start)
+ .section .text.head, "ax"
+_ENTRY(_stext);
+_ENTRY(_start);
/*
* Reserve a word at a fixed location to store the address
* of abatron_pteptrs
diff --git a/arch/powerpc/kernel/head_4xx.S b/arch/powerpc/kernel/head_4xx.S
index adc7f80..a0c9151 100644
--- a/arch/powerpc/kernel/head_4xx.S
+++ b/arch/powerpc/kernel/head_4xx.S
@@ -53,9 +53,9 @@
*
* This is all going to change RSN when we add bi_recs....... -- Dan
*/
- .text
-_GLOBAL(_stext)
-_GLOBAL(_start)
+ .section .text.head, "ax"
+_ENTRY(_stext);
+_ENTRY(_start);
/* Save parameters we are passed.
*/
diff --git a/arch/powerpc/kernel/head_8xx.S b/arch/powerpc/kernel/head_8xx.S
index 901be47..a6ecdd6 100644
--- a/arch/powerpc/kernel/head_8xx.S
+++ b/arch/powerpc/kernel/head_8xx.S
@@ -38,12 +38,9 @@
#else
#define DO_8xx_CPU6(val, reg)
#endif
- .text
- .globl _stext
-_stext:
- .text
- .globl _start
-_start:
+ .section .text.head, "ax"
+_ENTRY(_stext);
+_ENTRY(_start);
/* MPC8xx
* This port was done on an MBX board with an 860. Right now I only
diff --git a/arch/powerpc/kernel/head_fsl_booke.S b/arch/powerpc/kernel/head_fsl_booke.S
index 1f155d3..d83cbbb 100644
--- a/arch/powerpc/kernel/head_fsl_booke.S
+++ b/arch/powerpc/kernel/head_fsl_booke.S
@@ -52,9 +52,9 @@
* r7 - End of kernel command line string
*
*/
- .text
-_GLOBAL(_stext)
-_GLOBAL(_start)
+ .section .text.head, "ax"
+_ENTRY(_stext);
+_ENTRY(_start);
/*
* Reserve a word at a fixed location to store the address
* of abatron_pteptrs
diff --git a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S
index 0c45855..823a8cb 100644
--- a/arch/powerpc/kernel/vmlinux.lds.S
+++ b/arch/powerpc/kernel/vmlinux.lds.S
@@ -34,6 +34,8 @@ SECTIONS
/* Text and gots */
.text : {
+ ALIGN_FUNCTION();
+ *(.text.head)
_text = .;
TEXT_TEXT
SCHED_TEXT
diff --git a/include/asm-powerpc/ppc_asm.h b/include/asm-powerpc/ppc_asm.h
index 6532572..4763f67 100644
--- a/include/asm-powerpc/ppc_asm.h
+++ b/include/asm-powerpc/ppc_asm.h
@@ -195,6 +195,11 @@ GLUE(.,name):
#else /* 32-bit */
+#define _ENTRY(n) \
+ .stabs __stringify(n:F-1),N_FUN,0,0,n;\
+ .globl n; \
+n:
+
#define _GLOBAL(n) \
.text; \
.stabs __stringify(n:F-1),N_FUN,0,0,n;\
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: RFC: [PATCH] Fixup modpost warnings in head*.S for ppc32
2007-08-17 13:48 RFC: [PATCH] Fixup modpost warnings in head*.S for ppc32 Kumar Gala
@ 2007-08-17 14:05 ` Josh Boyer
2007-08-17 14:10 ` Kumar Gala
2007-08-17 15:11 ` Josh Boyer
1 sibling, 1 reply; 5+ messages in thread
From: Josh Boyer @ 2007-08-17 14:05 UTC (permalink / raw)
To: Kumar Gala; +Cc: linuxppc-dev
On Fri, 17 Aug 2007 08:48:40 -0500 (CDT)
Kumar Gala <galak@kernel.crashing.org> wrote:
> diff --git a/arch/powerpc/kernel/head_4xx.S b/arch/powerpc/kernel/head_4xx.S
> index adc7f80..a0c9151 100644
> --- a/arch/powerpc/kernel/head_4xx.S
> +++ b/arch/powerpc/kernel/head_4xx.S
> @@ -53,9 +53,9 @@
> *
> * This is all going to change RSN when we add bi_recs....... -- Dan
> */
> - .text
> -_GLOBAL(_stext)
> -_GLOBAL(_start)
> + .section .text.head, "ax"
> +_ENTRY(_stext);
> +_ENTRY(_start);
FYI, I renamed this file to head_40x.S in my current for-2.6.24
series. Hopefully Paul will pull that soon.
josh
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: RFC: [PATCH] Fixup modpost warnings in head*.S for ppc32
2007-08-17 14:05 ` Josh Boyer
@ 2007-08-17 14:10 ` Kumar Gala
2007-08-17 14:10 ` Josh Boyer
0 siblings, 1 reply; 5+ messages in thread
From: Kumar Gala @ 2007-08-17 14:10 UTC (permalink / raw)
To: Josh Boyer; +Cc: linuxppc-dev
On Aug 17, 2007, at 9:05 AM, Josh Boyer wrote:
> On Fri, 17 Aug 2007 08:48:40 -0500 (CDT)
> Kumar Gala <galak@kernel.crashing.org> wrote:
>
>> diff --git a/arch/powerpc/kernel/head_4xx.S b/arch/powerpc/kernel/
>> head_4xx.S
>> index adc7f80..a0c9151 100644
>> --- a/arch/powerpc/kernel/head_4xx.S
>> +++ b/arch/powerpc/kernel/head_4xx.S
>> @@ -53,9 +53,9 @@
>> *
>> * This is all going to change RSN when we add bi_recs....... --
>> Dan
>> */
>> - .text
>> -_GLOBAL(_stext)
>> -_GLOBAL(_start)
>> + .section .text.head, "ax"
>> +_ENTRY(_stext);
>> +_ENTRY(_start);
>
> FYI, I renamed this file to head_40x.S in my current for-2.6.24
> series. Hopefully Paul will pull that soon.
sure, will rebase this once its ready, and hopefully Paul will have
your 40x support in his for-2.6.24 tree.
- k
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: RFC: [PATCH] Fixup modpost warnings in head*.S for ppc32
2007-08-17 14:10 ` Kumar Gala
@ 2007-08-17 14:10 ` Josh Boyer
0 siblings, 0 replies; 5+ messages in thread
From: Josh Boyer @ 2007-08-17 14:10 UTC (permalink / raw)
To: Kumar Gala; +Cc: linuxppc-dev
On Fri, 17 Aug 2007 09:10:10 -0500
Kumar Gala <galak@kernel.crashing.org> wrote:
>
> On Aug 17, 2007, at 9:05 AM, Josh Boyer wrote:
>
> > On Fri, 17 Aug 2007 08:48:40 -0500 (CDT)
> > Kumar Gala <galak@kernel.crashing.org> wrote:
> >
> >> diff --git a/arch/powerpc/kernel/head_4xx.S b/arch/powerpc/kernel/
> >> head_4xx.S
> >> index adc7f80..a0c9151 100644
> >> --- a/arch/powerpc/kernel/head_4xx.S
> >> +++ b/arch/powerpc/kernel/head_4xx.S
> >> @@ -53,9 +53,9 @@
> >> *
> >> * This is all going to change RSN when we add bi_recs....... --
> >> Dan
> >> */
> >> - .text
> >> -_GLOBAL(_stext)
> >> -_GLOBAL(_start)
> >> + .section .text.head, "ax"
> >> +_ENTRY(_stext);
> >> +_ENTRY(_start);
> >
> > FYI, I renamed this file to head_40x.S in my current for-2.6.24
> > series. Hopefully Paul will pull that soon.
>
> sure, will rebase this once its ready, and hopefully Paul will have
> your 40x support in his for-2.6.24 tree.
40x "support" isn't there yet. Just the path renames. But I'm in the
process of actually testing your patch on 40x as we speak with
my local patches. And 44x for that matter. Stay tuned :)
josh
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: RFC: [PATCH] Fixup modpost warnings in head*.S for ppc32
2007-08-17 13:48 RFC: [PATCH] Fixup modpost warnings in head*.S for ppc32 Kumar Gala
2007-08-17 14:05 ` Josh Boyer
@ 2007-08-17 15:11 ` Josh Boyer
1 sibling, 0 replies; 5+ messages in thread
From: Josh Boyer @ 2007-08-17 15:11 UTC (permalink / raw)
To: Kumar Gala; +Cc: linuxppc-dev
On Fri, 17 Aug 2007 08:48:40 -0500 (CDT)
Kumar Gala <galak@kernel.crashing.org> wrote:
> Addess the following modpost warnings we get out of the ppc32 head files:
>
> WARNING: vmlinux.o(.text+0x358): Section mismatch: reference to .init.text:early_init (between 'skpinv' and 'interrupt_base')
> WARNING: vmlinux.o(.text+0x380): Section mismatch: reference to .init.text:machine_init (between 'skpinv' and 'interrupt_base')
> WARNING: vmlinux.o(.text+0x384): Section mismatch: reference to .init.text:MMU_init (between 'skpinv' and 'interrupt_base')
> WARNING: vmlinux.o(.text+0x3aa): Section mismatch: reference to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')
> WARNING: vmlinux.o(.text+0x3ae): Section mismatch: reference to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')
>
Works for 44x. For 40x, I needed the additional patch below.
josh
---
arch/powerpc/kernel/head_40x.S | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
--- linux-2.6.orig/arch/powerpc/kernel/head_40x.S
+++ linux-2.6/arch/powerpc/kernel/head_40x.S
@@ -89,9 +89,9 @@ turn_on_mmu:
*/
. = 0xc0
crit_save:
-_GLOBAL(crit_r10)
+_ENTRY(crit_r10)
.space 4
-_GLOBAL(crit_r11)
+_ENTRY(crit_r11)
.space 4
/*
@@ -809,14 +809,6 @@ finish_tlb_load:
rfi /* Should sync shadow TLBs */
b . /* prevent prefetch past rfi */
-/* extern void giveup_fpu(struct task_struct *prev)
- *
- * The PowerPC 4xx family of processors do not have an FPU, so this just
- * returns.
- */
-_GLOBAL(giveup_fpu)
- blr
-
/* This is where the main kernel code starts.
*/
start_here:
@@ -961,6 +953,14 @@ initial_mmu:
blr
+/* extern void giveup_fpu(struct task_struct *prev)
+ *
+ * The PowerPC 4xx family of processors do not have an FPU, so this just
+ * returns.
+ */
+_GLOBAL(giveup_fpu)
+ blr
+
_GLOBAL(abort)
mfspr r13,SPRN_DBCR0
oris r13,r13,DBCR0_RST_SYSTEM@h
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-08-17 15:11 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-17 13:48 RFC: [PATCH] Fixup modpost warnings in head*.S for ppc32 Kumar Gala
2007-08-17 14:05 ` Josh Boyer
2007-08-17 14:10 ` Kumar Gala
2007-08-17 14:10 ` Josh Boyer
2007-08-17 15:11 ` Josh Boyer
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).