diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/channel_gk20a.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c index 2f5ea301..2c98797d 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |||
@@ -438,6 +438,10 @@ static void gk20a_free_channel(struct channel_gk20a *ch, bool force) | |||
438 | gk20a_channel_sync_destroy(ch->sync); | 438 | gk20a_channel_sync_destroy(ch->sync); |
439 | ch->sync = NULL; | 439 | ch->sync = NULL; |
440 | } | 440 | } |
441 | if (ch->user_sync) { | ||
442 | gk20a_channel_sync_destroy(ch->user_sync); | ||
443 | ch->user_sync = NULL; | ||
444 | } | ||
441 | nvgpu_mutex_release(&ch->sync_lock); | 445 | nvgpu_mutex_release(&ch->sync_lock); |
442 | 446 | ||
443 | /* | 447 | /* |
@@ -1147,7 +1151,7 @@ int gk20a_channel_alloc_gpfifo(struct channel_gk20a *c, | |||
1147 | 1151 | ||
1148 | if (!g->aggressive_sync_destroy_thresh) { | 1152 | if (!g->aggressive_sync_destroy_thresh) { |
1149 | nvgpu_mutex_acquire(&c->sync_lock); | 1153 | nvgpu_mutex_acquire(&c->sync_lock); |
1150 | c->sync = gk20a_channel_sync_create(c); | 1154 | c->sync = gk20a_channel_sync_create(c, false); |
1151 | if (!c->sync) { | 1155 | if (!c->sync) { |
1152 | err = -ENOMEM; | 1156 | err = -ENOMEM; |
1153 | nvgpu_mutex_release(&c->sync_lock); | 1157 | nvgpu_mutex_release(&c->sync_lock); |