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  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]
Date:	Tue, 14 Nov 2006 09:09:32 -0800
From:	Andrew Morton <akpm@...l.org>
To:	Mariusz Kozlowski <m.kozlowski@...land.pl>,
	linux-kernel@...r.kernel.org, Rusty Russell <rusty@...tcorp.com.au>
Subject: Re: 2.6.19-rc5-mm2

On Tue, 14 Nov 2006 08:41:30 -0800
Andrew Morton <akpm@...l.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@...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