linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* 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).