gpu: nvgpu: report number of syncpoints in nvgpu_as_get_sync_ro_map_arg

Add reporting for the number of syncpoints when mapping the RO
shim. This allows the userspace to perform boundary condition checks
when computing the GPU VA for a syncpoint.

JIRA GCSS-1579

Change-Id: Ia6c9eee917d2c1e08f9905701e03f2b09e01ba60
Signed-off-by: Sami Kiminki <skiminki@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2533981
Reviewed-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-by: Lakshmanan M <lm@nvidia.com>
Reviewed-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
This commit is contained in:
Sami Kiminki
2021-05-24 16:49:36 +03:00
committed by mobile promotions
parent 8834275906
commit 5f6ff29aea
8 changed files with 25 additions and 10 deletions

View File

@@ -341,6 +341,7 @@ int test_sync_get_ro_map(struct unit_module *m, struct gk20a *g, void *args)
{
u64 base_gpuva = 0U;
u32 sync_size = 0U;
u32 num_syncpoints = 0U;
u32 branches;
int err = 0;
@@ -366,7 +367,7 @@ int test_sync_get_ro_map(struct unit_module *m, struct gk20a *g, void *args)
unit_info(m, "%s branch: %s\n", __func__, f_sync_get_ro_map[branches]);
err = g->ops.sync.syncpt.get_sync_ro_map(ch->vm,
&base_gpuva, &sync_size);
&base_gpuva, &sync_size, &num_syncpoints);
if (branches < F_SYNC_GET_RO_MAP_FAIL) {
if(err != 0) {