Re: [PATCH rdma-next v1 00/36] Refactor mlx5_ib_create_qp

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Apr 27, 2020 at 06:46:00PM +0300, Leon Romanovsky wrote:
> From: Leon Romanovsky <leonro@xxxxxxxxxxxx>
> 
> Changelog
> v1: * Combined both series to easy apply
>     * Rebsed on top of rdma-next + mlx5-next
>     * Fixed create_qp flags check
> v0: https://lore.kernel.org/lkml/20200420151105.282848-1-leon@xxxxxxxxxx
>     https://lore.kernel.org/lkml/20200423190303.12856-1-leon@xxxxxxxxxx
> 
> 
> Hi,
> 
> This is first part of series which tries to return some sanity
> to mlx5_ib_create_qp() function. Such refactoring is required
> to make extension of that function with less worries of breaking
> driver.
> 
> Extra goal of such refactoring is to ensure that QP is allocated
> at the beginning of function and released at the end. It will allow
> us to move QP allocation to be under IB/core responsibility.
> 
> It is based on previously sent [1] "[PATCH mlx5-next 00/24] Mass
> conversion to light mlx5 command interface"
> 
> Thanks
> 
> [1]
> https://lore.kernel.org/linux-rdma/20200420114136.264924-1-leon@xxxxxxxxxx
> 
> Aharon Landau (1):
>   RDMA/mlx5: Verify that QP is created with RQ or SQ
> 
> Leon Romanovsky (35):
>   RDMA/mlx5: Organize QP types checks in one place
>   RDMA/mlx5: Delete impossible GSI port check
>   RDMA/mlx5: Perform check if QP creation flow is valid
>   RDMA/mlx5: Prepare QP allocation for future removal
>   RDMA/mlx5: Avoid setting redundant NULL for XRC QPs
>   RDMA/mlx5: Set QP subtype immediately when it is known
>   RDMA/mlx5: Separate create QP flows to be based on type
>   RDMA/mlx5: Split scatter CQE configuration for DCT QP
>   RDMA/mlx5: Update all DRIVER QP places to use QP subtype
>   RDMA/mlx5: Move DRIVER QP flags check into separate function
>   RDMA/mlx5: Remove second copy from user for non RSS RAW QPs
>   RDMA/mlx5: Initial separation of RAW_PACKET QP from common flow
>   RDMA/mlx5: Delete create QP flags obfuscation
>   RDMA/mlx5: Process create QP flags in one place
>   RDMA/mlx5: Use flags_en mechanism to mark QP created with WQE
>     signature
>   RDMA/mlx5: Change scatter CQE flag to be set like other vendor flags
>   RDMA/mlx5: Return all configured create flags through query QP
>   RDMA/mlx5: Process all vendor flags in one place
>   RDMA/mlx5: Delete unsupported QP types
>   RDMA/mlx5: Store QP type in the vendor QP structure
>   RDMA/mlx5: Promote RSS RAW QP attribute check in higher level
>   RDMA/mlx5: Combine copy of create QP command in RSS RAW QP
>   RDMA/mlx5: Remove second user copy in create_user_qp
>   RDMA/mlx5: Rely on existence of udata to separate kernel/user flows
>   RDMA/mlx5: Delete impossible inlen check
>   RDMA/mlx5: Globally parse DEVX UID
>   RDMA/mlx5: Separate XRC_TGT QP creation from common flow
>   RDMA/mlx5: Separate to user/kernel create QP flows
>   RDMA/mlx5: Reduce amount of duplication in QP destroy
>   RDMA/mlx5: Group all create QP parameters to simplify in-kernel
>     interfaces
>   RDMA/mlx5: Promote RSS RAW QP flags check to higher level
>   RDMA/mlx5: Handle udate outlen checks in one place
>   RDMA/mlx5: Copy response to the user in one place
>   RDMA/mlx5: Remove redundant destroy QP call
>   RDMA/mlx5: Consolidate into special function all create QP calls

Part II applies too thanks

Jason



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux