Re: sh kexec build error
From: Paul Mundt
Date: Mon Jul 28 2008 - 09:15:43 EST
On Mon, Jul 28, 2008 at 04:06:13PM +0300, Adrian Bunk wrote:
> Commit 3ab83521378268044a448113c6aa9a9e245f4d2f (kexec jump)
> causes the following build error on sh:
>
> <-- snip -->
>
> ...
> CC kernel/kexec.o
> {standard input}: Assembler messages:
> {standard input}:1518: Error: offset to unaligned destination
> make[2]: *** [kernel/kexec.o] Error 1
>
> <-- snip -->
>
> If I understand the assembler correctly it fails at
> include/asm-sh/kexec.h:59
>
Indeed. This should fix it:
---
diff --git a/include/asm-sh/processor_32.h b/include/asm-sh/processor_32.h
index c6583f2..0dadd75 100644
--- a/include/asm-sh/processor_32.h
+++ b/include/asm-sh/processor_32.h
@@ -19,7 +19,7 @@
* Default implementation of macro that returns current
* instruction pointer ("program counter").
*/
-#define current_text_addr() ({ void *pc; __asm__("mova 1f, %0\n1:":"=z" (pc)); pc; })
+#define current_text_addr() ({ void *pc; __asm__("mova 1f, %0\n.align 2\n1:":"=z" (pc)); pc; })
/* Core Processor Version Register */
#define CCN_PVR 0xff000030
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/