public inbox for linux-rdma@vger.kernel.org
 help / color / mirror / Atom feed
From: Leon Romanovsky <leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
To: Selvin Xavier <selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
Cc: Doug Ledford <dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [rdma-next v1 13/22] RDMA/hns: Remove empty functions
Date: Fri, 18 Aug 2017 18:40:45 +0300	[thread overview]
Message-ID: <20170818154045.GL23648@mtr-leonro.local> (raw)
In-Reply-To: <CA+sbYW2ZJj2SdchU8M4dZz-KOGSxw2EPX-9oGJhMf3LSzMtA2A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

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

On Fri, Aug 18, 2017 at 03:16:12PM +0530, Selvin Xavier wrote:
>  Removing the "modify_port" hook is causing some issues with ib_cm module.
> While adding a mad agent for the new device, ib_cm invokes
> ib_modify_port  which fails
> with return value -ENOSYS. So the mad agent gets unregistered. This
> break the connection
> establishment. It is broken for bnxt_re also.
>
> The following patch helps. But it is like a workaround to solve the problem.
>
> diff --git a/drivers/infiniband/core/cm.c b/drivers/infiniband/core/cm.c
> index d5ca101..59911dd 100644
> --- a/drivers/infiniband/core/cm.c
> +++ b/drivers/infiniband/core/cm.c
> @@ -4189,7 +4189,7 @@ static void cm_add_one(struct ib_device *ib_device)
>                         goto error2;
>
>                 ret = ib_modify_port(ib_device, i, 0, &port_modify);
> -               if (ret)
> +               if (ret && ret != -ENOSYS)
>                         goto error3;
>
>                 count++;
>
> Or should we have the modify_port hook with some basic checks?

I think that your proposal is right thing to do. The driver should
properly return the status of its callbacks (-ENOSYS) and it is
responsibility of the caller to decide what to do in such case.

The dummy function (return 0) hides the fact that modify_port do
nothing and it can be wrong for some callers.

Thanks

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

  parent reply	other threads:[~2017-08-18 15:40 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-13 10:17 [pull request][rdma-next v1 00/22] RDMA core, drivers and IPoIB fixes Leon Romanovsky
     [not found] ` <20170813101816.3120-1-leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2017-08-13 10:17   ` [rdma-next v1 01/22] IB/cma: Fix erroneous validation of supported default GID type Leon Romanovsky
2017-08-13 10:17   ` [rdma-next v1 02/22] IB/uverbs: Introduce and use helper functions to copy ah attributes Leon Romanovsky
2017-08-13 10:17   ` [rdma-next v1 03/22] RDMA/mlx4: Don't use uninitialized variable Leon Romanovsky
2017-08-13 10:17   ` [rdma-next v1 04/22] RDMA/mlx4: Fix create qp command alignment Leon Romanovsky
2017-08-13 10:17   ` [rdma-next v1 05/22] RDMA/(core,ulp): Convert register/unregister event handler to be void Leon Romanovsky
     [not found]     ` <20170813101816.3120-6-leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2017-08-13 10:33       ` Yuval Shaia
2017-08-13 10:18   ` [rdma-next v1 06/22] RDMA/core: Cleanup device capability enum Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 07/22] RDMA/core: Remove unimplemented node_types and node transport Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 08/22] RDMA/core: Delete BUG() from unreachable flow Leon Romanovsky
     [not found]     ` <20170813101816.3120-9-leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2017-08-13 10:26       ` Yuval Shaia
2017-08-13 10:18   ` [rdma-next v1 09/22] RDMA/core: Refactor get link layer wrapper Leon Romanovsky
     [not found]     ` <20170813101816.3120-10-leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2017-08-13 10:25       ` Yuval Shaia
2017-08-13 10:18   ` [rdma-next v1 10/22] RDMA/mlx4: Remove gfp_mask argument from acquire_group call Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 11/22] RDMA/usnic: Fix remove address space warning Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 12/22] RDMA/mthca: Make explicit conversion to 64bit value Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 13/22] RDMA/hns: Remove empty functions Leon Romanovsky
     [not found]     ` <9e60e6ca-4eae-1e83-7e24-4c0609dfb7bc@huawei.com>
     [not found]       ` <9e60e6ca-4eae-1e83-7e24-4c0609dfb7bc-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
2017-08-15  5:35         ` Leon Romanovsky
     [not found]     ` <20170813101816.3120-14-leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2017-08-18  9:46       ` Selvin Xavier
     [not found]         ` <CA+sbYW2ZJj2SdchU8M4dZz-KOGSxw2EPX-9oGJhMf3LSzMtA2A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-08-18 15:40           ` Leon Romanovsky [this message]
     [not found]             ` <20170818154045.GL23648-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org>
2017-08-21  4:39               ` Selvin Xavier
     [not found]                 ` <CA+sbYW3LHT3CHX-UmQ_up3VexxoHdaa_Gs3ukanDnApEwPk4Fg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-08-21  5:16                   ` Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 14/22] IB/mlx4: Fix some spelling mistakes Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 15/22] IB/mlx5: " Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 16/22] IB/mlx5: Add necessary delay drop assignment Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 17/22] IB/mlx4: Fix RSS QP type in creation verb Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 18/22] IB/mlx4: Fix struct mlx4_ib_create_wq alignment Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 19/22] IB/mlx4: Remove redundant attribute in mlx4_ib_create_qp_rss struct Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 20/22] IB/mlx4: Check that reserved fields in mlx4_ib_create_qp_rss are zero Leon Romanovsky
     [not found]     ` <20170813101816.3120-21-leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2017-08-13 10:24       ` Yuval Shaia
2017-08-13 10:18   ` [rdma-next v1 21/22] IB/ipoib: Sync between remove_one to sysfs calls that use rtnl_lock Leon Romanovsky
2017-08-13 10:18   ` [rdma-next v1 22/22] IB/ipoib: Add get statistics support to SRIOV VF Leon Romanovsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170818154045.GL23648@mtr-leonro.local \
    --to=leon-dgejt+ai2ygdnm+yrofe0a@public.gmane.org \
    --cc=dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox