All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH rdma-core] mlx4: Fix 1<<31 expressions
@ 2018-02-08 23:38 Jason Gunthorpe
       [not found] ` <20180208233829.GA16128-uk2M96/98Pc@public.gmane.org>
  0 siblings, 1 reply; 12+ messages in thread
From: Jason Gunthorpe @ 2018-02-08 23:38 UTC (permalink / raw)
  To: linux-rdma-u79uwXL29TY76Z2rM5mHXA

They produce the value INT32_MIN not 0x80000000. This is sometimes OK
if it is casted appropriately but leaves a subtle trap to the user.

Signed-off-by: Jason Gunthorpe <jgg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
---
 providers/mlx4/mlx4dv.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/providers/mlx4/mlx4dv.h b/providers/mlx4/mlx4dv.h
index d47d3cd2e1f135..5312a866b6e281 100644
--- a/providers/mlx4/mlx4dv.h
+++ b/providers/mlx4/mlx4dv.h
@@ -288,12 +288,12 @@ enum {
 };
 
 enum {
-	MLX4_WQE_BIND_TYPE_2		= (1<<31),
+	MLX4_WQE_BIND_TYPE_2		= (1UL<<31),
 	MLX4_WQE_BIND_ZERO_BASED	= (1<<30),
 };
 
 enum {
-	MLX4_INLINE_SEG		= 1 << 31,
+	MLX4_INLINE_SEG		= 1UL << 31,
 	MLX4_INLINE_ALIGN	= 64,
 };
 
@@ -304,7 +304,7 @@ enum {
 enum {
 	MLX4_WQE_MW_REMOTE_READ   = 1 << 29,
 	MLX4_WQE_MW_REMOTE_WRITE  = 1 << 30,
-	MLX4_WQE_MW_ATOMIC        = 1 << 31
+	MLX4_WQE_MW_ATOMIC        = 1UL << 31
 };
 
 struct mlx4_wqe_local_inval_seg {
-- 
2.16.1

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
       [not found] ` <20180208233829.GA16128-uk2M96/98Pc@public.gmane.org>
@ 2018-02-09 16:01   ` Bart Van Assche
       [not found]     ` <1518192109.2871.5.camel-Sjgp3cTcYWE@public.gmane.org>
  0 siblings, 1 reply; 12+ messages in thread
From: Bart Van Assche @ 2018-02-09 16:01 UTC (permalink / raw)
  To: jgg-VPRAkNaXOzVWk0Htik3J/w, linux-rdma-u79uwXL29TY76Z2rM5mHXA

On Thu, 2018-02-08 at 16:38 -0700, Jason Gunthorpe wrote:
>  enum {
> -	MLX4_WQE_BIND_TYPE_2		= (1<<31),
> +	MLX4_WQE_BIND_TYPE_2		= (1UL<<31),
>  	MLX4_WQE_BIND_ZERO_BASED	= (1<<30),
>  };

Hello Jason,

A quote from the C11 standard:

"The expression that defines the value of an enumeration constant shall be an
integer constant expression that has a value representable as an int. [ ... ]
Each enumerated type shall be compatible with char, a signed integer type, or
an unsigned integer type. The choice of type is implementation-defined but
shall be capable of representing the values of all the members of the
enumeration."

Does that mean that this change relies on extensions to the C standard?

Thanks,

