tree bb7c8d9668b35a3aa4e90d0a62500ac9d3e67f7f
parent 76398425bb06b07cc3a3b1ce169c67dc9d6874ed
author Jonathan Corbet <corbet@lwn.net> 1233525176 -0700
committer Jonathan Corbet <corbet@lwn.net> 1237214075 -0600

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>
