KVM: PPC: Book3S: Eliminate some unnecessary checks
authorPaul Mackerras <paulus@ozlabs.org>
Mon, 20 Nov 2017 08:56:27 +0000 (19:56 +1100)
committerPaul Mackerras <paulus@ozlabs.org>
Thu, 23 Nov 2017 03:23:34 +0000 (14:23 +1100)
In an excess of caution, commit 6f63e81bda98 ("KVM: PPC: Book3S: Add
MMIO emulation for FP and VSX instructions", 2017-02-21) included
checks for the case that vcpu->arch.mmio_vsx_copy_nums is less than
zero, even though its type is u8.  This causes a Coverity warning,
so we remove the check for < 0.  We also adjust the associated
comment to be more accurate ("4 or less" rather than "less than 4").

Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
arch/powerpc/kvm/powerpc.c

index 6b6c53c..c2c7ef3 100644 (file)
@@ -1101,11 +1101,9 @@ int kvmppc_handle_vsx_load(struct kvm_run *run, struct kvm_vcpu *vcpu,
 {
        enum emulation_result emulated = EMULATE_DONE;
 
-       /* Currently, mmio_vsx_copy_nums only allowed to be less than 4 */
-       if ( (vcpu->arch.mmio_vsx_copy_nums > 4) ||
-               (vcpu->arch.mmio_vsx_copy_nums < 0) ) {
+       /* Currently, mmio_vsx_copy_nums only allowed to be 4 or less */
+       if (vcpu->arch.mmio_vsx_copy_nums > 4)
                return EMULATE_FAIL;
-       }
 
        while (vcpu->arch.mmio_vsx_copy_nums) {
                emulated = __kvmppc_handle_load(run, vcpu, rt, bytes,
@@ -1247,11 +1245,9 @@ int kvmppc_handle_vsx_store(struct kvm_run *run, struct kvm_vcpu *vcpu,
 
        vcpu->arch.io_gpr = rs;
 
-       /* Currently, mmio_vsx_copy_nums only allowed to be less than 4 */
-       if ( (vcpu->arch.mmio_vsx_copy_nums > 4) ||
-               (vcpu->arch.mmio_vsx_copy_nums < 0) ) {
+       /* Currently, mmio_vsx_copy_nums only allowed to be 4 or less */
+       if (vcpu->arch.mmio_vsx_copy_nums > 4)
                return EMULATE_FAIL;
-       }
 
        while (vcpu->arch.mmio_vsx_copy_nums) {
                if (kvmppc_get_vsr_data(vcpu, rs, &val) == -1)