login
Header Space

 
 

Re: 2.6.26-rc1 on x86: ld: warning: dot moved backwards before `.text'

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Sam Ravnborg <sam@...>
Cc: H. Peter Anvin <hpa@...>, Mikael Pettersson <mikpe@...>, Pavel Machek <pavel@...>, Rafael J. Wysocki <rjw@...>, <tglx@...>, <mingo@...>, <linux-kernel@...>
Date: Sunday, May 11, 2008 - 11:44 am

[Sam Ravnborg - Sat, May 10, 2008 at 11:16:02PM +0200]
| On Sat, May 10, 2008 at 01:25:53PM -0700, H. Peter Anvin wrote:
| > Mikael Pettersson wrote:
| > >
| > >The resulting kernel hasn't broken on me yet, however.
| > >
| > >A search through the LKML archives showed that this was reported
| > >for 2.6.25-rc3-mm1, but I couldn't find any discussion about it
| > >after that:
| > >
| > ><http://marc.info/?l=linux-kernel&m=120470303728010&w=2>
| > >
| > >The .config causing this warning is available in
| > ><http://user.it.uu.se/~mikpe/linux/ale/config-2.6.26-rc1>
| > >
| > 
| > This is because the organization of the file was changed, and the linker 
| > script wasn't changed to match:
| > 
| > SECTIONS
| > {
| >         . = HEADER_OFFSET;
| >         .header : {
| >                  *(.header)
| >         }
| > 
| >         . = 0;
| >         .text : {
| >                  *(.text*)
| >         }
| > 
| > This is crap; the sections should be listed *in order* so the linker can 
| > warn properly when something bad happens.
| > 
| > The code should be correct; reorganizing the linker script correctly 
| > should fix the problem.
| 
| I need Pavel to comment on this.
| Why we start with . equal 0x3f00 and then later as . equals 0x0000
| I dunno.
| I did not look into this part of the code back then - but I should anyway
| have seen this flaw in the linker script :-(
| 
| 	Sam

Should not it be something like
---

diff --git a/arch/x86/kernel/acpi/realmode/wakeup.lds.S b/arch/x86/kernel/acpi/realmode/wakeup.lds.S
index 22fab6c..cccf62d 100644
--- a/arch/x86/kernel/acpi/realmode/wakeup.lds.S
+++ b/arch/x86/kernel/acpi/realmode/wakeup.lds.S
@@ -12,11 +12,6 @@ ENTRY(_start)
 
 SECTIONS
 {
-	. = HEADER_OFFSET;
-	.header : {
-		 *(.header)
-	}
-
 	. = 0;
 	.text : {
 		 *(.text*)
@@ -53,6 +48,11 @@ SECTIONS
 	. = ALIGN(16);
 	_end = .;
 
+	. = HEADER_OFFSET;
+	.header : {
+		 *(.header)
+	}
+
 	/DISCARD/ : {
 		*(.note*)
 	}
---
		- Cyrill -
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
2.6.26-rc1 on x86: ld: warning: dot moved backwards before `..., Mikael Pettersson, (Sat May 10, 4:18 pm)
Re: 2.6.26-rc1 on x86: ld: warning: dot moved backwards befo..., Rafael J. Wysocki, (Sat May 10, 4:56 pm)
Re: 2.6.26-rc1 on x86: ld: warning: dot moved backwards befo..., Cyrill Gorcunov, (Sun May 11, 11:44 am)
Re: 2.6.26-rc1 on x86: ld: warning: dot moved backwards befo..., Rafael J. Wysocki, (Sun May 11, 5:22 pm)
Re: 2.6.26-rc1 on x86: ld: warning: dot moved backwards befo..., Rafael J. Wysocki, (Sat May 10, 4:23 pm)
speck-geostationary