From: Leon Romanovsky leonro@mellanox.com
The macro u64_to_ptr() and function ptr_to_u64() are useful enough to be part of general header, so move them there and allow RDMA subsystem reuse them.
Signed-off-by: Leon Romanovsky leonro@mellanox.com --- drivers/gpu/drm/i915/i915_utils.h | 12 ++---------- include/linux/kernel.h | 12 ++++++++++++ 2 files changed, 14 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/i915/i915_utils.h b/drivers/gpu/drm/i915/i915_utils.h index 51dbfe5bb418..de3bfda7bf96 100644 --- a/drivers/gpu/drm/i915/i915_utils.h +++ b/drivers/gpu/drm/i915/i915_utils.h @@ -25,6 +25,8 @@ #ifndef __I915_UTILS_H #define __I915_UTILS_H
+#include <linux/kernel.h> + #undef WARN_ON /* Many gcc seem to no see through this and fall over :( */ #if 0 @@ -102,16 +104,6 @@ __T; \ })
-static inline u64 ptr_to_u64(const void *ptr) -{ - return (uintptr_t)ptr; -} - -#define u64_to_ptr(T, x) ({ \ - typecheck(u64, x); \ - (T *)(uintptr_t)(x); \ -}) - #define __mask_next_bit(mask) ({ \ int __idx = ffs(mask) - 1; \ mask &= ~BIT(__idx); \ diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 6a1eb0b0aad9..a738393c9694 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -70,6 +70,18 @@ */ #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
+static inline u64 ptr_to_u64(const void *ptr) +{ + return (uintptr_t)ptr; +} + +#define u64_to_ptr(T, x) ( \ +{ \ + typecheck(u64, x); \ + (T *)(uintptr_t)(x); \ +} \ +) + #define u64_to_user_ptr(x) ( \ { \ typecheck(u64, x); \ -- 2.14.3
Quoting Leon Romanovsky (2018-05-03 16:36:55)
From: Leon Romanovsky leonro@mellanox.com
The macro u64_to_ptr() and function ptr_to_u64() are useful enough to be part of general header, so move them there and allow RDMA subsystem reuse them.
Signed-off-by: Leon Romanovsky leonro@mellanox.com
Feel free to merge this through an appropriate tree, I guess you could get some acks from LKML.
Reviewed-by: Joonas Lahtinen joonas.lahtinen@linux.intel.com
Regards, Joonas
drivers/gpu/drm/i915/i915_utils.h | 12 ++---------- include/linux/kernel.h | 12 ++++++++++++ 2 files changed, 14 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/i915/i915_utils.h b/drivers/gpu/drm/i915/i915_utils.h index 51dbfe5bb418..de3bfda7bf96 100644 --- a/drivers/gpu/drm/i915/i915_utils.h +++ b/drivers/gpu/drm/i915/i915_utils.h @@ -25,6 +25,8 @@ #ifndef __I915_UTILS_H #define __I915_UTILS_H
+#include <linux/kernel.h>
#undef WARN_ON /* Many gcc seem to no see through this and fall over :( */ #if 0 @@ -102,16 +104,6 @@ __T; \ })
-static inline u64 ptr_to_u64(const void *ptr) -{
return (uintptr_t)ptr;
-}
-#define u64_to_ptr(T, x) ({ \
typecheck(u64, x); \
(T *)(uintptr_t)(x); \
-})
#define __mask_next_bit(mask) ({ \ int __idx = ffs(mask) - 1; \ mask &= ~BIT(__idx); \ diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 6a1eb0b0aad9..a738393c9694 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -70,6 +70,18 @@ */ #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
+static inline u64 ptr_to_u64(const void *ptr) +{
return (uintptr_t)ptr;
+}
+#define u64_to_ptr(T, x) ( \ +{ \
typecheck(u64, x); \
(T *)(uintptr_t)(x); \
+} \ +)
#define u64_to_user_ptr(x) ( \ { \ typecheck(u64, x); \ -- 2.14.3
On Thu, May 03, 2018 at 04:36:55PM +0300, Leon Romanovsky wrote:
From: Leon Romanovsky leonro@mellanox.com
The macro u64_to_ptr() and function ptr_to_u64() are useful enough to be part of general header, so move them there and allow RDMA subsystem reuse them.
Signed-off-by: Leon Romanovsky leonro@mellanox.com
drivers/gpu/drm/i915/i915_utils.h | 12 ++---------- include/linux/kernel.h | 12 ++++++++++++ 2 files changed, 14 insertions(+), 10 deletions(-)
This patch and the next one to kernel.h will need to be Ack'd be someone.. But I am not sure who.. AndrewM perhaps?
Jason
On Mon, May 14, 2018 at 02:10:54PM -0600, Jason Gunthorpe wrote:
On Thu, May 03, 2018 at 04:36:55PM +0300, Leon Romanovsky wrote:
From: Leon Romanovsky leonro@mellanox.com
The macro u64_to_ptr() and function ptr_to_u64() are useful enough to be part of general header, so move them there and allow RDMA subsystem reuse them.
Signed-off-by: Leon Romanovsky leonro@mellanox.com
drivers/gpu/drm/i915/i915_utils.h | 12 ++---------- include/linux/kernel.h | 12 ++++++++++++ 2 files changed, 14 insertions(+), 10 deletions(-)
This patch and the next one to kernel.h will need to be Ack'd be someone.. But I am not sure who.. AndrewM perhaps?
Why is that?
The kernel.h doesn't have explicit maintainer and is managed by community effort.
Thanks
Jason
dri-devel@lists.freedesktop.org