diff options
| -rw-r--r-- | drivers/gpu/drm/i915/gvt/display.c | 2 | ||||
| -rw-r--r-- | drivers/gpu/drm/i915/gvt/dmabuf.c | 8 | ||||
| -rw-r--r-- | drivers/gpu/drm/i915/gvt/gtt.c | 2 | ||||
| -rw-r--r-- | drivers/gpu/drm/i915/gvt/scheduler.c | 5 |
4 files changed, 7 insertions, 10 deletions
diff --git a/drivers/gpu/drm/i915/gvt/display.c b/drivers/gpu/drm/i915/gvt/display.c index 035479e273be..e3f9caa7839f 100644 --- a/drivers/gpu/drm/i915/gvt/display.c +++ b/drivers/gpu/drm/i915/gvt/display.c | |||
| @@ -448,7 +448,7 @@ void intel_gvt_emulate_vblank(struct intel_gvt *gvt) | |||
| 448 | /** | 448 | /** |
| 449 | * intel_vgpu_emulate_hotplug - trigger hotplug event for vGPU | 449 | * intel_vgpu_emulate_hotplug - trigger hotplug event for vGPU |
| 450 | * @vgpu: a vGPU | 450 | * @vgpu: a vGPU |
| 451 | * @conncted: link state | 451 | * @connected: link state |
| 452 | * | 452 | * |
| 453 | * This function is used to trigger hotplug interrupt for vGPU | 453 | * This function is used to trigger hotplug interrupt for vGPU |
| 454 | * | 454 | * |
diff --git a/drivers/gpu/drm/i915/gvt/dmabuf.c b/drivers/gpu/drm/i915/gvt/dmabuf.c index 3e7e2b80c857..5d887f7cc0d5 100644 --- a/drivers/gpu/drm/i915/gvt/dmabuf.c +++ b/drivers/gpu/drm/i915/gvt/dmabuf.c | |||
| @@ -238,9 +238,6 @@ static int vgpu_get_plane_info(struct drm_device *dev, | |||
| 238 | default: | 238 | default: |
| 239 | gvt_vgpu_err("invalid tiling mode: %x\n", p.tiled); | 239 | gvt_vgpu_err("invalid tiling mode: %x\n", p.tiled); |
| 240 | } | 240 | } |
| 241 | |||
| 242 | info->size = (((p.stride * p.height * p.bpp) / 8) + | ||
| 243 | (PAGE_SIZE - 1)) >> PAGE_SHIFT; | ||
| 244 | } else if (plane_id == DRM_PLANE_TYPE_CURSOR) { | 241 | } else if (plane_id == DRM_PLANE_TYPE_CURSOR) { |
| 245 | ret = intel_vgpu_decode_cursor_plane(vgpu, &c); | 242 | ret = intel_vgpu_decode_cursor_plane(vgpu, &c); |
| 246 | if (ret) | 243 | if (ret) |
| @@ -262,14 +259,13 @@ static int vgpu_get_plane_info(struct drm_device *dev, | |||
| 262 | info->x_hot = UINT_MAX; | 259 | info->x_hot = UINT_MAX; |
| 263 | info->y_hot = UINT_MAX; | 260 | info->y_hot = UINT_MAX; |
| 264 | } | 261 | } |
| 265 | |||
| 266 | info->size = (((info->stride * c.height * c.bpp) / 8) | ||
| 267 | + (PAGE_SIZE - 1)) >> PAGE_SHIFT; | ||
| 268 | } else { | 262 | } else { |
| 269 | gvt_vgpu_err("invalid plane id:%d\n", plane_id); | 263 | gvt_vgpu_err("invalid plane id:%d\n", plane_id); |
| 270 | return -EINVAL; | 264 | return -EINVAL; |
| 271 | } | 265 | } |
| 272 | 266 | ||
| 267 | info->size = (info->stride * info->height + PAGE_SIZE - 1) | ||
| 268 | >> PAGE_SHIFT; | ||
| 273 | if (info->size == 0) { | 269 | if (info->size == 0) { |
| 274 | gvt_vgpu_err("fb size is zero\n"); | 270 | gvt_vgpu_err("fb size is zero\n"); |
| 275 | return -EINVAL; | 271 | return -EINVAL; |
diff --git a/drivers/gpu/drm/i915/gvt/gtt.c b/drivers/gpu/drm/i915/gvt/gtt.c index d7052ab7908c..cf133ef03873 100644 --- a/drivers/gpu/drm/i915/gvt/gtt.c +++ b/drivers/gpu/drm/i915/gvt/gtt.c | |||
| @@ -1946,7 +1946,7 @@ void _intel_vgpu_mm_release(struct kref *mm_ref) | |||
| 1946 | */ | 1946 | */ |
| 1947 | void intel_vgpu_unpin_mm(struct intel_vgpu_mm *mm) | 1947 | void intel_vgpu_unpin_mm(struct intel_vgpu_mm *mm) |
| 1948 | { | 1948 | { |
| 1949 | atomic_dec(&mm->pincount); | 1949 | atomic_dec_if_positive(&mm->pincount); |
| 1950 | } | 1950 | } |
| 1951 | 1951 | ||
| 1952 | /** | 1952 | /** |
diff --git a/drivers/gpu/drm/i915/gvt/scheduler.c b/drivers/gpu/drm/i915/gvt/scheduler.c index 159192c097cc..05b953793316 100644 --- a/drivers/gpu/drm/i915/gvt/scheduler.c +++ b/drivers/gpu/drm/i915/gvt/scheduler.c | |||
| @@ -1486,8 +1486,9 @@ intel_vgpu_create_workload(struct intel_vgpu *vgpu, int ring_id, | |||
| 1486 | intel_runtime_pm_put_unchecked(dev_priv); | 1486 | intel_runtime_pm_put_unchecked(dev_priv); |
| 1487 | } | 1487 | } |
| 1488 | 1488 | ||
| 1489 | if (ret && (vgpu_is_vm_unhealthy(ret))) { | 1489 | if (ret) { |
| 1490 | enter_failsafe_mode(vgpu, GVT_FAILSAFE_GUEST_ERR); | 1490 | if (vgpu_is_vm_unhealthy(ret)) |
| 1491 | enter_failsafe_mode(vgpu, GVT_FAILSAFE_GUEST_ERR); | ||
| 1491 | intel_vgpu_destroy_workload(workload); | 1492 | intel_vgpu_destroy_workload(workload); |
| 1492 | return ERR_PTR(ret); | 1493 | return ERR_PTR(ret); |
| 1493 | } | 1494 | } |
