diff options
author | Jan Glauber <jang@linux.vnet.ibm.com> | 2011-07-24 04:48:19 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2011-07-24 04:48:21 -0400 |
commit | 144d634a21caff1d54cb4bb0d073774e88130045 (patch) | |
tree | 9eea288248189b899ee85ba346cf344e57dd402a /arch/s390/kernel/sclp.S | |
parent | 603d1a50acf252621a3598618b018b8123aaba64 (diff) |
[S390] fix s390 assembler code alignments
The alignment is missing for various global symbols in s390 assembly code.
With a recent gcc and an instruction like stgrl this can lead to a
specification exception if the instruction uses such a mis-aligned address.
Specify the alignment explicitely and while add it define __ALIGN for s390
and use the ENTRY define to save some lines of code.
Signed-off-by: Jan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/sclp.S')
-rw-r--r-- | arch/s390/kernel/sclp.S | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/s390/kernel/sclp.S b/arch/s390/kernel/sclp.S index 2e82fdd89320..95792d846bb6 100644 --- a/arch/s390/kernel/sclp.S +++ b/arch/s390/kernel/sclp.S | |||
@@ -8,6 +8,8 @@ | |||
8 | * | 8 | * |
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <linux/linkage.h> | ||
12 | |||
11 | LC_EXT_NEW_PSW = 0x58 # addr of ext int handler | 13 | LC_EXT_NEW_PSW = 0x58 # addr of ext int handler |
12 | LC_EXT_NEW_PSW_64 = 0x1b0 # addr of ext int handler 64 bit | 14 | LC_EXT_NEW_PSW_64 = 0x1b0 # addr of ext int handler 64 bit |
13 | LC_EXT_INT_PARAM = 0x80 # addr of ext int parameter | 15 | LC_EXT_INT_PARAM = 0x80 # addr of ext int parameter |
@@ -260,8 +262,7 @@ _sclp_print: | |||
260 | # R2 = 0 on success, 1 on failure | 262 | # R2 = 0 on success, 1 on failure |
261 | # | 263 | # |
262 | 264 | ||
263 | .globl _sclp_print_early | 265 | ENTRY(_sclp_print_early) |
264 | _sclp_print_early: | ||
265 | stm %r6,%r15,24(%r15) # save registers | 266 | stm %r6,%r15,24(%r15) # save registers |
266 | ahi %r15,-96 # create stack frame | 267 | ahi %r15,-96 # create stack frame |
267 | #ifdef CONFIG_64BIT | 268 | #ifdef CONFIG_64BIT |