summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/common/linux/platform_gp10b_tegra.h
diff options
context:
space:
mode:
authorDavid Nieto <dmartineznie@nvidia.com>2017-12-18 20:10:19 -0500
committermobile promotions <svcmobile_promotions@nvidia.com>2017-12-28 13:01:36 -0500
commit8fb6a8562ec033d2d1319f91377cd1782f593979 (patch)
tree07b7fe61cd9763ddf5cee2934994841fa330b90a /drivers/gpu/nvgpu/common/linux/platform_gp10b_tegra.h
parentf19f22fcc8ef21b363b873c499cbd2e690af29f8 (diff)
gpu: nvgpu: gv11b: Report LTC errors per slice
Add support to report ltc ecc errors per slice (1) use new logic to detect subunits (2) store size of array and check before comparison to prevent out of bounds derefencing (3) use new hashing to prevent collisions or entries with permuted names bug 2037425 Change-Id: I63b9f0df43b9dceddc1bae17924c4723072f569e Signed-off-by: David Nieto <dmartineznie@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1620854 GVS: Gerrit_Virtual_Submit Reviewed-by: Chris Dragan <kdragan@nvidia.com> Tested-by: Chris Dragan <kdragan@nvidia.com> Reviewed-by: Nirav Patel <nipatel@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/common/linux/platform_gp10b_tegra.h')
-rw-r--r--drivers/gpu/nvgpu/common/linux/platform_gp10b_tegra.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/common/linux/platform_gp10b_tegra.h b/drivers/gpu/nvgpu/common/linux/platform_gp10b_tegra.h
index 74db60d1..05832e87 100644
--- a/drivers/gpu/nvgpu/common/linux/platform_gp10b_tegra.h
+++ b/drivers/gpu/nvgpu/common/linux/platform_gp10b_tegra.h
@@ -25,11 +25,13 @@ int gr_gp10b_ecc_stat_create(struct device *dev,
25 struct gk20a_ecc_stat *ecc_stat, 25 struct gk20a_ecc_stat *ecc_stat,
26 struct device_attribute **dev_attr_array); 26 struct device_attribute **dev_attr_array);
27int gp10b_ecc_stat_create(struct device *dev, 27int gp10b_ecc_stat_create(struct device *dev,
28 int hw_units, 28 int num_hw_units,
29 int num_subunits,
29 char *ecc_unit_name, 30 char *ecc_unit_name,
31 char *ecc_subunit_name,
30 char *ecc_stat_name, 32 char *ecc_stat_name,
31 struct gk20a_ecc_stat *ecc_stat, 33 struct gk20a_ecc_stat *ecc_stat,
32 struct device_attribute **dev_attr_array); 34 struct device_attribute **__dev_attr_array);
33 35
34void gr_gp10b_ecc_stat_remove(struct device *dev, 36void gr_gp10b_ecc_stat_remove(struct device *dev,
35 int is_l2, 37 int is_l2,