Bart.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
       [not found]     ` <1518192109.2871.5.camel-Sjgp3cTcYWE@public.gmane.org>
@ 2018-02-09 16:10       ` Jason Gunthorpe
       [not found]         ` <20180209161030.GA7584-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
  0 siblings, 1 reply; 12+ messages in thread
From: Jason Gunthorpe @ 2018-02-09 16:10 UTC (permalink / raw)
  To: Bart Van Assche; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA

On Fri, Feb 09, 2018 at 04:01:51PM +0000, Bart Van Assche wrote:
> On Thu, 2018-02-08 at 16:38 -0700, Jason Gunthorpe wrote:
> >  enum {
> > -	MLX4_WQE_BIND_TYPE_2		= (1<<31),
> > +	MLX4_WQE_BIND_TYPE_2		= (1UL<<31),
> >  	MLX4_WQE_BIND_ZERO_BASED	= (1<<30),
> >  };
> 
> Hello Jason,
> 
> A quote from the C11 standard:
> 
> "The expression that defines the value of an enumeration constant shall be an
> integer constant expression that has a value representable as an int. [ ... ]
> Each enumerated type shall be compatible with char, a signed integer type, or
> an unsigned integer type. The choice of type is implementation-defined but
> shall be capable of representing the values of all the members of the
> enumeration."
> 
> Does that mean that this change relies on extensions to the C standard?

Yes, this relies on a common compiler extension to promote the type of
enum constants beyond int. AFAIK all compilers have done this forever,
kinda bonkers it isn't in C11, IMHO.

As I understand it, the current code is also non-conforming as (1<<31)
is apparently undefined behavior, and at least gcc throws a warning
for it in -Wpedantic mode.

I did a patch that will make our public headers mostly strictly
conforming to C11 with -Wpedantic set, which I've been wondering if it
is worth sending..

Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 12+ messages in thread

* RE: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
       [not found]         ` <20180209161030.GA7584-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
@ 2018-02-09 16:12           ` Parav Pandit
       [not found]             ` <HE1PR0502MB3004BB45FC9ADB9B49CAF283D1F20-692Kmc8YnlL9PhveBwpv4cDSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
  0 siblings, 1 reply; 12+ messages in thread
From: Parav Pandit @ 2018-02-09 16:12 UTC (permalink / raw)
  To: Jason Gunthorpe, Bart Van Assche; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA



> -----Original Message-----
> From: linux-rdma-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org [mailto:linux-rdma-
> owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org] On Behalf Of Jason Gunthorpe
> Sent: Friday, February 09, 2018 10:11 AM
> To: Bart Van Assche <Bart.VanAssche-Sjgp3cTcYWE@public.gmane.org>
> Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> Subject: Re: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
> 
> On Fri, Feb 09, 2018 at 04:01:51PM +0000, Bart Van Assche wrote:
> > On Thu, 2018-02-08 at 16:38 -0700, Jason Gunthorpe wrote:
> > >  enum {
> > > -	MLX4_WQE_BIND_TYPE_2		= (1<<31),
> > > +	MLX4_WQE_BIND_TYPE_2		= (1UL<<31),
> > >  	MLX4_WQE_BIND_ZERO_BASED	= (1<<30),
> > >  };
> >
> > Hello Jason,
> >
> > A quote from the C11 standard:
> >
> > "The expression that defines the value of an enumeration constant
> > shall be an integer constant expression that has a value representable
> > as an int. [ ... ] Each enumerated type shall be compatible with char,
> > a signed integer type, or an unsigned integer type. The choice of type
> > is implementation-defined but shall be capable of representing the
> > values of all the members of the enumeration."
> >
> > Does that mean that this change relies on extensions to the C standard?
> 
> Yes, this relies on a common compiler extension to promote the type of enum
> constants beyond int. AFAIK all compilers have done this forever, kinda bonkers
> it isn't in C11, IMHO.
> 
> As I understand it, the current code is also non-conforming as (1<<31) is
> apparently undefined behavior, and at least gcc throws a warning for it in -
> Wpedantic mode.
> 
> I did a patch that will make our public headers mostly strictly conforming to C11
> with -Wpedantic set, which I've been wondering if it is worth sending..
> 
Any reason to use open code instead of using BIT() macro from include/linux/bitops.h which does the same thing?

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
       [not found]             ` <HE1PR0502MB3004BB45FC9ADB9B49CAF283D1F20-692Kmc8YnlL9PhveBwpv4cDSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
@ 2018-02-09 16:13               ` Jason Gunthorpe
       [not found]                 ` <20180209161325.GD7570-uk2M96/98Pc@public.gmane.org>
  2018-02-09 16:19               ` Bart Van Assche
  1 sibling, 1 reply; 12+ messages in thread
From: Jason Gunthorpe @ 2018-02-09 16:13 UTC (permalink / raw)
  To: Parav Pandit; +Cc: Bart Van Assche, linux-rdma-u79uwXL29TY76Z2rM5mHXA

On Fri, Feb 09, 2018 at 04:12:24PM +0000, Parav Pandit wrote:

