Browse Source

drm/i915/gvt: fix error handing of tlb_control emulation

Return ealier for a invalid access, else it would false set
tlb flag for RCS.

Signed-off-by: Changbin Du <changbin.du@intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Changbin Du 8 years ago
parent
commit
a12010534d
1 changed files with 2 additions and 4 deletions
  1. 2 4
      drivers/gpu/drm/i915/gvt/handlers.c

+ 2 - 4
drivers/gpu/drm/i915/gvt/handlers.c

@@ -1367,7 +1367,6 @@ static int ring_mode_mmio_write(struct intel_vgpu *vgpu, unsigned int offset,
 static int gvt_reg_tlb_control_handler(struct intel_vgpu *vgpu,
 static int gvt_reg_tlb_control_handler(struct intel_vgpu *vgpu,
 		unsigned int offset, void *p_data, unsigned int bytes)
 		unsigned int offset, void *p_data, unsigned int bytes)
 {
 {
-	int rc = 0;
 	unsigned int id = 0;
 	unsigned int id = 0;
 
 
 	write_vreg(vgpu, offset, p_data, bytes);
 	write_vreg(vgpu, offset, p_data, bytes);
@@ -1390,12 +1389,11 @@ static int gvt_reg_tlb_control_handler(struct intel_vgpu *vgpu,
 		id = VECS;
 		id = VECS;
 		break;
 		break;
 	default:
 	default:
-		rc = -EINVAL;
-		break;
+		return -EINVAL;
 	}
 	}
 	set_bit(id, (void *)vgpu->tlb_handle_pending);
 	set_bit(id, (void *)vgpu->tlb_handle_pending);
 
 
-	return rc;
+	return 0;
 }
 }
 
 
 static int ring_reset_ctl_write(struct intel_vgpu *vgpu,
 static int ring_reset_ctl_write(struct intel_vgpu *vgpu,