Re: [PATCH] arch/cris/arch-v10/vmlinux.lds.S fix boot problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Argh. Not my day, hopefully this is the last revision of the patch.

Best regards,

/Jesper

diff --git a/arch/cris/arch-v10/vmlinux.lds.S b/arch/cris/arch-v10/vmlinux.lds.S
index 9859d49..2afe1bd 100644
--- a/arch/cris/arch-v10/vmlinux.lds.S
+++ b/arch/cris/arch-v10/vmlinux.lds.S
@@ -23,7 +23,7 @@ SECTIONS
 	_stext = .;
 	__stext = .;
 	.text : {
-		*(.text)
+		TEXT_TEXT
 		SCHED_TEXT
 		LOCK_TEXT
 		*(.fixup)
@@ -66,13 +66,7 @@ SECTIONS
   	__setup_end = .;
   	.initcall.init : {
 		__initcall_start = .;
-		*(.initcall1.init);
-		*(.initcall2.init);
-		*(.initcall3.init);
-		*(.initcall4.init);
-		*(.initcall5.init);
-		*(.initcall6.init);
-		*(.initcall7.init);
+		INITCALLS
 		__initcall_end = .;	
 	}
 
@@ -88,16 +82,21 @@ SECTIONS
 		__initramfs_start = .;
 		*(.init.ramfs)
 		__initramfs_end = .;
-		/* We fill to the next page, so we can discard all init
-		   pages without needing to consider what payload might be
-		   appended to the kernel image.  */
-		FILL (0); 
-		. = ALIGN (8192);
 	}
 #endif
-	
 	__vmlinux_end = .;            /* last address of the physical file */
-  	__init_end = .;
+
+	/*
+	 * We fill to the next page, so we can discard all init
+	 * pages without needing to consider what payload might be
+	 * appended to the kernel image.
+	 */
+	.init.fill : {
+		FILL (0);
+		. = ALIGN (8192);
+	}
+
+	__init_end = .;
 
 	__data_end = . ;              /* Move to _edata ? */
 	__bss_start = .;              /* BSS */

> On Fri, Dec 21, 2007 at 04:14:04PM +0100, Jesper Nilsson wrote:
> > 
> > On Sat, Dec 15, 2007 at 02:59:33PM +0900, Yuusei KUWANA wrote:
> > > arch/cris/arch-v10/vmlinux.lds.S
> > >  fix boot problem
> > > * too old initcall style. replace INITCALLS macro
> > > * __init_begin, __init_end move for free_initmem()
> > 
> > Hi,
> > 
> > The conversion to INITCALLS is ok (I have the same change here),
> > but I'm curious what problem you are solving with moving __init_begin and
> > __init_end to only include the .init.data.
> > 
> > If there is use of initcalls/data outside init then that is a bug and
> > should be fixed, not worked around.
> > 
> > There might however be another problem that Mikael Starvik told me about,
> > the padding between initdata and the next section had gone AWOL,
> > which made the free_initmem() destroy useful data.
> > 
> > With the attached patch (and a lot of other patches) I am successful in
> > booting an Axis Devboard82+.
> > Could you please try the included patch and see if that solves your problem?
> > 
> > > Note: with this patch kernel boot and mount root,
> > > but after init done,  kernel panic at do_signal() ...
> > 
> > I have a patch in the pipe that should fix this, will send it in just
> > a small while.
> > 
> > > ryu
> > 
> > Thank you for your help!
> > 
> > Best regards,
> > 
> > /Jesper
> 
> /^JN - Jesper Nilsson
> --
>                Jesper Nilsson -- [email protected]
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
/^JN - Jesper Nilsson
--
               Jesper Nilsson -- [email protected]
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux