2020-02-03 17:18:21

by Igor Druzhinin

[permalink] [raw]
Subject: [PATCH] drm/i915/gvt: more locking for ppgtt mm LRU list

When the lock was introduced in 72aabfb862e40 ("drm/i915/gvt: Add mutual
lock for ppgtt mm LRU list") one place got lost.

Signed-off-by: Igor Druzhinin <[email protected]>
---
drivers/gpu/drm/i915/gvt/gtt.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/i915/gvt/gtt.c b/drivers/gpu/drm/i915/gvt/gtt.c
index 34cb404..4a48280 100644
--- a/drivers/gpu/drm/i915/gvt/gtt.c
+++ b/drivers/gpu/drm/i915/gvt/gtt.c
@@ -1956,7 +1956,11 @@ void _intel_vgpu_mm_release(struct kref *mm_ref)

if (mm->type == INTEL_GVT_MM_PPGTT) {
list_del(&mm->ppgtt_mm.list);
+
+ mutex_lock(&mm->vgpu->gvt->gtt.ppgtt_mm_lock);
list_del(&mm->ppgtt_mm.lru_list);
+ mutex_unlock(&mm->vgpu->gvt->gtt.ppgtt_mm_lock);
+
invalidate_ppgtt_mm(mm);
} else {
vfree(mm->ggtt_mm.virtual_ggtt);
--
2.7.4


2020-02-10 01:56:42

by Zhenyu Wang

[permalink] [raw]
Subject: Re: [PATCH] drm/i915/gvt: more locking for ppgtt mm LRU list

On 2020.02.03 15:07:01 +0000, Igor Druzhinin wrote:
> When the lock was introduced in 72aabfb862e40 ("drm/i915/gvt: Add mutual
> lock for ppgtt mm LRU list") one place got lost.
>
> Signed-off-by: Igor Druzhinin <[email protected]>
> ---
> drivers/gpu/drm/i915/gvt/gtt.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/gvt/gtt.c b/drivers/gpu/drm/i915/gvt/gtt.c
> index 34cb404..4a48280 100644
> --- a/drivers/gpu/drm/i915/gvt/gtt.c
> +++ b/drivers/gpu/drm/i915/gvt/gtt.c
> @@ -1956,7 +1956,11 @@ void _intel_vgpu_mm_release(struct kref *mm_ref)
>
> if (mm->type == INTEL_GVT_MM_PPGTT) {
> list_del(&mm->ppgtt_mm.list);
> +
> + mutex_lock(&mm->vgpu->gvt->gtt.ppgtt_mm_lock);
> list_del(&mm->ppgtt_mm.lru_list);
> + mutex_unlock(&mm->vgpu->gvt->gtt.ppgtt_mm_lock);
> +
> invalidate_ppgtt_mm(mm);
> } else {
> vfree(mm->ggtt_mm.virtual_ggtt);
> --

Thanks for the fix!

Reviewed-by: Zhenyu Wang <[email protected]>

--
Open Source Technology Center, Intel ltd.

$gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827


Attachments:
(No filename) (1.10 kB)
signature.asc (201.00 B)
Download all attachments