From: Alexander Usyskin Date: Tue, 6 Nov 2018 10:04:40 +0000 (+0200) Subject: mei: expedite ioctl return on the notify set operation error X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=a19bf05359e6c5249766cbbf2937ef83fc9001f9;p=linux.git mei: expedite ioctl return on the notify set operation error The notify set operation ioctl will wait till timeout is expired even in case when the FW returned an error. Check the status field of the client object in wait_event_timeout() to determine if the caller can return earlier. 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 ee58561ceb08b..1fe9426ce48be 100644 --- a/drivers/misc/mei/client.c +++ b/drivers/misc/mei/client.c @@ -1357,7 +1357,9 @@ int mei_cl_notify_request(struct mei_cl *cl, mutex_unlock(&dev->device_lock); wait_event_timeout(cl->wait, - cl->notify_en == request || !mei_cl_is_connected(cl), + cl->notify_en == request || + cl->status || + !mei_cl_is_connected(cl), mei_secs_to_jiffies(MEI_CL_CONNECT_TIMEOUT)); mutex_lock(&dev->device_lock);