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