UPSTREAM: thermal/netlink: Prevent userspace segmentation fault by adjusting UAPI header
The intel-lpmd tool [1], which uses the THERMAL_GENL_ATTR_CPU_CAPABILITY
attribute to receive HFI events from kernel space, encounters a
segmentation fault after commit 1773572863c4 ("thermal: netlink: Add the
commands and the events for the thresholds").
The issue arises because the THERMAL_GENL_ATTR_CPU_CAPABILITY raw value
was changed while intel_lpmd still uses the old value.
Although intel_lpmd can be updated to check the THERMAL_GENL_VERSION and
use the appropriate THERMAL_GENL_ATTR_CPU_CAPABILITY value, the commit
itself is questionable.
The commit introduced a new element in the middle of enum thermal_genl_attr,
which affects many existing attributes and introduces potential risks
and unnecessary maintenance burdens for userspace thermal netlink event
users.
Solve the issue by moving the newly introduced
THERMAL_GENL_ATTR_TZ_PREV_TEMP attribute to the end of the
enum thermal_genl_attr. This ensures that all existing thermal generic
netlink attributes remain unaffected.
Link: https://github.com/intel/intel-lpmd [1]
Fixes: 1773572863c4 ("thermal: netlink: Add the commands and the events for the thresholds")
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Reviewed-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://patch.msgid.link/20250208074907.5679-1-rui.zhang@intel.com
[ rjw: Subject edits ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Bug: 390217395
Change-Id: Id76894a2704301f526b65f3cc9e3fd542d29d5ab
(cherry picked from commit c195b9c6ab9c383d7aa3f4a65879b3ca90cb378b)
Signed-off-by: Manaf Meethalavalappu Pallikunhi <quic_manafm@quicinc.com>
This commit is contained in:
committed by
Treehugger Robot
parent
7a06b9d5eb
commit
71f8c61139
@@ -30,7 +30,6 @@ enum thermal_genl_attr {
|
||||
THERMAL_GENL_ATTR_TZ,
|
||||
THERMAL_GENL_ATTR_TZ_ID,
|
||||
THERMAL_GENL_ATTR_TZ_TEMP,
|
||||
THERMAL_GENL_ATTR_TZ_PREV_TEMP,
|
||||
THERMAL_GENL_ATTR_TZ_TRIP,
|
||||
THERMAL_GENL_ATTR_TZ_TRIP_ID,
|
||||
THERMAL_GENL_ATTR_TZ_TRIP_TYPE,
|
||||
@@ -54,6 +53,7 @@ enum thermal_genl_attr {
|
||||
THERMAL_GENL_ATTR_THRESHOLD,
|
||||
THERMAL_GENL_ATTR_THRESHOLD_TEMP,
|
||||
THERMAL_GENL_ATTR_THRESHOLD_DIRECTION,
|
||||
THERMAL_GENL_ATTR_TZ_PREV_TEMP,
|
||||
__THERMAL_GENL_ATTR_MAX,
|
||||
};
|
||||
#define THERMAL_GENL_ATTR_MAX (__THERMAL_GENL_ATTR_MAX - 1)
|
||||
|
||||
Reference in New Issue
Block a user