platform/chrome: Fix locking pattern in wilco_ec_mailbox()
Before, ec->data_buffer could be written to from multiple
contexts at the same time. Since the ec is shared data,
it needs to be inside the mutex as well.
Fixes: 7b3d4f44ab
("platform/chrome: Add new driver for Wilco EC")
Signed-off-by: Nick Crews <ncrews@chromium.org>
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Signed-off-by: Benson Leung <bleung@chromium.org>
This commit is contained in:
parent
2794449576
commit
6f8f89ce1e
|
@ -223,11 +223,11 @@ int wilco_ec_mailbox(struct wilco_ec_device *ec, struct wilco_ec_message *msg)
|
|||
msg->command, msg->type, msg->flags, msg->response_size,
|
||||
msg->request_size);
|
||||
|
||||
mutex_lock(&ec->mailbox_lock);
|
||||
/* Prepare request packet */
|
||||
rq = ec->data_buffer;
|
||||
wilco_ec_prepare(msg, rq);
|
||||
|
||||
mutex_lock(&ec->mailbox_lock);
|
||||
ret = wilco_ec_transfer(ec, msg, rq);
|
||||
mutex_unlock(&ec->mailbox_lock);
|
||||
|
||||
|
|
Loading…
Reference in New Issue