linux-xiaomi-chiron/arch/mips/include/uapi/asm
Matt Redfearn cea8cd498f MIPS: microMIPS: Fix decoding of swsp16 instruction
When the immediate encoded in the instruction is accessed, it is sign
extended due to being a signed value being assigned to a signed integer.
The ISA specifies that this operation is an unsigned operation.
The sign extension leads us to incorrectly decode:

801e9c8e:       cbf1            sw      ra,68(sp)

As having an immediate of 1073741809.

Since the instruction format does not specify signed/unsigned, and this
is currently the only location to use this instuction format, change it
to an unsigned immediate.

Fixes: bb9bc4689b ("MIPS: Calculate microMIPS ra properly when unwinding the stack")
Suggested-by: Paul Burton <paul.burton@imgtec.com>
Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Cc: Marcin Nowakowski <marcin.nowakowski@imgtec.com>
Cc: Miodrag Dinic <miodrag.dinic@imgtec.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/16957/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2017-09-06 13:20:25 +02:00
..
auxvec.h MIPS: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO 2016-07-28 12:06:16 +02:00
bitfield.h MIPS: Move definition of __BITFIELD_FIELD to sharable header. 2014-05-21 11:12:45 +02:00
bitsperlong.h UAPI: (Scripted) Disintegrate arch/mips/include/asm 2012-10-09 09:47:14 +01:00
break.h MIPS: Add uprobes support. 2015-09-03 12:08:05 +02:00
byteorder.h UAPI: (Scripted) Disintegrate arch/mips/include/asm 2012-10-09 09:47:14 +01:00
cachectl.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
errno.h errno.h: remove "NFS" from descriptions in comments 2013-11-13 12:09:12 +09:00
fcntl.h Merge branch '3.10-fixes' into mips-for-linux-next 2013-07-12 18:11:43 +02:00
hwcap.h MIPS: AT_HWCAP aux vector infrastructure 2015-09-03 12:07:59 +02:00
inst.h MIPS: microMIPS: Fix decoding of swsp16 instruction 2017-09-06 13:20:25 +02:00
ioctl.h UAPI: (Scripted) Disintegrate arch/mips/include/asm 2012-10-09 09:47:14 +01:00
ioctls.h tty: Fix TIOCGPTPEER ioctl definition 2017-07-17 17:04:41 +02:00
Kbuild uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
kvm.h kvm: make KVM_COALESCED_MMIO_PAGE_OFFSET public 2017-04-07 16:49:01 +02:00
kvm_para.h MIPS: Add functions for hypervisor call 2014-05-30 21:01:11 +02:00
mman.h x86/pkeys: Allocation/free syscalls 2016-09-09 13:02:27 +02:00
msgbuf.h MIPS: <uapi/asm/msgbuf.h>: Don't reference CONFIG_* symbols. 2013-06-18 16:28:16 +02:00
param.h UAPI: (Scripted) Disintegrate arch/mips/include/asm 2012-10-09 09:47:14 +01:00
poll.h UAPI: (Scripted) Disintegrate arch/mips/include/asm 2012-10-09 09:47:14 +01:00
posix_types.h UAPI: (Scripted) Disintegrate arch/mips/include/asm 2012-10-09 09:47:14 +01:00
ptrace.h MIPS: ptrace.h: Add a missing include 2014-10-23 13:23:08 +02:00
reg.h MIPS: asm/reg.h: Move to uapi 2014-08-02 00:06:38 +02:00
resource.h MIPS: <uapi/asm/resource.h: Don't reference CONFIG_* symbols. 2013-06-18 16:28:15 +02:00
sembuf.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
setup.h UAPI: (Scripted) Disintegrate arch/mips/include/asm 2012-10-09 09:47:14 +01:00
sgidefs.h UAPI: (Scripted) Disintegrate arch/mips/include/asm 2012-10-09 09:47:14 +01:00
shmbuf.h UAPI: (Scripted) Disintegrate arch/mips/include/asm 2012-10-09 09:47:14 +01:00
sigcontext.h MIPS: Add definitions for extended context 2015-09-03 12:07:58 +02:00
siginfo.h MIPS: Fix uapi include in exported asm/siginfo.h 2016-05-13 14:02:11 +02:00
signal.h MIPS: Delete definition of SA_RESTORER. 2013-04-05 15:10:51 +02:00
socket.h net: introduce SO_PEERGROUPS getsockopt 2017-06-21 11:38:41 -04:00
sockios.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
stat.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
statfs.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
swab.h MIPS: UAPI: Ignore __arch_swab{16,32,64} when using MIPS16 2015-10-05 11:30:23 +02:00
sysmips.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
termbits.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
termios.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
types.h MIPS: Add __SANE_USERSPACE_TYPES__ to asm/types.h for LL64 2014-05-28 10:51:13 +02:00
ucontext.h MIPS: Add definitions for extended context 2015-09-03 12:07:58 +02:00
unistd.h MIPS: Wire up statx system call 2017-03-08 12:11:13 +01:00