mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 02:22:34 +03:00
gpu: nvgpu: abstract submit profiling
Add gk20a_fifo_profile_snapshot() to store the submit time in a profiling entry that was acquired from gk20a_fifo_profile_acquire(). Also get rid of ifdef CONFIG_DEBUG_FS by stubbing the acquire and free functions when debugfs is not enabled. This reduces some cyclomatic complexity in the submit path. Jira NVGPU-708 Change-Id: I39829a6475cfe3aa582620219e420bde62228e52 Signed-off-by: Konsta Holtta <kholtta@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1729545 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
45d0a9c711
commit
cae514120b
@@ -780,12 +780,9 @@ static int gk20a_ioctl_channel_submit_gpfifo(
|
||||
int ret = 0;
|
||||
nvgpu_log_fn(g, " ");
|
||||
|
||||
#ifdef CONFIG_DEBUG_FS
|
||||
profile = gk20a_fifo_profile_acquire(ch->g);
|
||||
gk20a_fifo_profile_snapshot(profile, PROFILE_IOCTL_ENTRY);
|
||||
|
||||
if (profile)
|
||||
profile->timestamp[PROFILE_IOCTL_ENTRY] = nvgpu_current_time_ns();
|
||||
#endif
|
||||
if (ch->has_timedout)
|
||||
return -ETIMEDOUT;
|
||||
|
||||
@@ -825,12 +822,11 @@ static int gk20a_ioctl_channel_submit_gpfifo(
|
||||
}
|
||||
}
|
||||
gk20a_fence_put(fence_out);
|
||||
#ifdef CONFIG_DEBUG_FS
|
||||
if (profile) {
|
||||
profile->timestamp[PROFILE_IOCTL_EXIT] = nvgpu_current_time_ns();
|
||||
|
||||
gk20a_fifo_profile_snapshot(profile, PROFILE_IOCTL_EXIT);
|
||||
if (profile)
|
||||
gk20a_fifo_profile_release(ch->g, profile);
|
||||
}
|
||||
#endif
|
||||
|
||||
clean_up:
|
||||
return ret;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user