thermal/drivers/core: Use a char pointer for the cooling device name
authorDaniel Lezcano <daniel.lezcano@linaro.org>
Sun, 14 Mar 2021 11:13:29 +0000 (12:13 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Jun 2022 08:21:11 +0000 (10:21 +0200)
commitdcf5ffc91c91cf58c5f172e83daa34d5ea6b69fc
tree6075759a3c2d4c747c80badc67a4f213a5fd6330
parent79098339ac2065f4b4352ef5921628970b6f47e6
thermal/drivers/core: Use a char pointer for the cooling device name

[ Upstream commit 58483761810087e5ffdf36e84ac1bf26df909097 ]

We want to have any kind of name for the cooling devices as we do no
longer want to rely on auto-numbering. Let's replace the cooling
device's fixed array by a char pointer to be allocated dynamically
when registering the cooling device, so we don't limit the length of
the name.

Rework the error path at the same time as we have to rollback the
allocations in case of error.

Tested with a dummy device having the name:
 "Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch"

A village on the island of Anglesey (Wales), known to have the longest
name in Europe.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Tested-by: Ido Schimmel <idosch@nvidia.com>
Link: https://lore.kernel.org/r/20210314111333.16551-1-daniel.lezcano@linaro.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/mellanox/mlxsw/core_thermal.c
drivers/thermal/thermal_core.c
include/linux/thermal.h