summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/vgpu/fifo_vgpu.c')
-rw-r--r--drivers/gpu/nvgpu/vgpu/fifo_vgpu.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c b/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
index c3669990..5ffc6a00 100644
--- a/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
+++ b/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
@@ -651,7 +651,7 @@ static int vgpu_fifo_force_reset_ch(struct channel_gk20a *ch,
651 if (gk20a_is_channel_marked_as_tsg(ch)) { 651 if (gk20a_is_channel_marked_as_tsg(ch)) {
652 tsg = &g->fifo.tsg[ch->tsgid]; 652 tsg = &g->fifo.tsg[ch->tsgid];
653 653
654 mutex_lock(&tsg->ch_list_lock); 654 down_read(&tsg->ch_list_lock);
655 655
656 list_for_each_entry(ch_tsg, &tsg->ch_list, ch_entry) { 656 list_for_each_entry(ch_tsg, &tsg->ch_list, ch_entry) {
657 if (gk20a_channel_get(ch_tsg)) { 657 if (gk20a_channel_get(ch_tsg)) {
@@ -661,7 +661,7 @@ static int vgpu_fifo_force_reset_ch(struct channel_gk20a *ch,
661 } 661 }
662 } 662 }
663 663
664 mutex_unlock(&tsg->ch_list_lock); 664 up_read(&tsg->ch_list_lock);
665 } else { 665 } else {
666 gk20a_set_error_notifier(ch, err_code); 666 gk20a_set_error_notifier(ch, err_code);
667 ch->has_timedout = true; 667 ch->has_timedout = true;