2022-03-08 15:27:13

by Yajun Deng

[permalink] [raw]
Subject: [PATCH for-next 3/9] RDMA/efa: get rid of create_user_ah

There is no create_user_ah in ib_device_ops, remove it.

Signed-off-by: Yajun Deng <[email protected]>
---
drivers/infiniband/hw/efa/efa_main.c | 2 +-
drivers/infiniband/hw/efa/efa_verbs.c | 5 +++++
2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/infiniband/hw/efa/efa_main.c b/drivers/infiniband/hw/efa/efa_main.c
index 94b94cca4870..b2f3832cd305 100644
--- a/drivers/infiniband/hw/efa/efa_main.c
+++ b/drivers/infiniband/hw/efa/efa_main.c
@@ -361,7 +361,7 @@ static const struct ib_device_ops efa_dev_ops = {
.alloc_ucontext = efa_alloc_ucontext,
.create_cq = efa_create_cq,
.create_qp = efa_create_qp,
- .create_user_ah = efa_create_ah,
+ .create_ah = efa_create_ah,
.dealloc_pd = efa_dealloc_pd,
.dealloc_ucontext = efa_dealloc_ucontext,
.dereg_mr = efa_dereg_mr,
diff --git a/drivers/infiniband/hw/efa/efa_verbs.c b/drivers/infiniband/hw/efa/efa_verbs.c
index ecfe70eb5efb..44269eb18780 100644
--- a/drivers/infiniband/hw/efa/efa_verbs.c
+++ b/drivers/infiniband/hw/efa/efa_verbs.c
@@ -1959,6 +1959,11 @@ int efa_create_ah(struct ib_ah *ibah,
struct efa_ah *ah = to_eah(ibah);
int err;

+ if (!udata) {
+ err = -EOPNOTSUPP;
+ goto err_out;
+ }
+
if (!(init_attr->flags & RDMA_CREATE_AH_SLEEPABLE)) {
ibdev_dbg(&dev->ibdev,
"Create address handle is not supported in atomic context\n");
--
2.25.1


2022-03-09 07:26:19

by Gal Pressman

[permalink] [raw]
Subject: Re: [PATCH for-next 3/9] RDMA/efa: get rid of create_user_ah

On 08/03/2022 16:37, Yajun Deng wrote:
> There is no create_user_ah in ib_device_ops, remove it.
>
> Signed-off-by: Yajun Deng <[email protected]>
> ---
> drivers/infiniband/hw/efa/efa_main.c | 2 +-
> drivers/infiniband/hw/efa/efa_verbs.c | 5 +++++
> 2 files changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/infiniband/hw/efa/efa_main.c b/drivers/infiniband/hw/efa/efa_main.c
> index 94b94cca4870..b2f3832cd305 100644
> --- a/drivers/infiniband/hw/efa/efa_main.c
> +++ b/drivers/infiniband/hw/efa/efa_main.c
> @@ -361,7 +361,7 @@ static const struct ib_device_ops efa_dev_ops = {
> .alloc_ucontext = efa_alloc_ucontext,
> .create_cq = efa_create_cq,
> .create_qp = efa_create_qp,
> - .create_user_ah = efa_create_ah,
> + .create_ah = efa_create_ah,
> .dealloc_pd = efa_dealloc_pd,
> .dealloc_ucontext = efa_dealloc_ucontext,
> .dereg_mr = efa_dereg_mr,
> diff --git a/drivers/infiniband/hw/efa/efa_verbs.c b/drivers/infiniband/hw/efa/efa_verbs.c
> index ecfe70eb5efb..44269eb18780 100644
> --- a/drivers/infiniband/hw/efa/efa_verbs.c
> +++ b/drivers/infiniband/hw/efa/efa_verbs.c
> @@ -1959,6 +1959,11 @@ int efa_create_ah(struct ib_ah *ibah,
> struct efa_ah *ah = to_eah(ibah);
> int err;
>
> + if (!udata) {
> + err = -EOPNOTSUPP;
> + goto err_out;
> + }
> +

This part is not needed, kverbs flows are blocked for EFA.

Thanks