All of lore.kernel.org
 help / color / mirror / Atom feed
From: Shahaf Shuler <shahafs@mellanox.com>
To: "Nélio Laranjeiro" <nelio.laranjeiro@6wind.com>,
	"Yongseok Koh" <yskoh@mellanox.com>
Cc: Adrien Mazarguil <adrien.mazarguil@6wind.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [PATCH 2/2] net/mlx5: fix probe return value polarity
Date: Thu, 3 May 2018 07:40:28 +0000	[thread overview]
Message-ID: <DB7PR05MB442620107A52055A835F0CBFC3870@DB7PR05MB4426.eurprd05.prod.outlook.com> (raw)
In-Reply-To: <20180502064941.4vwdku7ellgzq6cx@laranjeiro-vm.dev.6wind.com>

Wednesday, May 2, 2018 9:50 AM, Nélio Laranjeiro:
> Subject: Re: [PATCH 2/2] net/mlx5: fix probe return value polarity
> 
> On Wed, May 02, 2018 at 01:54:37AM +0000, Yongseok Koh wrote:
> >
> > > On May 1, 2018, at 4:18 AM, Shahaf Shuler <shahafs@mellanox.com>
> wrote:
> > >
> > > mlx5 prefixed function returns a negative errno value.
> > > the error handler on mlx5_pci_probe is doing the same.
> > >
> > > Fixes: a6d83b6a9209 ("net/mlx5: standardize on negative errno
> > > values")
> > > Cc: nelio.laranjeiro@6wind.com
> > >
> > > Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
> > > ---
> > > drivers/net/mlx5/mlx5.c | 8 ++++++--
> > > 1 file changed, 6 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c index
> > > 46cb370a29..ab860b5985 100644
> > > --- a/drivers/net/mlx5/mlx5.c
> > > +++ b/drivers/net/mlx5/mlx5.c
> > > @@ -804,12 +804,16 @@ mlx5_pci_probe(struct rte_pci_driver *pci_drv
> __rte_unused,
> > > 				goto error;
> >
> > Shouldn't you do the same for mlx5_uar_init_secondary()?
> > Looks like a few more. E.g. mlx5_args(), mlx5_get_mtu() and
> mlx5_uar_init_primary().

Yes thanks.

> > What about ibv_query_port() 

No need, according to man:

RETURN VALUE                                                                                                       
       ibv_query_port() returns 0 on success, or the value of errno on failure (which indicates  the  failure  rea-
       son).                                                                                                       

This is also the case for ibv_query_port_ex, I will align it on the next version. 

and mlx5_flow_create_drop_queue()?

Yes, needed. 

> >
> > Thanks
> >
> > > 			/* Receive command fd from primary process */
> > > 			err = mlx5_socket_connect(eth_dev);
> > > -			if (err < 0)
> > > +			if (err < 0) {
> > > +				err = -err;
> >
> > Instead of changing sign, how about 'err = rte_errno;' ?
> 
> +1

Ok.

> 
> > However, err looks redundant to me because mlx5_* funcs set rte_errno.
> 
> Not it is not, rte_errno is the strict equivalent of errno but instead of being
> global to the process, it is global per logical core, its cannot be determined
> nor modified at the beginning of the function thus the function must track
> any failure and report it accordingly.
> 
> > Here, err is used to set rte_errno at the end.
> 
> It is just a optimization to avoid a lot of rte_errno sets among the function, it
> must only be set if err != 0.

I think I will keep the local err for the meanwhile. 

> 
> > Thanks,
> > Yongseok
> >
> > > 				goto error;
> > > +			}
> > > 			/* Remap UAR for Tx queues. */
> > > 			err = mlx5_tx_uar_remap(eth_dev, err);
> > > -			if (err)
> > > +			if (err) {
> > > +				err = -err;
> > > 				goto error;
> > > +			}
> > > 			/*
> > > 			 * Ethdev pointer is still required as input since
> > > 			 * the primary device is not accessible from the
> > > --
> > > 2.12.0
> > >
> 
> Regards,
> 
> --
> Nélio Laranjeiro
> 6WIND

  reply	other threads:[~2018-05-03  7:40 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-01 11:18 [PATCH 1/2] net/mlx5: fix socket connection return value Shahaf Shuler
2018-05-01 11:18 ` [PATCH 2/2] net/mlx5: fix probe return value polarity Shahaf Shuler
2018-05-02  1:54   ` Yongseok Koh
2018-05-02  6:49     ` Nélio Laranjeiro
2018-05-03  7:40       ` Shahaf Shuler [this message]
2018-05-02  6:50 ` [PATCH 1/2] net/mlx5: fix socket connection return value Nélio Laranjeiro
2018-05-03  7:59 ` [PATCH v2 " Shahaf Shuler
2018-05-03 10:33   ` Shahaf Shuler
2018-05-03  7:59 ` [PATCH v2 2/2] net/mlx5: fix probe return value polarity Shahaf Shuler
2018-05-03  9:53   ` Nélio Laranjeiro

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=DB7PR05MB442620107A52055A835F0CBFC3870@DB7PR05MB4426.eurprd05.prod.outlook.com \
    --to=shahafs@mellanox.com \
    --cc=adrien.mazarguil@6wind.com \
    --cc=dev@dpdk.org \
    --cc=nelio.laranjeiro@6wind.com \
    --cc=yskoh@mellanox.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.