video: tegra: nvmap: Add support for Serial Id feature

Add support for Serial Id feature which will be used by Nsight for
buffer tracking purpose. This feature expects a unique serial id per
buffer even if it is shared across multiple client processes.
Add following code:
- Create a new global counter field for serial id in nvmap device.
Initialize it to 0 when nvmap device is initialized.
- Introduce a new field for serial_id in nvmap_handle struct.
- When nvmap_handle is created, assign it's serial_id field with global
counter's value, and increment global counter.
- During NvRmMemQueryHandleParameters return this serial_id associated
with the handle.
- Do not decrement counter for serial_id even after freeing the handle.

Bug 4138373

Change-Id: Ic1fe22b082eefb352986f8fa44d4c38d186a366f
Signed-off-by: Ketan Patil <ketanp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2918510
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Ketan Patil
2023-06-09 08:48:17 +00:00
committed by mobile promotions
parent 5c4d5e62a0
commit 01db38f08e
5 changed files with 11 additions and 0 deletions

View File

@@ -1414,6 +1414,7 @@ int __init nvmap_probe(struct platform_device *pdev)
dev->dev_user.fops = &nvmap_user_fops;
dev->dev_user.parent = &pdev->dev;
dev->handles = RB_ROOT;
dev->serial_id_counter = 0;
#ifdef NVMAP_CONFIG_PAGE_POOLS
e = nvmap_page_pool_init(dev);