lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sun, 11 May 2008 20:54:45 +0200
From:	Pavel Machek <pavel@...e.cz>
To:	Cyrill Gorcunov <gorcunov@...il.com>
Cc:	Sam Ravnborg <sam@...nborg.org>, "H. Peter Anvin" <hpa@...or.com>,
	Mikael Pettersson <mikpe@...uu.se>,
	"Rafael J. Wysocki" <rjw@...k.pl>, tglx@...utronix.de,
	mingo@...hat.com, linux-kernel@...r.kernel.org
Subject: Re: 2.6.26-rc1 on x86: ld: warning: dot moved backwards before
	`.text'

On Sun 2008-05-11 19:44:11, Cyrill Gorcunov wrote:
> [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*)
>  	}

If it passes s2ram/resume test, it is probably correct ;-).
									Pavel

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