> > I did a patch that will make our public headers mostly strictly conforming to C11
> > with -Wpedantic set, which I've been wondering if it is worth sending..

> Any reason to use open code instead of using BIT() macro from
> include/linux/bitops.h which does the same thing?

BIT only works in the kernel. This is a publich header from rdma-core
userspace.

Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
       [not found]             ` <HE1PR0502MB3004BB45FC9ADB9B49CAF283D1F20-692Kmc8YnlL9PhveBwpv4cDSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
  2018-02-09 16:13               ` Jason Gunthorpe
@ 2018-02-09 16:19               ` Bart Van Assche
       [not found]                 ` <1518193161.2871.14.camel-Sjgp3cTcYWE@public.gmane.org>
  1 sibling, 1 reply; 12+ messages in thread
From: Bart Van Assche @ 2018-02-09 16:19 UTC (permalink / raw)
  To: jgg-VPRAkNaXOzVWk0Htik3J/w, parav-VPRAkNaXOzVWk0Htik3J/w
  Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="utf-8", Size: 604 bytes --]

On Fri, 2018-02-09 at 16:12 +0000, Parav Pandit wrote:
> Any reason to use open code instead of using BIT() macro from
> include/linux/bitops.h which does the same thing?

Personally I'm in favor of removing the BIT() macro from the kernel. That macro
is not useful and only adds confusion. Code that does not use that macro is
easier to read because one does not have to look up whether the BIT() macro
is defined as 1U << x, 1UL << x or 1ULL << x.

Bart.


