All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] x86, relocs: avoid calling qsort() with NULL pointer
@ 2013-11-13 13:43 Markus Trippelsdorf
  0 siblings, 0 replies; only message in thread
From: Markus Trippelsdorf @ 2013-11-13 13:43 UTC (permalink / raw)
  To: linux-kernel; +Cc: H. Peter Anvin, Ingo Molnar

Current gcc trunk inserts a trap into arch/x86/tools/relocs:

 % arch/x86/tools/relocs --realmode arch/x86/realmode/rm/realmode.elf
[1]    31456 illegal hardware instruction  arch/x86/tools/relocs --realmode arch/x86/realmode/rm/realmode.elf

This happens because in the case of ELF_BITS==32 qsort is called with a
NULL pointer.

Signed-off-by: Markus Trippelsdorf <markus@trippelsdorf.de>

diff --git a/arch/x86/tools/relocs.c b/arch/x86/tools/relocs.c
index f7bab68a4b83..592abb938de7 100644
--- a/arch/x86/tools/relocs.c
+++ b/arch/x86/tools/relocs.c
@@ -976,7 +976,8 @@ static void emit_relocs(int as_text, int use_real_mode)
 	/* Order the relocations for more efficient processing */
 	sort_relocs(&relocs16);
 	sort_relocs(&relocs32);
-	sort_relocs(&relocs64);
+	if (ELF_BITS == 64)
+		sort_relocs(&relocs64);
 
 	/* Print the relocations */
 	if (as_text) {
-- 
Markus

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2013-11-13 13:43 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-13 13:43 [PATCH] x86, relocs: avoid calling qsort() with NULL pointer Markus Trippelsdorf

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.