diff options
Diffstat (limited to 'drivers/gpu/nvgpu')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/channel_gk20a.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c index cc3bbbd2..b846054d 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |||
@@ -2628,6 +2628,15 @@ int gk20a_submit_channel_gpfifo(struct channel_gk20a *c, | |||
2628 | !skip_buffer_refcounting; | 2628 | !skip_buffer_refcounting; |
2629 | 2629 | ||
2630 | if (need_job_tracking) { | 2630 | if (need_job_tracking) { |
2631 | /* | ||
2632 | * If the submit is to have deterministic latency and | ||
2633 | * job tracking is required, the channel must have | ||
2634 | * pre-allocated resources. Otherwise, we fail the submit here | ||
2635 | */ | ||
2636 | if ((flags & NVGPU_SUBMIT_GPFIFO_FLAGS_DETERMINISTIC) && | ||
2637 | !channel_gk20a_is_prealloc_enabled(c)) | ||
2638 | return -EINVAL; | ||
2639 | |||
2631 | /* gk20a_channel_update releases this ref. */ | 2640 | /* gk20a_channel_update releases this ref. */ |
2632 | err = gk20a_busy(g->dev); | 2641 | err = gk20a_busy(g->dev); |
2633 | if (err) { | 2642 | if (err) { |