[PATCH] Error handle - handle fence reg during GPU reset
He, Min
min.he at intel.com
Fri Feb 17 03:48:47 UTC 2017
在 2/17/2017 11:41 AM, Zhao, Xinda 写道:
> 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 | 11 +++++++----
> drivers/gpu/drm/i915/gvt/mmio.c | 2 ++
> 2 files changed, 9 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gvt/handlers.c b/drivers/gpu/drm/i915/gvt/handlers.c
> index 1d45062..6406394 100644
> --- a/drivers/gpu/drm/i915/gvt/handlers.c
> +++ b/drivers/gpu/drm/i915/gvt/handlers.c
> @@ -154,10 +154,13 @@ 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);
Shall we return an error here? I think it's a bug in original code, and
maybe you can fix it in your patch.
> }
> 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;
> }
>
> /**
More information about the intel-gvt-dev
mailing list