mei: fix fasync return value on error

fasync should return a negative value on error
and not poll mask POLLERR.

Cc: <stable@vger.kernel.org> # 4.3+
Cc: Al Viro <viro@ZenIV.linux.org.uk>
Reported-by: Al Viro <viro@ZenIV.linux.org.uk>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Tomas Winkler 2016-01-07 14:46:38 +02:00 committed by Greg Kroah-Hartman
parent e0a7f1f04c
commit ed6dc538e5

View file

@ -657,7 +657,9 @@ static unsigned int mei_poll(struct file *file, poll_table *wait)
* @file: pointer to file structure
* @band: band bitmap
*
* Return: poll mask
* Return: negative on error,
* 0 if it did no changes,
* and positive a process was added or deleted
*/
static int mei_fasync(int fd, struct file *file, int band)
{
@ -665,7 +667,7 @@ static int mei_fasync(int fd, struct file *file, int band)
struct mei_cl *cl = file->private_data;
if (!mei_cl_is_connected(cl))
return POLLERR;
return -ENODEV;
return fasync_helper(fd, file, band, &cl->ev_async);
}