lkml.org 
[lkml]   [2011]   [Aug]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH] x86-32: Fix boot with CONFIG_X86_INVD_BUG
    From
    Hi,

    On Thu, Aug 25, 2011 at 4:10 PM, Andy Lutomirski <luto@mit.edu> wrote:
    > entry_32.S contained a hardcoded alternative instruction entry, and
    > the format changed in:
    >
    > commit 59e97e4d6fbcd5b74a94cb48bcbfc6f8478a5e93
    > Author: Andy Lutomirski <luto@mit.edu>
    > Date:   Wed Jul 13 09:24:10 2011 -0400
    >
    >    x86: Make alternative instruction pointers relative
    >
    > Replace it with the altinstruction_entry macro.  This fixes the
    > 32-bit boot with CONFIG_X86_INVD_BUG=y.
    >
    > Reported-by: Arnaud Lacombe <lacombar@gmail.com>
    > Signed-off-by: Andy Lutomirski <luto@mit.edu>
    > ---
    >
    > Arnaud, can you test this?
    >
    All good.

    Tested-by: Arnaud Lacombe <lacombar@gmail.com>

    Thanks!
    - Arnaud

    > Thanks,
    > Andy
    >
    >  arch/x86/kernel/entry_32.S |    8 ++------
    >  1 files changed, 2 insertions(+), 6 deletions(-)
    >
    > diff --git a/arch/x86/kernel/entry_32.S b/arch/x86/kernel/entry_32.S
    > index 5c1a9197..f3f6f53 100644
    > --- a/arch/x86/kernel/entry_32.S
    > +++ b/arch/x86/kernel/entry_32.S
    > @@ -54,6 +54,7 @@
    >  #include <asm/ftrace.h>
    >  #include <asm/irq_vectors.h>
    >  #include <asm/cpufeature.h>
    > +#include <asm/alternative-asm.h>
    >
    >  /* Avoid __ASSEMBLER__'ifying <linux/audit.h> just for this.  */
    >  #include <linux/elf-em.h>
    > @@ -873,12 +874,7 @@ ENTRY(simd_coprocessor_error)
    >  661:   pushl_cfi $do_general_protection
    >  662:
    >  .section .altinstructions,"a"
    > -       .balign 4
    > -       .long 661b
    > -       .long 663f
    > -       .word X86_FEATURE_XMM
    > -       .byte 662b-661b
    > -       .byte 664f-663f
    > +       altinstruction_entry 661b, 663f, X86_FEATURE_XMM, 662b-661b, 664f-663f
    >  .previous
    >  .section .altinstr_replacement,"ax"
    >  663:   pushl $do_simd_coprocessor_error
    > --
    > 1.7.6
    >
    >
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2011-08-25 22:23    [W:4.375 / U:1.688 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site