diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-10-06 17:28:16 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-10-06 17:28:16 -0700 |
commit | 97a7729a5c2f01faa076f38a7ec010961b456823 (patch) | |
tree | d1aaecf81d1357b5920579347e6bb894b4bfe11c /arch/arc/kernel/unaligned.c | |
parent | 9987f76ad286887978803ece6cdcf34582279a29 (diff) | |
parent | d0e639c9e06d44e713170031fe05fb60ebe680af (diff) | |
download | talos-op-linux-97a7729a5c2f01faa076f38a7ec010961b456823.tar.gz talos-op-linux-97a7729a5c2f01faa076f38a7ec010961b456823.zip |
Merge 3.12-rc4 into tty-next
We want the tty fixes in this branch as well.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/arc/kernel/unaligned.c')
-rw-r--r-- | arch/arc/kernel/unaligned.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arc/kernel/unaligned.c b/arch/arc/kernel/unaligned.c index 28d170060747..7ff5b5c183bb 100644 --- a/arch/arc/kernel/unaligned.c +++ b/arch/arc/kernel/unaligned.c @@ -245,6 +245,12 @@ int misaligned_fixup(unsigned long address, struct pt_regs *regs, regs->status32 &= ~STATUS_DE_MASK; } else { regs->ret += state.instr_len; + + /* handle zero-overhead-loop */ + if ((regs->ret == regs->lp_end) && (regs->lp_count)) { + regs->ret = regs->lp_start; + regs->lp_count--; + } } return 0; |