]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
platform/x86: ISST: Correct command storage data length
authorSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Fri, 28 Mar 2025 22:47:49 +0000 (15:47 -0700)
committerIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Tue, 1 Apr 2025 11:20:53 +0000 (14:20 +0300)
After resume/online turbo limit ratio (TRL) is restored partially if
the admin explicitly changed TRL from user space.

A hash table is used to store SST mail box and MSR settings when modified
to restore those settings after resume or online. This uses a struct
isst_cmd field "data" to store these settings. This is a 64 bit field.
But isst_store_new_cmd() is only assigning as u32. This results in
truncation of 32 bits.

Change the argument to u64 from u32.

Fixes: f607874f35cb ("platform/x86: ISST: Restore state on resume")
Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250328224749.2691272-1-srinivas.pandruvada@linux.intel.com
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
drivers/platform/x86/intel/speed_select_if/isst_if_common.c

index dbcd3087aaa4b08aef3e42295bfcd37707e6abd9..31239a93dd71bd6ebfb23a185f68a6269303c8e4 100644 (file)
@@ -84,7 +84,7 @@ static DECLARE_HASHTABLE(isst_hash, 8);
 static DEFINE_MUTEX(isst_hash_lock);
 
 static int isst_store_new_cmd(int cmd, u32 cpu, int mbox_cmd_type, u32 param,
-                             u32 data)
+                             u64 data)
 {
        struct isst_cmd *sst_cmd;