vdpa/mlx5: Directly assign memory key

Message ID 20230202125718.1013961-1-elic@nvidia.com
State New
Headers
Series vdpa/mlx5: Directly assign memory key |

Commit Message

Eli Cohen Feb. 2, 2023, 12:57 p.m. UTC
  When creating a memory key, the key value should be assigned to the
passed pointer and not or'ed to.

This fix has is required but had no real impact so far.

Fixes: 29064bfdabd5 ("vdpa/mlx5: Add support library for mlx5 VDPA implementation")
Signed-off-by: Eli Cohen <elic@nvidia.com>
---
 drivers/vdpa/mlx5/core/resources.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Michael S. Tsirkin Feb. 2, 2023, 5:32 p.m. UTC | #1
On Thu, Feb 02, 2023 at 02:57:18PM +0200, Eli Cohen wrote:
> When creating a memory key, the key value should be assigned to the
> passed pointer and not or'ed to.
> 
> This fix has is required but had no real impact so far.

I don't get what this sentence says. Both grammar and general meaning
elude me.

> Fixes: 29064bfdabd5 ("vdpa/mlx5: Add support library for mlx5 VDPA implementation")
> Signed-off-by: Eli Cohen <elic@nvidia.com>
> ---
>  drivers/vdpa/mlx5/core/resources.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/vdpa/mlx5/core/resources.c b/drivers/vdpa/mlx5/core/resources.c
> index 9800f9bec225..45ad41287a31 100644
> --- a/drivers/vdpa/mlx5/core/resources.c
> +++ b/drivers/vdpa/mlx5/core/resources.c
> @@ -213,7 +213,7 @@ int mlx5_vdpa_create_mkey(struct mlx5_vdpa_dev *mvdev, u32 *mkey, u32 *in,
>  		return err;
>  
>  	mkey_index = MLX5_GET(create_mkey_out, lout, mkey_index);
> -	*mkey |= mlx5_idx_to_mkey(mkey_index);
> +	*mkey = mlx5_idx_to_mkey(mkey_index);
>  	return 0;
>  }
>  
> -- 
> 2.38.1
  
Eli Cohen Feb. 5, 2023, 7:26 a.m. UTC | #2
On 02/02/2023 19:32, Michael S. Tsirkin wrote:
> On Thu, Feb 02, 2023 at 02:57:18PM +0200, Eli Cohen wrote:
>> When creating a memory key, the key value should be assigned to the
>> passed pointer and not or'ed to.
>>
>> This fix has is required but had no real impact so far.
> I don't get what this sentence says. Both grammar and general meaning
> elude me.

And I can't blame you for that.

Re-sending...

>
>> Fixes: 29064bfdabd5 ("vdpa/mlx5: Add support library for mlx5 VDPA implementation")
>> Signed-off-by: Eli Cohen <elic@nvidia.com>
>> ---
>>   drivers/vdpa/mlx5/core/resources.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/vdpa/mlx5/core/resources.c b/drivers/vdpa/mlx5/core/resources.c
>> index 9800f9bec225..45ad41287a31 100644
>> --- a/drivers/vdpa/mlx5/core/resources.c
>> +++ b/drivers/vdpa/mlx5/core/resources.c
>> @@ -213,7 +213,7 @@ int mlx5_vdpa_create_mkey(struct mlx5_vdpa_dev *mvdev, u32 *mkey, u32 *in,
>>   		return err;
>>   
>>   	mkey_index = MLX5_GET(create_mkey_out, lout, mkey_index);
>> -	*mkey |= mlx5_idx_to_mkey(mkey_index);
>> +	*mkey = mlx5_idx_to_mkey(mkey_index);
>>   	return 0;
>>   }
>>   
>> -- 
>> 2.38.1
  

Patch

diff --git a/drivers/vdpa/mlx5/core/resources.c b/drivers/vdpa/mlx5/core/resources.c
index 9800f9bec225..45ad41287a31 100644
--- a/drivers/vdpa/mlx5/core/resources.c
+++ b/drivers/vdpa/mlx5/core/resources.c
@@ -213,7 +213,7 @@  int mlx5_vdpa_create_mkey(struct mlx5_vdpa_dev *mvdev, u32 *mkey, u32 *in,
 		return err;
 
 	mkey_index = MLX5_GET(create_mkey_out, lout, mkey_index);
-	*mkey |= mlx5_idx_to_mkey(mkey_index);
+	*mkey = mlx5_idx_to_mkey(mkey_index);
 	return 0;
 }