From 73b44f40c63bebcce9d66c4072878ecaceb43dda Mon Sep 17 00:00:00 2001 From: Shawn Nematbakhsh Date: Thu, 16 Feb 2017 09:49:29 -0800 Subject: cros_ec_debugfs: Pass proper struct sizes to cros_ec_cmd_xfer() We should output or receive every byte in the param / reply struct, unrelated to the pointer size. Signed-off-by: Shawn Nematbakhsh Reviewed-by: Gwendal Grignou [bleung: Picked from crosreview.com/444085 for cros_ec_debugfs.c only. cros_ec.c upstream had a different cros_ec_sleep_event which didn't have the sizeof issue] Signed-off-by: Benson Leung --- drivers/platform/chrome/cros_ec_debugfs.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/platform/chrome/cros_ec_debugfs.c b/drivers/platform/chrome/cros_ec_debugfs.c index 225f93631051..c4150871b8ed 100644 --- a/drivers/platform/chrome/cros_ec_debugfs.c +++ b/drivers/platform/chrome/cros_ec_debugfs.c @@ -227,14 +227,14 @@ static int ec_read_version_supported(struct cros_ec_dev *ec) struct cros_ec_command *msg; - msg = kzalloc(sizeof(*msg) + max(sizeof(params), sizeof(response)), + msg = kzalloc(sizeof(*msg) + max(sizeof(*params), sizeof(*response)), GFP_KERNEL); if (!msg) return 0; msg->command = EC_CMD_GET_CMD_VERSIONS + ec->cmd_offset; - msg->outsize = sizeof(params); - msg->insize = sizeof(response); + msg->outsize = sizeof(*params); + msg->insize = sizeof(*response); params = (struct ec_params_get_cmd_versions_v1 *)msg->data; params->cmd = EC_CMD_CONSOLE_READ; -- cgit v1.2.3