diff options
author | Leonid Moiseichuk <lmoiseichuk@nvidia.com> | 2015-07-07 06:54:06 -0400 |
---|---|---|
committer | Bharat Nihalani <bnihalani@nvidia.com> | 2015-07-10 03:31:03 -0400 |
commit | 1e7b5ea793946c6b959f7eef0be88dfd9aabac30 (patch) | |
tree | eccde0f35f7c80be07b5faf52fd666841ba5e282 /drivers | |
parent | 51c784d9a12d6c9f98991bab647aa22febb93de9 (diff) |
gpu: nvgpu: cyclestats snapshots are only for t210
The cyclestats mode-e feature supported by userspace only
for t210 devices, so kernel should advertize it only for t210.
Also small check added to prevent BUG in dma-buf.c:826
if device has lack of memory.
Bug 1662506
Change-Id: I8417a8cdd9092e64126382f379d171932e4592a1
Signed-off-by: Leonid Moiseichuk <lmoiseichuk@nvidia.com>
Reviewed-on: http://git-master/r/767073
(cherry picked from commit 06f86b6e78bae5e26e32466716c18e7918efb1b1)
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-by: Konsta Holtta <kholtta@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-on: http://git-master/r/767148
Reviewed-by: Automatic_Commit_Validation_User
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c | 4 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.c | 7 |
2 files changed, 9 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c index b23d2794..34910152 100644 --- a/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/css_gr_gk20a.c | |||
@@ -569,8 +569,10 @@ static int css_gr_free_client_data(struct gk20a_cs_snapshot *data, | |||
569 | client->perfmon_start, client->perfmon_count)) | 569 | client->perfmon_start, client->perfmon_count)) |
570 | ret = -EINVAL; | 570 | ret = -EINVAL; |
571 | } | 571 | } |
572 | |||
572 | if (client->dma_handler) { | 573 | if (client->dma_handler) { |
573 | dma_buf_vunmap(client->dma_handler, client->snapshot); | 574 | if (client->snapshot) |
575 | dma_buf_vunmap(client->dma_handler, client->snapshot); | ||
574 | dma_buf_put(client->dma_handler); | 576 | dma_buf_put(client->dma_handler); |
575 | } | 577 | } |
576 | 578 | ||
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c index b1747987..badb7717 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gk20a.c | |||
@@ -2008,7 +2008,12 @@ int gk20a_init_gpu_characteristics(struct gk20a *g) | |||
2008 | 2008 | ||
2009 | if (IS_ENABLED(CONFIG_GK20A_CYCLE_STATS)) { | 2009 | if (IS_ENABLED(CONFIG_GK20A_CYCLE_STATS)) { |
2010 | gpu->flags |= NVGPU_GPU_FLAGS_SUPPORT_CYCLE_STATS; | 2010 | gpu->flags |= NVGPU_GPU_FLAGS_SUPPORT_CYCLE_STATS; |
2011 | gpu->flags |= NVGPU_GPU_FLAGS_SUPPORT_CYCLE_STATS_SNAPSHOT; | 2011 | /* the snapshots must be supported only for t210 */ |
2012 | if (NVGPU_GPU_ARCH_GM200 == gpu->arch && | ||
2013 | NVGPU_GPU_IMPL_GM20B == gpu->impl) { | ||
2014 | gpu->flags |= | ||
2015 | NVGPU_GPU_FLAGS_SUPPORT_CYCLE_STATS_SNAPSHOT; | ||
2016 | } | ||
2012 | } | 2017 | } |
2013 | 2018 | ||
2014 | gpu->gpc_mask = 1; | 2019 | gpu->gpc_mask = 1; |