From f9f82561cfbc0de14381a7fb099dca0c9c15d806 Mon Sep 17 00:00:00 2001 From: Deepak Nibade Date: Wed, 23 Sep 2020 17:49:48 +0530 Subject: [PATCH] gpu: nvgpu: check PMA stream reservation in get put API Check if PMA stream resource is reserved in nvgpu_prof_ioctl_pma_stream_update_get_put() before accessing PMA stream data. Bug 2510974 Jira NVGPU-5360 Change-Id: Id57cc74e1cd37a2eb12a36671011a18693af1219 Signed-off-by: Deepak Nibade Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2418521 Tested-by: mobile promotions Reviewed-by: mobile promotions --- drivers/gpu/nvgpu/os/linux/ioctl_prof.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/gpu/nvgpu/os/linux/ioctl_prof.c b/drivers/gpu/nvgpu/os/linux/ioctl_prof.c index 96f6fde13..ccc9f426a 100644 --- a/drivers/gpu/nvgpu/os/linux/ioctl_prof.c +++ b/drivers/gpu/nvgpu/os/linux/ioctl_prof.c @@ -665,6 +665,11 @@ static int nvgpu_prof_ioctl_pma_stream_update_get_put(struct nvgpu_profiler_obje "Update PMA stream request %u: flags = 0x%x bytes_consumed=%llu", prof->prof_handle, args->flags, args->bytes_consumed); + if (!prof->reserved[NVGPU_PROFILER_PM_RESOURCE_TYPE_PMA_STREAM]) { + nvgpu_err(g, "PMA stream resource not reserved"); + return -EINVAL; + } + err = nvgpu_perfbuf_update_get_put(prof->g, args->bytes_consumed, update_bytes_available ? &args->bytes_available : NULL, prof->pma_bytes_available_buffer_cpuva, wait,