Unverified Commit 816fbd5d authored by Derek J. Clark's avatar Derek J. Clark Committed by Ilpo Järvinen
Browse files

platform/x86: lenovo-wmi-other: Zero initialize WMI arguments



Adds explicit initialization of wmi_method_args_32 declarations with
zero values to prevent uninitialized data from being sent to the device
BIOS when passed.

No functional change intended.

Reviewed-by: default avatarMark Pearson <mpearson-lenovo@squebb.ca>
Fixes: 22024ac5 ("platform/x86: Add Lenovo Gamezone WMI Driver")
Fixes: edc4b183 ("platform/x86: Add Lenovo Other Mode WMI Driver")
Reported-by: default avatarRong Zhang <i@rong.moe>
Closes: https://lore.kernel.org/platform-driver-x86/95c7e7b539dd0af41189c754fcd35cec5b6fe182.camel@rong.moe/


Cc: stable@vger.kernel.org
Reviewed-by: default avatarRong Zhang <i@rong.moe>
Tested-by: default avatarRong Zhang <i@rong.moe>
Signed-off-by: default avatarDerek J. Clark <derekjohn.clark@gmail.com>
Link: https://patch.msgid.link/20260510042546.436874-5-derekjohn.clark@gmail.com


Reviewed-by: default avatarIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: default avatarIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
parent 2fe2504a
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -201,7 +201,7 @@ static int lwmi_gz_profile_set(struct device *dev,
			       enum platform_profile_option profile)
{
	struct lwmi_gz_priv *priv = dev_get_drvdata(dev);
	struct wmi_method_args_32 args;
	struct wmi_method_args_32 args = {};
	enum thermal_mode mode;
	int ret;

+3 −3
Original line number Diff line number Diff line
@@ -166,7 +166,7 @@ MODULE_PARM_DESC(relax_fan_constraint,
 */
static int lwmi_om_fan_get_set(struct lwmi_om_priv *priv, int channel, u32 *val, bool set)
{
	struct wmi_method_args_32 args;
	struct wmi_method_args_32 args = {};
	u32 method_id, retval;
	int err;

@@ -775,7 +775,7 @@ static ssize_t attr_current_value_store(struct kobject *kobj,
					struct tunable_attr_01 *tunable_attr)
{
	struct lwmi_om_priv *priv = dev_get_drvdata(tunable_attr->dev);
	struct wmi_method_args_32 args;
	struct wmi_method_args_32 args = {};
	struct capdata01 capdata;
	enum thermal_mode mode;
	u32 attribute_id;
@@ -838,7 +838,7 @@ static ssize_t attr_current_value_show(struct kobject *kobj,
				       struct tunable_attr_01 *tunable_attr)
{
	struct lwmi_om_priv *priv = dev_get_drvdata(tunable_attr->dev);
	struct wmi_method_args_32 args;
	struct wmi_method_args_32 args = {};
	enum thermal_mode mode;
	u32 attribute_id;
	int retval;