MIPS: KVM: Do not sign extend on unsigned MMIO load

Fix possible unintended sign extension in unsigned MMIO loads by casting
to uint16_t in the case of mmio_needed != 2.

Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Tested-by: James Hogan <james.hogan@imgtec.com>
Cc: Gleb Natapov <gleb@kernel.org>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: kvm@vger.kernel.org
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/9985/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

authored by Nicholas Mc Guire and committed by Ralf Baechle ed9244e6 8833bc30

Changed files
+1 -1
arch
mips
kvm
+1 -1
arch/mips/kvm/emulate.c
··· 2409 2409 if (vcpu->mmio_needed == 2) 2410 2410 *gpr = *(int16_t *) run->mmio.data; 2411 2411 else 2412 - *gpr = *(int16_t *) run->mmio.data; 2412 + *gpr = *(uint16_t *)run->mmio.data; 2413 2413 2414 2414 break; 2415 2415 case 1: