From e47103b1af5df52fa69e18b14d3012472f78817d Mon Sep 17 00:00:00 2001 From: Jani Nikula Date: Mon, 24 May 2010 14:33:00 -0700 Subject: [PATCH] err.h: add __must_check to error pointer handlers Add __must_check to error pointer handlers to have the compiler warn about mistakes like: if (err) ERR_PTR(err); It found two bugs: Mar 12 Nikula Jani [PATCH] enclosure: fix error path - actually return ERR_PTR() on error Mar 12 Nikula Jani [PATCH] sunrpc: fix error path - actually return ERR_PTR() on error Signed-off-by: Jani Nikula Cc: Phil Carmody Cc: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- include/linux/err.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/err.h b/include/linux/err.h index 1b12642636c7..448afc12c78a 100644 --- a/include/linux/err.h +++ b/include/linux/err.h @@ -19,22 +19,22 @@ #define IS_ERR_VALUE(x) unlikely((x) >= (unsigned long)-MAX_ERRNO) -static inline void *ERR_PTR(long error) +static inline void * __must_check ERR_PTR(long error) { return (void *) error; } -static inline long PTR_ERR(const void *ptr) +static inline long __must_check PTR_ERR(const void *ptr) { return (long) ptr; } -static inline long IS_ERR(const void *ptr) +static inline long __must_check IS_ERR(const void *ptr) { return IS_ERR_VALUE((unsigned long)ptr); } -static inline long IS_ERR_OR_NULL(const void *ptr) +static inline long __must_check IS_ERR_OR_NULL(const void *ptr) { return !ptr || IS_ERR_VALUE((unsigned long)ptr); } @@ -46,7 +46,7 @@ static inline long IS_ERR_OR_NULL(const void *ptr) * Explicitly cast an error-valued pointer to another pointer type in such a * way as to make it clear that's what's going on. */ -static inline void *ERR_CAST(const void *ptr) +static inline void * __must_check ERR_CAST(const void *ptr) { /* cast away the const */ return (void *) ptr; -- 2.20.1