When copying an event to userspace failed, the event queue
lock was never released. This fixes that.

Reported-by: Dan Carpenter <[email protected]>
Signed-off-by: Nick Crews <[email protected]>
---
 drivers/platform/chrome/wilco_ec/event.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/platform/chrome/wilco_ec/event.c 
b/drivers/platform/chrome/wilco_ec/event.c
index 4d2776f77dbd..1eed55681598 100644
--- a/drivers/platform/chrome/wilco_ec/event.c
+++ b/drivers/platform/chrome/wilco_ec/event.c
@@ -342,7 +342,7 @@ static ssize_t event_read(struct file *filp, char __user 
*buf, size_t count,
                                 struct ec_event_entry, list);
        n_bytes_written = entry->size;
        if (copy_to_user(buf, &entry->event, n_bytes_written))
-               return -EFAULT;
+               n_bytes_written = -EFAULT;
        list_del(&entry->list);
        kfree(entry);
        dev_data->num_events--;
-- 
2.20.1

Reply via email to