lkml.org 
[lkml]   [2011]   [Mar]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [tip:x86/mm] x86: Work around old gas bug

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

> >>> On 03.03.11 at 06:35, Andrew Morton <akpm@linux-foundation.org> wrote:
> > On Thu, 03 Mar 2011 13:27:05 +0800 Shaohua Li <shaohua.li@intel.com> wrote:
> >
> >> On Thu, 2011-03-03 at 00:24 +0800, Andrew Morton wrote:
> >> > On Wed, 2 Mar 2011 11:41:44 +0100 Ingo Molnar <mingo@elte.hu> wrote:
> >> >
> >> > > Meanwhile, what i hate more than ugly code repetition is code that does
> > not build at
> >> > > all on akpm's test environment ;-)
> >> >
> >> > I hadn't got around to testing it. Bad news :(
> >> >
> >> Andrew,
> >> can you this on your side? this is what Jan proposed. I can only test a
> >> latest binutils here.
> >
> > Nope.
> >
> > arch/x86/kernel/entry_64.S: Assembler messages:
> > arch/x86/kernel/entry_64.S:985: Error: too many positional arguments
>
> Indeed - the problem isn't with the actual assembly construct, but
> rather with the changed definitions of *INVALIDATE_TLB_VECTOR* -
> properly parenthesizing them (as we needed to do in other places)
> and removing unnecessary spaces gets this to build for me, even
> with the original use of .irp instead of .irpc:
>
> #if NR_CPUS <= 32
> # define NUM_INVALIDATE_TLB_VECTORS (NR_CPUS)
> #else
> # define NUM_INVALIDATE_TLB_VECTORS (32)
> #endif
>
> #define INVALIDATE_TLB_VECTOR_END (0xee)
> #define INVALIDATE_TLB_VECTOR_START \
> (INVALIDATE_TLB_VECTOR_END-NUM_INVALIDATE_TLB_VECTORS+1)

That looks much nicer!

Mind sending a patch? I zapped the original non-working workaround from -tip.

Thanks,

Ingo


\
 
 \ /
  Last update: 2011-03-03 10:37    [from the cache]
©2003-2011 Jasper Spaans