N‹§²æìr¸›yúèšØb²X¬¶Ç§vØ^–)Þº{.nÇ+‰·¥Š{±­ÙšŠ{ayº\x1dʇڙë,j\a­¢f£¢·hš‹»öì\x17/oSc¾™Ú³9˜uÀ¦æå‰È&jw¨®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿïêäz¹Þ–Šàþf£¢·hšˆ§~ˆmš

^ permalink raw reply	[flat|nested] 12+ messages in thread

* RE: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
       [not found]                 ` <20180209161325.GD7570-uk2M96/98Pc@public.gmane.org>
@ 2018-02-09 16:20                   ` Parav Pandit
  2018-02-09 16:42                   ` Leon Romanovsky
  1 sibling, 0 replies; 12+ messages in thread
From: Parav Pandit @ 2018-02-09 16:20 UTC (permalink / raw)
  To: Jason Gunthorpe; +Cc: Bart Van Assche, linux-rdma-u79uwXL29TY76Z2rM5mHXA



> -----Original Message-----
> From: Jason Gunthorpe [mailto:jgg-uk2M96/98Pc@public.gmane.org]
> Sent: Friday, February 09, 2018 10:13 AM
> To: Parav Pandit <parav-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
> Cc: Bart Van Assche <Bart.VanAssche-Sjgp3cTcYWE@public.gmane.org>; linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> Subject: Re: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
> 
> On Fri, Feb 09, 2018 at 04:12:24PM +0000, Parav Pandit wrote:
> 
> > > I did a patch that will make our public headers mostly strictly
> > > conforming to C11 with -Wpedantic set, which I've been wondering if it is
> worth sending..
> 
> > Any reason to use open code instead of using BIT() macro from
> > include/linux/bitops.h which does the same thing?
> 
> BIT only works in the kernel. This is a publich header from rdma-core userspace.
> 
o.k. Got it. Same duplicated definition exist in kernel too which is not yet fixed because its unused, I guess.
Likely user space headers don't have any BIT() or support macros.
Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
       [not found]                 ` <1518193161.2871.14.camel-Sjgp3cTcYWE@public.gmane.org>
@ 2018-02-09 16:24                   ` Jason Gunthorpe
       [not found]                     ` <20180209162453.GD7584-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
  0 siblings, 1 reply; 12+ messages in thread
From: Jason Gunthorpe @ 2018-02-09 16:24 UTC (permalink / raw)
  To: Bart Van Assche
  Cc: parav-VPRAkNaXOzVWk0Htik3J/w, linux-rdma-u79uwXL29TY76Z2rM5mHXA

On Fri, Feb 09, 2018 at 04:19:23PM +0000, Bart Van Assche wrote:
> On Fri, 2018-02-09 at 16:12 +0000, Parav Pandit wrote:
> > Any reason to use open code instead of using BIT() macro from
> > include/linux/bitops.h which does the same thing?
> 
> Personally I'm in favor of removing the BIT() macro from the kernel. That macro
> is not useful and only adds confusion. Code that does not use that macro is
> easier to read because one does not have to look up whether the BIT() macro
> is defined as 1U << x, 1UL << x or 1ULL << x.

Really? The rule is pretty simple:

 BIT(x) for x < 32
 BIT_ULL(x) for x >= 32 && x < 64

Why do you care about what specific type the macro produces?

Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
       [not found]                 ` <20180209161325.GD7570-uk2M96/98Pc@public.gmane.org>
  2018-02-09 16:20                   ` Parav Pandit
@ 2018-02-09 16:42                   ` Leon Romanovsky
       [not found]                     ` <20180209164200.GO2197-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org>
  1 sibling, 1 reply; 12+ messages in thread
From: Leon Romanovsky @ 2018-02-09 16:42 UTC (permalink / raw)
  To: Jason Gunthorpe
  Cc: Parav Pandit, Bart Van Assche, linux-rdma-u79uwXL29TY76Z2rM5mHXA

[-- Attachment #1: Type: text/plain, Size: 893 bytes --]

On Fri, Feb 09, 2018 at 09:13:25AM -0700, Jason Gunthorpe wrote:
> On Fri, Feb 09, 2018 at 04:12:24PM +0000, Parav Pandit wrote:
>
> > > I did a patch that will make our public headers mostly strictly conforming to C11
> > > with -Wpedantic set, which I've been wondering if it is worth sending..
>
> > Any reason to use open code instead of using BIT() macro from
> > include/linux/bitops.h which does the same thing?
>
> BIT only works in the kernel. This is a publich header from rdma-core
> userspace.

➜  rdma-core git:(master) git grep "define BIT" providers/mlx5/cq.c
providers/mlx5/cq.c:#define BIT(i) (1UL << (i))

Thanks

>
> Jason
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
       [not found]                     ` <20180209164200.GO2197-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org>
@ 2018-02-09 16:51                       ` Jason Gunthorpe
       [not found]                         ` <20180209165138.GA11850-uk2M96/98Pc@public.gmane.org>
  0 siblings, 1 reply; 12+ messages in thread
From: Jason Gunthorpe @ 2018-02-09 16:51 UTC (permalink / raw)
  To: Leon Romanovsky
  Cc: Parav Pandit, Bart Van Assche, linux-rdma-u79uwXL29TY76Z2rM5mHXA

On Fri, Feb 09, 2018 at 06:42:00PM +0200, Leon Romanovsky wrote:
> On Fri, Feb 09, 2018 at 09:13:25AM -0700, Jason Gunthorpe wrote:
> > On Fri, Feb 09, 2018 at 04:12:24PM +0000, Parav Pandit wrote:
> >
> > > > I did a patch that will make our public headers mostly strictly conforming to C11
> > > > with -Wpedantic set, which I've been wondering if it is worth sending..
> >
> > > Any reason to use open code instead of using BIT() macro from
> > > include/linux/bitops.h which does the same thing?
> >
> > BIT only works in the kernel. This is a publich header from rdma-core
> > userspace.
> 
> ➜  rdma-core git:(master) git grep "define BIT" providers/mlx5/cq.c
> providers/mlx5/cq.c:#define BIT(i) (1UL << (i))

Still can't use it in a public header.

Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
       [not found]                         ` <20180209165138.GA11850-uk2M96/98Pc@public.gmane.org>
@ 2018-02-09 16:55                           ` Leon Romanovsky
  0 siblings, 0 replies; 12+ messages in thread
From: Leon Romanovsky @ 2018-02-09 16:55 UTC (permalink / raw)
  To: Jason Gunthorpe
  Cc: Parav Pandit, Bart Van Assche, linux-rdma-u79uwXL29TY76Z2rM5mHXA

[-- Attachment #1: Type: text/plain, Size: 1009 bytes --]

On Fri, Feb 09, 2018 at 09:51:38AM -0700, Jason Gunthorpe wrote:
> On Fri, Feb 09, 2018 at 06:42:00PM +0200, Leon Romanovsky wrote:
> > On Fri, Feb 09, 2018 at 09:13:25AM -0700, Jason Gunthorpe wrote:
> > > On Fri, Feb 09, 2018 at 04:12:24PM +0000, Parav Pandit wrote:
> > >
> > > > > I did a patch that will make our public headers mostly strictly conforming to C11
> > > > > with -Wpedantic set, which I've been wondering if it is worth sending..
> > >
> > > > Any reason to use open code instead of using BIT() macro from
> > > > include/linux/bitops.h which does the same thing?
> > >
> > > BIT only works in the kernel. This is a publich header from rdma-core
> > > userspace.
> >
> > ➜  rdma-core git:(master) git grep "define BIT" providers/mlx5/cq.c
> > providers/mlx5/cq.c:#define BIT(i) (1UL << (i))
>
> Still can't use it in a public header.

Thanks, I missed that we are talking about mlx4dv.h

Reviewed-by: Leon Romanovsky <leonro-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH rdma-core] mlx4: Fix 1<<31 expressions
       [not found]                     ` <20180209162453.GD7584-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
@ 2018-02-09 17:18                       ` Bart Van Assche
  0 siblings, 0 replies; 12+ messages in thread
From: Bart Van Assche @ 2018-02-09 17:18 UTC (permalink / raw)
  To: Jason Gunthorpe
  Cc: parav-VPRAkNaXOzVWk0Htik3J/w, linux-rdma-u79uwXL29TY76Z2rM5mHXA

On 02/09/18 08:24, Jason Gunthorpe wrote:
> On Fri, Feb 09, 2018 at 04:19:23PM +0000, Bart Van Assche wrote:
>> On Fri, 2018-02-09 at 16:12 +0000, Parav Pandit wrote:
>>> Any reason to use open code instead of using BIT() macro from
>>> include/linux/bitops.h which does the same thing?
>>
>> Personally I'm in favor of removing the BIT() macro from the kernel. That macro
>> is not useful and only adds confusion. Code that does not use that macro is
>> easier to read because one does not have to look up whether the BIT() macro
>> is defined as 1U << x, 1UL << x or 1ULL << x.
> 
> Really? The rule is pretty simple:
> 
>   BIT(x) for x < 32
>   BIT_ULL(x) for x >= 32 && x < 64
> 
> Why do you care about what specific type the macro produces?

That's something additional kernel developers have to memorize. If the 
BIT() macro is not used but the shift operation is explicit then that 
saves the lookup of the BIT() definition in case one would have 
forgotten what the BIT() definition looks like.

Bart.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2018-02-09 17:18 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-08 23:38 [PATCH rdma-core] mlx4: Fix 1<<31 expressions Jason Gunthorpe
     [not found] ` <20180208233829.GA16128-uk2M96/98Pc@public.gmane.org>
2018-02-09 16:01   ` Bart Van Assche
     [not found]     ` <1518192109.2871.5.camel-Sjgp3cTcYWE@public.gmane.org>
2018-02-09 16:10       ` Jason Gunthorpe
     [not found]         ` <20180209161030.GA7584-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2018-02-09 16:12           ` Parav Pandit
     [not found]             ` <HE1PR0502MB3004BB45FC9ADB9B49CAF283D1F20-692Kmc8YnlL9PhveBwpv4cDSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2018-02-09 16:13               ` Jason Gunthorpe
     [not found]                 ` <20180209161325.GD7570-uk2M96/98Pc@public.gmane.org>
2018-02-09 16:20                   ` Parav Pandit
2018-02-09 16:42                   ` Leon Romanovsky
     [not found]                     ` <20180209164200.GO2197-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org>
2018-02-09 16:51                       ` Jason Gunthorpe
     [not found]                         ` <20180209165138.GA11850-uk2M96/98Pc@public.gmane.org>
2018-02-09 16:55                           ` Leon Romanovsky
2018-02-09 16:19               ` Bart Van Assche
     [not found]                 ` <1518193161.2871.14.camel-Sjgp3cTcYWE@public.gmane.org>
2018-02-09 16:24                   ` Jason Gunthorpe
     [not found]                     ` <20180209162453.GD7584-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2018-02-09 17:18                       ` Bart Van Assche

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.