* [PATCH rdma-next 00/18] Refactor mlx5_ib_create_qp (Part I)
@ 2020-04-20 15:10 Leon Romanovsky
2020-04-24 19:54 ` Jason Gunthorpe
0 siblings, 1 reply; 3+ messages in thread
From: Leon Romanovsky @ 2020-04-20 15:10 UTC (permalink / raw)
To: Doug Ledford, Jason Gunthorpe
Cc: Leon Romanovsky, linux-kernel, linux-rdma, Maor Gottlieb
From: Leon Romanovsky <leonro@mellanox.com>
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@kernel.org
Leon Romanovsky (18):
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
drivers/infiniband/hw/mlx5/devx.c | 2 +-
drivers/infiniband/hw/mlx5/flow.c | 2 +-
drivers/infiniband/hw/mlx5/gsi.c | 10 -
drivers/infiniband/hw/mlx5/main.c | 9 +-
drivers/infiniband/hw/mlx5/mlx5_ib.h | 24 +-
drivers/infiniband/hw/mlx5/odp.c | 2 +-
drivers/infiniband/hw/mlx5/qp.c | 928 +++++++++++++--------------
7 files changed, 467 insertions(+), 510 deletions(-)
--
2.25.2
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH rdma-next 00/18] Refactor mlx5_ib_create_qp (Part I)
2020-04-20 15:10 [PATCH rdma-next 00/18] Refactor mlx5_ib_create_qp (Part I) Leon Romanovsky
@ 2020-04-24 19:54 ` Jason Gunthorpe
2020-04-24 20:26 ` Leon Romanovsky
0 siblings, 1 reply; 3+ messages in thread
From: Jason Gunthorpe @ 2020-04-24 19:54 UTC (permalink / raw)
To: Leon Romanovsky
Cc: Doug Ledford, Leon Romanovsky, linux-kernel, linux-rdma, Maor Gottlieb
On Mon, Apr 20, 2020 at 06:10:47PM +0300, Leon Romanovsky wrote:
> From: Leon Romanovsky <leonro@mellanox.com>
>
> 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@kernel.org
>
> Leon Romanovsky (18):
> 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
This seems reasonable, can you send it so it applies without other
series?
Jason
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH rdma-next 00/18] Refactor mlx5_ib_create_qp (Part I)
2020-04-24 19:54 ` Jason Gunthorpe
@ 2020-04-24 20:26 ` Leon Romanovsky
0 siblings, 0 replies; 3+ messages in thread
From: Leon Romanovsky @ 2020-04-24 20:26 UTC (permalink / raw)
To: Jason Gunthorpe; +Cc: Doug Ledford, linux-kernel, linux-rdma, Maor Gottlieb
On Fri, Apr 24, 2020 at 04:54:26PM -0300, Jason Gunthorpe wrote:
> On Mon, Apr 20, 2020 at 06:10:47PM +0300, Leon Romanovsky wrote:
> > From: Leon Romanovsky <leonro@mellanox.com>
> >
> > 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@kernel.org
> >
> > Leon Romanovsky (18):
> > 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
>
> This seems reasonable, can you send it so it applies without other
> series?
Maybe it is doable, but part II needs [1] as pre-requirement.
Do you anyway prefer me to do it?
Thanks
>
> Jason
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-04-24 20:26 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-20 15:10 [PATCH rdma-next 00/18] Refactor mlx5_ib_create_qp (Part I) Leon Romanovsky
2020-04-24 19:54 ` Jason Gunthorpe
2020-04-24 20:26 ` Leon Romanovsky
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).