Rationalize fasync return values
Most fasync implementations do something like: return fasync_helper(...); But fasync_helper() will return a positive value at times - a feature used in at least one place. Thus, a number of other drivers do: err = fasync_helper(...); if (err < 0) return err; return 0; In the interests of consistency and more concise code, it makes sense to map positive return values onto zero where ->fasync() is called. Cc: Al Viro <viro@ZenIV.linux.org.uk> Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Esse commit está contido em:
@@ -94,11 +94,8 @@ static void evdev_event(struct input_handle *handle,
|
||||
static int evdev_fasync(int fd, struct file *file, int on)
|
||||
{
|
||||
struct evdev_client *client = file->private_data;
|
||||
int retval;
|
||||
|
||||
retval = fasync_helper(fd, file, on, &client->fasync);
|
||||
|
||||
return retval < 0 ? retval : 0;
|
||||
return fasync_helper(fd, file, on, &client->fasync);
|
||||
}
|
||||
|
||||
static int evdev_flush(struct file *file, fl_owner_t id)
|
||||
|
@@ -159,12 +159,9 @@ static void joydev_event(struct input_handle *handle,
|
||||
|
||||
static int joydev_fasync(int fd, struct file *file, int on)
|
||||
{
|
||||
int retval;
|
||||
struct joydev_client *client = file->private_data;
|
||||
|
||||
retval = fasync_helper(fd, file, on, &client->fasync);
|
||||
|
||||
return retval < 0 ? retval : 0;
|
||||
return fasync_helper(fd, file, on, &client->fasync);
|
||||
}
|
||||
|
||||
static void joydev_free(struct device *dev)
|
||||
|
@@ -403,12 +403,9 @@ static void mousedev_event(struct input_handle *handle,
|
||||
|
||||
static int mousedev_fasync(int fd, struct file *file, int on)
|
||||
{
|
||||
int retval;
|
||||
struct mousedev_client *client = file->private_data;
|
||||
|
||||
retval = fasync_helper(fd, file, on, &client->fasync);
|
||||
|
||||
return retval < 0 ? retval : 0;
|
||||
return fasync_helper(fd, file, on, &client->fasync);
|
||||
}
|
||||
|
||||
static void mousedev_free(struct device *dev)
|
||||
|
@@ -58,10 +58,8 @@ static unsigned int serio_raw_no;
|
||||
static int serio_raw_fasync(int fd, struct file *file, int on)
|
||||
{
|
||||
struct serio_raw_list *list = file->private_data;
|
||||
int retval;
|
||||
|
||||
retval = fasync_helper(fd, file, on, &list->fasync);
|
||||
return retval < 0 ? retval : 0;
|
||||
return fasync_helper(fd, file, on, &list->fasync);
|
||||
}
|
||||
|
||||
static struct serio_raw *serio_raw_locate(int minor)
|
||||
|
Referência em uma nova issue
Block a user