[PATCH][Security Check] drm/i915/gvt: handle fence reg access during GPU reset

Zhenyu Wang zhenyuw at linux.intel.com
Fri Feb 17 06:29:42 UTC 2017


oh, man, no security check in mail title...

On 2017.02.17 14:30:55 +0800, Zhao, Xinda wrote:
> Lots of reduntant log info will be printed out during GPU reset,
> including accessing untracked mmio register and fence register,
> variable disable_warn_untrack is added previously to handle the
> situation, but the accessing of fence register is ignored in the
> previously patch, so add it back.
> 
> Besides, set the variable disable_warn_untrack to the defalut value
> after GPU reset is finished.
> 
> Signed-off-by: Zhao, Xinda <xinda.zhao at intel.com>
> ---
>  drivers/gpu/drm/i915/gvt/handlers.c | 12 ++++++++----
>  drivers/gpu/drm/i915/gvt/mmio.c     |  2 ++
>  2 files changed, 10 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/gvt/handlers.c b/drivers/gpu/drm/i915/gvt/handlers.c
> index 1d45062..be5e66b 100644
> --- a/drivers/gpu/drm/i915/gvt/handlers.c
> +++ b/drivers/gpu/drm/i915/gvt/handlers.c
> @@ -154,11 +154,15 @@ static int sanitize_fence_mmio_access(struct intel_vgpu *vgpu,
>  		unsigned int fence_num, void *p_data, unsigned int bytes)
>  {
>  	if (fence_num >= vgpu_fence_sz(vgpu)) {
> -		gvt_err("vgpu%d: found oob fence register access\n",
> -				vgpu->id);
> -		gvt_err("vgpu%d: total fence num %d access fence num %d\n",
> -				vgpu->id, vgpu_fence_sz(vgpu), fence_num);
> +		if (!vgpu->mmio.disable_warn_untrack) {
> +			gvt_err("vgpu%d: found oob fence register access\n",
> +					vgpu->id);
> +			gvt_err("vgpu%d: total fence %d, access fence %d\n",
> +					vgpu->id, vgpu_fence_sz(vgpu),
> +					fence_num);
> +		}
>  		memset(p_data, 0, bytes);
> +		return -EINVAL;
>  	}
>  	return 0;
>  }
> diff --git a/drivers/gpu/drm/i915/gvt/mmio.c b/drivers/gpu/drm/i915/gvt/mmio.c
> index 4df078b..7a5bbb8 100644
> --- a/drivers/gpu/drm/i915/gvt/mmio.c
> +++ b/drivers/gpu/drm/i915/gvt/mmio.c
> @@ -322,6 +322,8 @@ void intel_vgpu_reset_mmio(struct intel_vgpu *vgpu)
>  
>  	/* set the bit 0:2(Core C-State ) to C0 */
>  	vgpu_vreg(vgpu, GEN6_GT_CORE_STATUS) = 0;
> +
> +	vgpu->mmio.disable_warn_untrack = false;
>  }
>  
>  /**
> -- 
> 2.7.4
> 
> _______________________________________________
> intel-gvt-dev mailing list
> intel-gvt-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gvt-dev

-- 
Open Source Technology Center, Intel ltd.

$gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 163 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/intel-gvt-dev/attachments/20170217/1cb11b28/attachment.sig>


More information about the intel-gvt-dev mailing list