From f7285577d7948115ff38c83982eb3b126302b195 Mon Sep 17 00:00:00 2001 From: Deepak Nibade Date: Mon, 11 Jan 2016 20:41:07 +0530 Subject: gpu: nvgpu: enable wdt for each channel open We currently enable per-channel wdt flag at channel initialization time only But if process disables channel's wdt via per-channel IOCTL, and closes the channel without re-enabling it, we leave the wdt disabled on that channel And if same channel is assigned to some other process, then that process might have wdt disabled already Fix this by setting ch->wdt_enabled = true during gk20a_open_new_channel() Bug 200165797 Change-Id: I3ab482ce7cfbcbbd2178041f01f97457ff24f7bb Signed-off-by: Deepak Nibade Reviewed-on: http://git-master/r/931128 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Sachin Nikam Tested-by: Sachin Nikam --- drivers/gpu/nvgpu/gk20a/channel_gk20a.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.c') diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c index 444fec13..2ec1ffe4 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c @@ -1141,6 +1141,7 @@ struct channel_gk20a *gk20a_open_new_channel(struct gk20a *g) ch->timeout_ms_max = gk20a_get_gr_idle_timeout(g); ch->timeout_debug_dump = true; ch->has_timedout = false; + ch->wdt_enabled = true; ch->obj_class = 0; ch->interleave = false; gk20a_fifo_set_channel_priority( @@ -2231,7 +2232,6 @@ int gk20a_init_channel_support(struct gk20a *g, u32 chid) c->g = NULL; c->hw_chid = chid; c->bound = false; - c->wdt_enabled = true; spin_lock_init(&c->ref_obtain_lock); atomic_set(&c->ref_count, 0); c->referenceable = false; -- cgit v1.2.2