From b71fa9289da8da9c5d20e04abaa90870de8b4430 Mon Sep 17 00:00:00 2001 From: Terje Bergstrom Date: Tue, 28 Feb 2017 12:16:35 -0800 Subject: gpu: nvgpu: Do not bind FECS trace on VPR channels VPR channels can access VPR, and writing to FECS buffer outside of VPR causes a region violation. Bug 1877511 Change-Id: Ida466c81e928d1f67bf1b0e7dd6afb799c1ab2f6 Signed-off-by: Terje Bergstrom Reviewed-on: http://git-master/r/1312759 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: svccoveritychecker Tested-by: Season Li GVS: Gerrit_Virtual_Submit Reviewed-by: Konsta Holtta --- drivers/gpu/nvgpu/gk20a/channel_gk20a.c | 2 +- drivers/gpu/nvgpu/gk20a/gr_gk20a.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'drivers') diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c index 83a3a523..ef8a3e7d 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c @@ -969,7 +969,7 @@ static void gk20a_free_channel(struct channel_gk20a *ch, bool force) gk20a_free_error_notifiers(ch); - if (g->ops.fecs_trace.unbind_channel) + if (g->ops.fecs_trace.unbind_channel && !ch->vpr) g->ops.fecs_trace.unbind_channel(g, ch); /* release channel ctx */ diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c index aad6c07b..cb4f8007 100644 --- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c @@ -3303,7 +3303,7 @@ int gk20a_alloc_obj_ctx(struct channel_gk20a *c, "fail to load golden ctx image"); goto out; } - if (g->ops.fecs_trace.bind_channel) { + if (g->ops.fecs_trace.bind_channel && !c->vpr) { err = g->ops.fecs_trace.bind_channel(g, c); if (err) { gk20a_warn(dev_from_gk20a(g), -- cgit v1.2.2