svn commit: r368738 - head/sys/compat/linuxkpi/common/include/linux

John Baldwin jhb at FreeBSD.org
Thu Dec 17 20:28:54 UTC 2020


Author: jhb
Date: Thu Dec 17 20:28:53 2020
New Revision: 368738
URL: https://svnweb.freebsd.org/changeset/base/368738

Log:
  Cleanups to *ERR* compat shims.
  
  - Use [u]intptr_t casts to convert pointers to integers.
  
  - Change IS_ERR* to return bool instead of long.
  
  Reviewed by:	manu
  Obtained from:	CheriBSD
  Sponsored by:	DARPA
  Differential Revision:	https://reviews.freebsd.org/D27577

Modified:
  head/sys/compat/linuxkpi/common/include/linux/err.h

Modified: head/sys/compat/linuxkpi/common/include/linux/err.h
==============================================================================
--- head/sys/compat/linuxkpi/common/include/linux/err.h	Thu Dec 17 20:11:31 2020	(r368737)
+++ head/sys/compat/linuxkpi/common/include/linux/err.h	Thu Dec 17 20:28:53 2020	(r368738)
@@ -37,30 +37,30 @@
 
 #define MAX_ERRNO	4095
 
-#define IS_ERR_VALUE(x) unlikely((x) >= (unsigned long)-MAX_ERRNO)
+#define IS_ERR_VALUE(x) unlikely((x) >= (uintptr_t)-MAX_ERRNO)
 
 static inline void *
 ERR_PTR(long error)
 {
-	return (void *)error;
+	return (void *)(intptr_t)error;
 }
 
 static inline long
 PTR_ERR(const void *ptr)
 {
-	return (long)ptr;
+	return (intptr_t)ptr;
 }
 
-static inline long
+static inline bool
 IS_ERR(const void *ptr)
 {
-	return IS_ERR_VALUE((unsigned long)ptr);
+	return IS_ERR_VALUE((uintptr_t)ptr);
 }
 
-static inline long
+static inline bool
 IS_ERR_OR_NULL(const void *ptr)
 {
-	return !ptr || IS_ERR_VALUE((unsigned long)ptr);
+	return !ptr || IS_ERR_VALUE((uintptr_t)ptr);
 }
 
 static inline void *


More information about the svn-src-all mailing list