lkml.org 
[lkml]   [2006]   [Nov]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: 2.6.19-rc5-mm2
    On Tue, 14 Nov 2006 08:41:30 -0800
    Andrew Morton <akpm@osdl.org> wrote:

    > This should fix it:
    >
    >
    > diff -puN arch/i386/kernel/alternative.c~fix-x86_64-mm-patch-inline-replacements-for arch/i386/kernel/alternative.c
    > --- a/arch/i386/kernel/alternative.c~fix-x86_64-mm-patch-inline-replacements-for
    > +++ a/arch/i386/kernel/alternative.c
    > @@ -381,10 +381,7 @@ void apply_paravirt(struct paravirt_patc
    > extern struct paravirt_patch __start_parainstructions[],
    > __stop_parainstructions[];
    > #else
    > -void apply_paravirt(struct paravirt_patch *start, struct paravirt_patch *end)
    > -{
    > -}
    > -extern struct paravirt_patch *__start_parainstructions, *__stop_parainstructions;
    > +#define apply_paravirt(start, end) do { } while (0)
    > #endif /* CONFIG_PARAVIRT */
    >
    > void __init alternative_instructions(void)

    hm, but that breaks x86. Maybe this..


    arch/i386/kernel/alternative.c | 5 -----
    include/asm-i386/alternative.h | 4 ++++
    include/asm-x86_64/alternative.h | 4 ++++
    3 files changed, 8 insertions(+), 5 deletions(-)

    diff -puN arch/i386/kernel/alternative.c~fix-x86_64-mm-patch-inline-replacements-for arch/i386/kernel/alternative.c
    --- a/arch/i386/kernel/alternative.c~fix-x86_64-mm-patch-inline-replacements-for
    +++ a/arch/i386/kernel/alternative.c
    @@ -380,11 +380,6 @@ void apply_paravirt(struct paravirt_patc
    }
    extern struct paravirt_patch __start_parainstructions[],
    __stop_parainstructions[];
    -#else
    -void apply_paravirt(struct paravirt_patch *start, struct paravirt_patch *end)
    -{
    -}
    -extern struct paravirt_patch *__start_parainstructions, *__stop_parainstructions;
    #endif /* CONFIG_PARAVIRT */

    void __init alternative_instructions(void)
    diff -puN include/asm-i386/alternative.h~fix-x86_64-mm-patch-inline-replacements-for include/asm-i386/alternative.h
    --- a/include/asm-i386/alternative.h~fix-x86_64-mm-patch-inline-replacements-for
    +++ a/include/asm-i386/alternative.h
    @@ -119,6 +119,10 @@ static inline void alternatives_smp_swit
    #endif

    struct paravirt_patch;
    +#ifdef CONFIG_PARAVIRT
    void apply_paravirt(struct paravirt_patch *start, struct paravirt_patch *end);
    +#else
    +#define apply_paravirt(start, end) do { } while (0)
    +#endif

    #endif /* _I386_ALTERNATIVE_H */
    diff -puN include/asm-x86_64/alternative.h~fix-x86_64-mm-patch-inline-replacements-for include/asm-x86_64/alternative.h
    --- a/include/asm-x86_64/alternative.h~fix-x86_64-mm-patch-inline-replacements-for
    +++ a/include/asm-x86_64/alternative.h
    @@ -134,6 +134,10 @@ static inline void alternatives_smp_swit
    #endif

    struct paravirt_patch;
    +#ifdef CONFIG_PARAVIRT
    void apply_paravirt(struct paravirt_patch *start, struct paravirt_patch *end);
    +#else
    +#define apply_paravirt(start, end) do { } while (0)
    +#endif

    #endif /* _X86_64_ALTERNATIVE_H */
    _

    Unpleasant duplication there. Perhaps we should have linux/alternative.h

    -
    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: 2006-11-14 18:13    [W:2.316 / U:0.048 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site