gpu: nvgpu: add check for is_railgated

When try to read '/sys/kernel/debug/gpu.0/railgate_residency'
debug fs node, NULL pointer access error can be happened if
is_railgated function is not assinged.
Add check for is_railgated before calling the function pointer.

Bug 200773027

Change-Id: I914b5b0aa48ccb15affe79510b696ebc91129f67
Signed-off-by: Aditya Gupta <adigupta@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2596320
(cherry picked from commit e649029c7bed3c7afbd454d7e94f9173377f4c64)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2614156
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Rohit Upadhyay <rupadhyay@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
This commit is contained in:
Alvin Park
2020-12-15 10:34:44 +09:00
committed by mobile promotions
parent 725a5eaa80
commit 4d17d8b104

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2017-2020 NVIDIA Corporation. All rights reserved. * Copyright (C) 2017-2021 NVIDIA Corporation. All rights reserved.
* *
* This software is licensed under the terms of the GNU General Public * This software is licensed under the terms of the GNU General Public
* License version 2, as published by the Free Software Foundation, and * License version 2, as published by the Free Software Foundation, and
@@ -224,7 +224,7 @@ static int railgate_residency_show(struct seq_file *s, void *data)
unsigned long total_rail_gate_time_ms; unsigned long total_rail_gate_time_ms;
unsigned long total_rail_ungate_time_ms; unsigned long total_rail_ungate_time_ms;
if (platform->is_railgated && platform->is_railgated(dev_from_gk20a(g))) { if (platform && platform->is_railgated && platform->is_railgated(dev_from_gk20a(g))) {
time_since_last_state_transition_ms = time_since_last_state_transition_ms =
jiffies_to_msecs(jiffies - jiffies_to_msecs(jiffies -
g->pstats.last_rail_gate_complete); g->pstats.last_rail_gate_complete);