diff options
author | Mikulas Patocka <mpatocka@redhat.com> | 2010-08-20 01:15:32 +0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-08-20 01:15:32 +0400 |
commit | 019408f9b89c68cd7b8ddb904960dc17ccf7e531 (patch) | |
tree | c5a7c4ba3531652da7299dede4eb331c5517769e /arch/sparc | |
parent | 0f58189d4a3ca96d7959501ecb203177efdbc5bd (diff) | |
download | linux-019408f9b89c68cd7b8ddb904960dc17ccf7e531.tar.xz |
sparc64: Fill a missing delay slot.
If the code were already aligned to 64 bytes, wr instruction would be executed
twice --- once in delay slot and once in the jump target.
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc')
-rw-r--r-- | arch/sparc/include/asm/system_64.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/sparc/include/asm/system_64.h b/arch/sparc/include/asm/system_64.h index d24cfe16afc1..e3b65d8cf41b 100644 --- a/arch/sparc/include/asm/system_64.h +++ b/arch/sparc/include/asm/system_64.h @@ -106,6 +106,7 @@ do { __asm__ __volatile__("ba,pt %%xcc, 1f\n\t" \ */ #define write_pic(__p) \ __asm__ __volatile__("ba,pt %%xcc, 99f\n\t" \ + " nop\n\t" \ ".align 64\n" \ "99:wr %0, 0x0, %%pic\n\t" \ "rd %%pic, %%g0" : : "r" (__p)) |