Commit 414fe8b0 authored by Aric Cyr's avatar Aric Cyr Committed by sanglipeng1
Browse files

drm/amd/display: Fix nanosec stat overflow

stable inclusion
from stable-v5.10.215
commit 0b5668a87caa6e5a98c78168fb0d9f02f6b7794f
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/IAJJ2D

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=0b5668a87caa6e5a98c78168fb0d9f02f6b7794f



--------------------------------

[ Upstream commit 14d68acfd04b39f34eea7bea65dda652e6db5bf6 ]

[Why]
Nanosec stats can overflow on long running systems potentially causing
statistic logging issues.

[How]
Use 64bit types for nanosec stats to ensure no overflow.

Reviewed-by: default avatarRodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: default avatarAric Cyr <aric.cyr@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
Signed-off-by: default avatarsanglipeng1 <sanglipeng1@jd.com>
parent bf245129
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -57,10 +57,10 @@ void mod_stats_update_event(struct mod_stats *mod_stats,
		unsigned int length);

void mod_stats_update_flip(struct mod_stats *mod_stats,
		unsigned long timestamp_in_ns);
		unsigned long long timestamp_in_ns);

void mod_stats_update_vupdate(struct mod_stats *mod_stats,
		unsigned long timestamp_in_ns);
		unsigned long long timestamp_in_ns);

void mod_stats_update_freesync(struct mod_stats *mod_stats,
		unsigned int v_total_min,