Skip to content
Snippets Groups Projects
Commit d1bc8e95 authored by David Howells's avatar David Howells Committed by Linus Torvalds
Browse files

Add an ERR_CAST() function to complement ERR_PTR and co.


Add an ERR_CAST() function to complement ERR_PTR and co.  for the purposes
of casting an error entyped as one pointer type to an error of another
pointer type whilst making it explicit as to what is going on.

This provides a replacement for the ERR_PTR(PTR_ERR(p)) construct.

Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent ae5e2979
No related branches found
No related tags found
No related merge requests found
...@@ -34,6 +34,19 @@ static inline long IS_ERR(const void *ptr) ...@@ -34,6 +34,19 @@ static inline long IS_ERR(const void *ptr)
return IS_ERR_VALUE((unsigned long)ptr); return IS_ERR_VALUE((unsigned long)ptr);
} }
/**
* ERR_CAST - Explicitly cast an error-valued pointer to another pointer type
* @ptr: The pointer to cast.
*
* 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)
{
/* cast away the const */
return (void *) ptr;
}
#endif #endif
#endif /* _LINUX_ERR_H */ #endif /* _LINUX_ERR_H */
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment