diff options
Diffstat (limited to 'include/linux/notifier.h')
-rw-r--r-- | include/linux/notifier.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/linux/notifier.h b/include/linux/notifier.h index 7c3609622334..540703b555cb 100644 --- a/include/linux/notifier.h +++ b/include/linux/notifier.h | |||
@@ -164,7 +164,10 @@ extern int __srcu_notifier_call_chain(struct srcu_notifier_head *nh, | |||
164 | /* Encapsulate (negative) errno value (in particular, NOTIFY_BAD <=> EPERM). */ | 164 | /* Encapsulate (negative) errno value (in particular, NOTIFY_BAD <=> EPERM). */ |
165 | static inline int notifier_from_errno(int err) | 165 | static inline int notifier_from_errno(int err) |
166 | { | 166 | { |
167 | return NOTIFY_STOP_MASK | (NOTIFY_OK - err); | 167 | if (err) |
168 | return NOTIFY_STOP_MASK | (NOTIFY_OK - err); | ||
169 | |||
170 | return NOTIFY_OK; | ||
168 | } | 171 | } |
169 | 172 | ||
170 | /* Restore (negative) errno value from notify return value. */ | 173 | /* Restore (negative) errno value from notify return value. */ |