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
1 changed files with 4 additions and 2 deletions

View File

@ -657,7 +657,9 @@ out:
* @file: pointer to file structure * @file: pointer to file structure
* @band: band bitmap * @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) 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; struct mei_cl *cl = file->private_data;
if (!mei_cl_is_connected(cl)) if (!mei_cl_is_connected(cl))
return POLLERR; return -ENODEV;
return fasync_helper(fd, file, band, &cl->ev_async); return fasync_helper(fd, file, band, &cl->ev_async);
} }