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]
Message-ID: <20101025144303.GB13310@elte.hu>
Date:	Mon, 25 Oct 2010 16:43:03 +0200
From:	Ingo Molnar <mingo@...e.hu>
To:	Jan Beulich <JBeulich@...ell.com>
Cc:	akpm@...ux-foundation.org, torvalds@...l.org,
	David Howells <dhowells@...hat.com>,
	Alexander van Heukelum <heukelum@...tmail.fm>,
	"H. Peter Anvin" <hpa@...ux.intel.com>, linux-arch@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] Partially revert patch that encloses asm-offset.h
 numbers in brackets


* Jan Beulich <JBeulich@...ell.com> wrote:

> >>> On 25.10.10 at 16:02, David Howells <dhowells@...hat.com> wrote:
> > Partially revert patch:
> > 
> > 	commit 3234282f33b29d349bcada40204fc7c8fda7fe72
> > 	Author: Jan Beulich <JBeulich@...ell.com>
> > 	Date:   Tue Oct 19 14:52:26 2010 +0100
> > 	x86, asm: Fix CFI macro invocations to deal with shortcomings in gas
> 
> No, that's not going to work for x86. You're removing the parentheses again, which 
> were added intentionally.

But that's not a valid argument - MN10300 worked before and we broke it => that's a 
regression.

> > This breaks MN10300 arch as this changes many instances of instructions similar 
> > to the following:
> > 
> > 	MOV	number,D0
> > 
> > which represents an immediate value load into:
> > 
> > 	MOV	(number),D0
> > 
> > which the assembler then interprets as a load from absolute address.
> > 
> > arch/mn10300/kernel/entry.S:64: Error: Invalid opcode/operands
> > arch/mn10300/kernel/entry.S:65: Error: junk at end of line, first 
> > unrecognized character is `0'
> > arch/mn10300/kernel/entry.S:74: Error: Invalid opcode/operands
> > arch/mn10300/kernel/entry.S:74: Error: junk at end of line, first 
> > unrecognized character is `1'
> > arch/mn10300/kernel/entry.S:75: Error: Invalid opcode/operands
> > arch/mn10300/kernel/entry.S:76: Error: junk at end of line, first 
> > unrecognized character is `0'
> 
> Isn't this a gas bug then? Anywhere you use a plain number you should also be 
> permitted to use an expression.

This argument is not valid either - we added this change to fix a GAS bug to begin 
with ...

> >  	"/^->/{s:->#\(.*\):/* \1 */:; \
> > -	s:^->\([^ ]*\) [\$$#]*\([-0-9]*\) \(.*\):#define \1 (\2) /* \3 */:; \
> > +	s:^->\([^ ]*\) [\$$#]*\([-0-9]*\) \(.*\):#define \1 \2 /* \3 */:; \
> 
> This basically gets us back to the way things were before, thus
> reverting to the state we had before the patch that changed this.

Correct - we should apply David's partial revert and then we'll need to solve our 
x86 quirk differently: for example by using a x86 and broken-GAS specific quirk.

Thanks,

	Ingo
--
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