linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] thermal: Use symbolic constant for UUID prefix comparison
@ 2025-10-30  3:59 Kaushlendra Kumar
  2025-11-12 20:07 ` Rafael J. Wysocki
  0 siblings, 1 reply; 2+ messages in thread
From: Kaushlendra Kumar @ 2025-10-30  3:59 UTC (permalink / raw)
  To: rafael, rui.zhang, srinivas.pandruvada, daniel.lezcano
  Cc: linux-pm, Kaushlendra Kumar

Replace sizeof() with a symbolic constant for UUID matching to maintain
existing ABI behavior while improving code clarity. The current behavior
of comparing only the first 7 characters is sufficient to distinguish
all UUIDs and changing to full string comparison would alter the kernel
ABI, potentially breaking existing userspace applications.

Use a defined constant to make the truncated comparison explicit and
maintainable.

Signed-off-by: Kaushlendra Kumar <kaushlendra.kumar@intel.com>
---
Changes in v2:
- Use symbolic constant instead of strlen() to maintain existing ABI
  behavior as review feedback

 drivers/thermal/intel/int340x_thermal/int3400_thermal.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/thermal/intel/int340x_thermal/int3400_thermal.c b/drivers/thermal/intel/int340x_thermal/int3400_thermal.c
index 908cc1bf57f1..128556632685 100644
--- a/drivers/thermal/intel/int340x_thermal/int3400_thermal.c
+++ b/drivers/thermal/intel/int340x_thermal/int3400_thermal.c
@@ -16,6 +16,8 @@
 #define INT3400_ODVP_CHANGED 0x88
 #define INT3400_KEEP_ALIVE 0xA0
 #define INT3400_FAKE_TEMP (20 * 1000) /* faked temp sensor with 20C */
+/* UUID prefix length for comparison - sufficient for all UUIDs */
+#define INT3400_UUID_PREFIX_LEN 7
 
 enum int3400_thermal_uuid {
 	INT3400_THERMAL_ACTIVE = 0,
@@ -199,7 +201,7 @@ static ssize_t current_uuid_store(struct device *dev,
 
 	for (i = 0; i < INT3400_THERMAL_MAXIMUM_UUID; ++i) {
 		if (!strncmp(buf, int3400_thermal_uuids[i],
-			     sizeof(int3400_thermal_uuids[i]) - 1)) {
+			     INT3400_UUID_PREFIX_LEN)) {
 			/*
 			 * If we have a list of supported UUIDs, make sure
 			 * this one is supported.
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v2] thermal: Use symbolic constant for UUID prefix comparison
  2025-10-30  3:59 [PATCH v2] thermal: Use symbolic constant for UUID prefix comparison Kaushlendra Kumar
@ 2025-11-12 20:07 ` Rafael J. Wysocki
  0 siblings, 0 replies; 2+ messages in thread
From: Rafael J. Wysocki @ 2025-11-12 20:07 UTC (permalink / raw)
  To: Kaushlendra Kumar
  Cc: rafael, rui.zhang, srinivas.pandruvada, daniel.lezcano, linux-pm

On Thu, Oct 30, 2025 at 5:02 AM Kaushlendra Kumar
<kaushlendra.kumar@intel.com> wrote:
>
> Replace sizeof() with a symbolic constant for UUID matching to maintain
> existing ABI behavior while improving code clarity. The current behavior
> of comparing only the first 7 characters is sufficient to distinguish
> all UUIDs and changing to full string comparison would alter the kernel
> ABI, potentially breaking existing userspace applications.
>
> Use a defined constant to make the truncated comparison explicit and
> maintainable.
>
> Signed-off-by: Kaushlendra Kumar <kaushlendra.kumar@intel.com>
> ---
> Changes in v2:
> - Use symbolic constant instead of strlen() to maintain existing ABI
>   behavior as review feedback
>
>  drivers/thermal/intel/int340x_thermal/int3400_thermal.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/thermal/intel/int340x_thermal/int3400_thermal.c b/drivers/thermal/intel/int340x_thermal/int3400_thermal.c
> index 908cc1bf57f1..128556632685 100644
> --- a/drivers/thermal/intel/int340x_thermal/int3400_thermal.c
> +++ b/drivers/thermal/intel/int340x_thermal/int3400_thermal.c
> @@ -16,6 +16,8 @@
>  #define INT3400_ODVP_CHANGED 0x88
>  #define INT3400_KEEP_ALIVE 0xA0
>  #define INT3400_FAKE_TEMP (20 * 1000) /* faked temp sensor with 20C */
> +/* UUID prefix length for comparison - sufficient for all UUIDs */
> +#define INT3400_UUID_PREFIX_LEN 7
>
>  enum int3400_thermal_uuid {
>         INT3400_THERMAL_ACTIVE = 0,
> @@ -199,7 +201,7 @@ static ssize_t current_uuid_store(struct device *dev,
>
>         for (i = 0; i < INT3400_THERMAL_MAXIMUM_UUID; ++i) {
>                 if (!strncmp(buf, int3400_thermal_uuids[i],
> -                            sizeof(int3400_thermal_uuids[i]) - 1)) {
> +                            INT3400_UUID_PREFIX_LEN)) {
>                         /*
>                          * If we have a list of supported UUIDs, make sure
>                          * this one is supported.
> --

Applied as 6.19 material, thanks!

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-11-12 20:07 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-30  3:59 [PATCH v2] thermal: Use symbolic constant for UUID prefix comparison Kaushlendra Kumar
2025-11-12 20:07 ` Rafael J. Wysocki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).