Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0a06f599 authored by Dmitry Osipenko's avatar Dmitry Osipenko Committed by Greg Kroah-Hartman
Browse files

PM / devfreq: tegra30: Fix integer overflow on CPU's freq max out



[ Upstream commit 53b4b2aeee26f42cde5ff2a16dd0d8590c51a55a ]

There is another kHz-conversion bug in the code, resulting in integer
overflow. Although, this time the resulting value is 4294966296 and it's
close to ULONG_MAX, which is okay in this case.

Reviewed-by: default avatarChanwoo Choi <cw00.choi@samsung.com>
Tested-by: default avatarPeter Geis <pgwipeout@gmail.com>
Signed-off-by: default avatarDmitry Osipenko <digetx@gmail.com>
Signed-off-by: default avatarChanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent b11dcb6c
Loading
Loading
Loading
Loading
+3 −1
Original line number Original line Diff line number Diff line
@@ -79,6 +79,8 @@


#define KHZ							1000
#define KHZ							1000


#define KHZ_MAX						(ULONG_MAX / KHZ)

/* Assume that the bus is saturated if the utilization is 25% */
/* Assume that the bus is saturated if the utilization is 25% */
#define BUS_SATURATION_RATIO					25
#define BUS_SATURATION_RATIO					25


@@ -179,7 +181,7 @@ struct tegra_actmon_emc_ratio {
};
};


static struct tegra_actmon_emc_ratio actmon_emc_ratios[] = {
static struct tegra_actmon_emc_ratio actmon_emc_ratios[] = {
	{ 1400000, ULONG_MAX },
	{ 1400000,    KHZ_MAX },
	{ 1200000,    750000 },
	{ 1200000,    750000 },
	{ 1100000,    600000 },
	{ 1100000,    600000 },
	{ 1000000,    500000 },
	{ 1000000,    500000 },