[PATCH 01/32] Add an ERR_CAST() macro to complement ERR_PTR and co. [try #2]
- From: David Howells <dhowells@xxxxxxxxxx>
- Date: Thu, 04 Oct 2007 16:56:07 +0100
Add an ERR_CAST() macro 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: David Howells <dhowells@xxxxxxxxxx>
---
include/linux/err.h | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/include/linux/err.h b/include/linux/err.h
index 1ab1d44..e810ca4 100644
--- a/include/linux/err.h
+++ b/include/linux/err.h
@@ -34,6 +34,18 @@ static inline long IS_ERR(const void *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)
+{
+ return (void *) ptr;
+}
+
#endif
#endif /* _LINUX_ERR_H */
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
- Follow-Ups:
- Re: [PATCH 01/32] Add an ERR_CAST() macro to complement ERR_PTR and co. [try #2]
- From: Randy Dunlap
- Re: [PATCH 01/32] Add an ERR_CAST() macro to complement ERR_PTR and co. [try #2]
- From: David Howells
- Re: [PATCH 01/32] Add an ERR_CAST() macro to complement ERR_PTR and co. [try #2]
- From: Christoph Hellwig
- Re: [PATCH 01/32] Add an ERR_CAST() macro to complement ERR_PTR and co. [try #2]
- References:
- [PATCH 00/32] Remove iget() and read_inode() [try #2]
- From: David Howells
- [PATCH 00/32] Remove iget() and read_inode() [try #2]
- Prev by Date: [PATCH 05/32] IGET: Use iget_failed() in GFS2 [try #2]
- Next by Date: Re: [BUG] kernel BUG at arch/i386/mm/highmem.c:15! on 2.6.23-rc8/rc9
- Previous by thread: [PATCH 05/32] IGET: Use iget_failed() in GFS2 [try #2]
- Next by thread: Re: [PATCH 01/32] Add an ERR_CAST() macro to complement ERR_PTR and co. [try #2]
- Index(es):
Relevant Pages
|