From: Alexander Usyskin Date: Thu, 17 Jul 2014 07:53:34 +0000 (+0300) Subject: mei: reset client connection state on timeout X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=3e37ebb7183f0c4eb92a88c60657ac319c01b3e9;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git mei: reset client connection state on timeout On connection timeout we leave the connecting client in connecting state. Since a new connection is stalled till previous connection is completed in this case no new connection is possible till the user space does release the file handle. Therefore on timeout we move the client to disconnected state. Cc: stable@vger.kernel.org # 3.15+ Signed-off-by: Alexander Usyskin Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/misc/mei/client.c b/drivers/misc/mei/client.c index 59d20c599b16..9f8ab28bcb60 100644 --- a/drivers/misc/mei/client.c +++ b/drivers/misc/mei/client.c @@ -616,6 +616,7 @@ int mei_cl_connect(struct mei_cl *cl, struct file *file) mutex_lock(&dev->device_lock); if (cl->state != MEI_FILE_CONNECTED) { + cl->state = MEI_FILE_DISCONNECTED; /* something went really wrong */ if (!cl->status) cl->status = -EFAULT;