diff options
author | David Miller <davem@davemloft.net> | 2010-10-23 14:06:24 -0400 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2010-10-29 12:57:06 -0400 |
commit | f0daed0242d514033b9ecca9187108d3c4e281a5 (patch) | |
tree | 491257e0bbb6cb419b8c146a570f635ea481122c /arch/sparc/include | |
parent | 95bcd683fb694a3e2d0538bf486430a0dfbb4111 (diff) |
jump_label: Fix unaligned traps on sparc.
The vmlinux.lds.h knobs to emit the __jump_table section in the main
kernel image takes care to align the section, but this doesn't help
for the __jump_table section that gets emitted into modules.
Fix the resulting lack of section alignment by explicitly specifying
it in the assembler.
Signed-off-by: David S. Miller <davem@davemloft.net>
LKML-Reference: <20101023.110624.226758370.davem@davemloft.net>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'arch/sparc/include')
-rw-r--r-- | arch/sparc/include/asm/jump_label.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/sparc/include/asm/jump_label.h b/arch/sparc/include/asm/jump_label.h index 62e66d7b2fb6..d95cf44fb40d 100644 --- a/arch/sparc/include/asm/jump_label.h +++ b/arch/sparc/include/asm/jump_label.h | |||
@@ -14,6 +14,7 @@ | |||
14 | "nop\n\t" \ | 14 | "nop\n\t" \ |
15 | "nop\n\t" \ | 15 | "nop\n\t" \ |
16 | ".pushsection __jump_table, \"a\"\n\t"\ | 16 | ".pushsection __jump_table, \"a\"\n\t"\ |
17 | ".align 4\n\t" \ | ||
17 | ".word 1b, %l[" #label "], %c0\n\t" \ | 18 | ".word 1b, %l[" #label "], %c0\n\t" \ |
18 | ".popsection \n\t" \ | 19 | ".popsection \n\t" \ |
19 | : : "i" (key) : : label);\ | 20 | : : "i" (key) : : label);\ |