DPDK patches and discussions
 help / color / mirror / Atom feed
From: Andrew Rybchenko <arybchenko@solarflare.com>
To: Ferruh Yigit <ferruh.yigit@intel.com>,
	"John W. Linville" <linville@tuxdriver.com>,
	Xiaolong Ye <xiaolong.ye@intel.com>,
	Qi Zhang <qi.z.zhang@intel.com>,
	Shepard Siegel <shepard.siegel@atomicrules.com>,
	"Ed Czeck" <ed.czeck@atomicrules.com>,
	John Miller <john.miller@atomicrules.com>,
	 Igor Russkikh <igor.russkikh@aquantia.com>,
	Pavel Belous <pavel.belous@aquantia.com>,
	Allain Legacy <allain.legacy@windriver.com>,
	Matt Peters <matt.peters@windriver.com>,
	Ravi Kumar <ravi1.kumar@amd.com>,
	Ajit Khaparde <ajit.khaparde@broadcom.com>,
	Somnath Kotur <somnath.kotur@broadcom.com>,
	Chas Williams <chas3@att.com>,
	Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>,
	Hemant Agrawal <hemant.agrawal@nxp.com>,
	Sachin Saxena <sachin.saxena@nxp.com>,
	Wenzhuo Lu <wenzhuo.lu@intel.com>,
	Gagandeep Singh <g.singh@nxp.com>,
	John Daley <johndale@cisco.com>,
	"Hyong Youb Kim" <hyonkim@cisco.com>,
	Gaetan Rivet <gaetan.rivet@6wind.com>,
	"Xiao Wang" <xiao.w.wang@intel.com>,
	Ziyang Xuan <xuanziyang2@huawei.com>,
	"Xiaoyun Wang" <cloud.wangxiaoyun@huawei.com>,
	Guoyang Zhou <zhouguoyang@huawei.com>,
	Beilei Xing <beilei.xing@intel.com>,
	Jingjing Wu <jingjing.wu@intel.com>,
	Qiming Yang <qiming.yang@intel.com>,
	Rosen Xu <rosen.xu@intel.com>,
	Konstantin Ananyev <konstantin.ananyev@intel.com>,
	Shijith Thotton <sthotton@marvell.com>,
	Srisivasubramanian Srinivasan <srinivasan@marvell.com>,
	Jakub Grajciar <jgrajcia@cisco.com>,
	Matan Azrad <matan@mellanox.com>,
	Shahaf Shuler <shahafs@mellanox.com>,
	Yongseok Koh <yskoh@mellanox.com>,
	Viacheslav Ovsiienko <viacheslavo@mellanox.com>,
	"Zyta Szpak" <zr@semihalf.com>, Liron Himi <lironh@marvell.com>,
	Tomasz Duszynski <tdu@semihalf.com>,
	Stephen Hemminger <sthemmin@microsoft.com>,
	"K. Y. Srinivasan" <kys@microsoft.com>,
	Haiyang Zhang <haiyangz@microsoft.com>,
	Alejandro Lucero <alejandro.lucero@netronome.com>,
	Tetsuya Mukawa <mtetsuyah@gmail.com>,
	Jerin Jacob <jerinj@marvell.com>,
	Nithin Dabilpuram <ndabilpuram@marvell.com>,
	Kiran Kumar K <kirankumark@marvell.com>,
	"Rasesh Mody" <rmody@marvell.com>,
	Shahed Shaikh <shshaikh@marvell.com>,
	"Bruce Richardson" <bruce.richardson@intel.com>,
	Jan Remes <remes@netcope.com>,
	Rastislav Cernay <cernay@netcope.com>,
	Keith Wiles <keith.wiles@intel.com>,
	Maciej Czekaj <mczekaj@marvell.com>,
	Maxime Coquelin <maxime.coquelin@redhat.com>,
	Tiwei Bie <tiwei.bie@intel.com>,
	Zhihong Wang <zhihong.wang@intel.com>,
	Yong Wang <yongwang@vmware.com>,
	Thomas Monjalon <thomas@monjalon.net>
Cc: <dev@dpdk.org>, Igor Romanov <igor.romanov@oktetlabs.ru>
Subject: Re: [dpdk-dev] [PATCH 2/2] ethdev: make stats and xstats reset callbacks return int
Date: Tue, 24 Sep 2019 16:03:47 +0300	[thread overview]
Message-ID: <db1391c6-08e8-25d5-a017-4cc570dfa251@solarflare.com> (raw)
In-Reply-To: <b2859419-f01d-f368-dcff-afeb9956ba32@intel.com>

On 9/24/19 2:56 PM, Ferruh Yigit wrote:
> On 9/6/2019 3:34 PM, Andrew Rybchenko wrote:
>> From: Igor Romanov <igor.romanov@oktetlabs.ru>
>>
>> Change return value of the callbacks from void to int. Make
>> implementations across all drivers return negative errno
>> values in case of error conditions.
>>
>> Both callbacks are updated together because a large number of
>> drivers assign the same function to both callbacks.
>>
>> Signed-off-by: Igor Romanov <igor.romanov@oktetlabs.ru>
>> Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
>> ---
>>   app/test/virtual_pmd.c                    |  4 ++-
>>   drivers/net/af_packet/rte_eth_af_packet.c |  4 ++-
>>   drivers/net/af_xdp/rte_eth_af_xdp.c       |  4 ++-
>>   drivers/net/ark/ark_ethdev.c              |  6 ++--
>>   drivers/net/atlantic/atl_ethdev.c         |  6 ++--
>>   drivers/net/avp/avp_ethdev.c              |  6 ++--
>>   drivers/net/axgbe/axgbe_ethdev.c          |  6 ++--
>>   drivers/net/bnxt/bnxt_stats.c             | 38 +++++++++++++++++------
>>   drivers/net/bnxt/bnxt_stats.h             |  4 +--
>>   drivers/net/bonding/rte_eth_bond_pmd.c    | 13 ++++++--
>>   drivers/net/cxgbe/cxgbe_ethdev.c          |  4 ++-
>>   drivers/net/dpaa/dpaa_ethdev.c            |  4 ++-
>>   drivers/net/dpaa2/dpaa2_ethdev.c          | 10 +++---
>>   drivers/net/e1000/em_ethdev.c             |  6 ++--
>>   drivers/net/e1000/igb_ethdev.c            | 18 +++++++----
>>   drivers/net/enetc/enetc_ethdev.c          |  4 ++-
>>   drivers/net/enic/enic.h                   |  2 +-
>>   drivers/net/enic/enic_ethdev.c            |  4 +--
>>   drivers/net/enic/enic_main.c              | 11 +++++--
>>   drivers/net/failsafe/failsafe_ops.c       | 16 ++++++++--
>>   drivers/net/fm10k/fm10k_ethdev.c          | 10 ++++--
>>   drivers/net/hinic/base/hinic_pmd_niccfg.c | 14 ++++++---
>>   drivers/net/hinic/base/hinic_pmd_niccfg.h |  4 +--
>>   drivers/net/hinic/hinic_pmd_ethdev.c      | 25 +++++++++++----
>>   drivers/net/i40e/i40e_ethdev.c            |  6 ++--
>>   drivers/net/i40e/i40e_ethdev_vf.c         |  6 ++--
>>   drivers/net/i40e/i40e_vf_representor.c    |  4 +--
>>   drivers/net/iavf/iavf_ethdev.c            | 11 ++++---
>>   drivers/net/ice/ice_ethdev.c              |  6 ++--
>>   drivers/net/ipn3ke/ipn3ke_representor.c   | 14 +++++----
>>   drivers/net/ixgbe/ixgbe_ethdev.c          | 18 +++++++----
>>   drivers/net/kni/rte_eth_kni.c             |  4 ++-
>>   drivers/net/liquidio/lio_ethdev.c         | 23 ++++++++------
>>   drivers/net/memif/rte_eth_memif.c         |  4 ++-
>>   drivers/net/mlx4/mlx4.h                   |  2 +-
>>   drivers/net/mlx4/mlx4_ethdev.c            |  7 ++++-
>>   drivers/net/mlx5/mlx5.h                   |  4 +--
>>   drivers/net/mlx5/mlx5_stats.c             | 19 +++++++++---
>>   drivers/net/mvneta/mvneta_ethdev.c        | 11 +++++--
>>   drivers/net/mvpp2/mrvl_ethdev.c           | 16 +++++++---
>>   drivers/net/netvsc/hn_ethdev.c            | 15 ++++++---
>>   drivers/net/netvsc/hn_var.h               |  4 +--
>>   drivers/net/netvsc/hn_vf.c                | 13 +++++---
>>   drivers/net/nfp/nfp_net.c                 |  6 ++--
>>   drivers/net/null/rte_eth_null.c           |  6 ++--
>>   drivers/net/octeontx/octeontx_ethdev.c    |  8 ++---
>>   drivers/net/octeontx2/otx2_ethdev.h       |  4 +--
>>   drivers/net/octeontx2/otx2_stats.c        | 33 +++++++++++++-------
>>   drivers/net/pcap/rte_eth_pcap.c           |  4 ++-
>>   drivers/net/qede/qede_ethdev.c            |  8 +++--
>>   drivers/net/ring/rte_eth_ring.c           |  4 ++-
>>   drivers/net/sfc/sfc_ethdev.c              |  7 +++--
>>   drivers/net/szedata2/rte_eth_szedata2.c   |  4 ++-
>>   drivers/net/tap/rte_eth_tap.c             |  4 ++-
>>   drivers/net/thunderx/nicvf_ethdev.c       | 13 ++++++--
>>   drivers/net/vhost/rte_eth_vhost.c         |  8 +++--
>>   drivers/net/virtio/virtio_ethdev.c        |  6 ++--
>>   drivers/net/vmxnet3/vmxnet3_ethdev.c      |  6 ++--
>>   lib/librte_ethdev/rte_ethdev.c            | 12 ++++---
>>   lib/librte_ethdev/rte_ethdev.h            |  2 ++
>>   lib/librte_ethdev/rte_ethdev_core.h       |  4 +--
>>   61 files changed, 380 insertions(+), 169 deletions(-)
> 'nfb' driver was missing, updating it while merging.

Ops, thanks.

> <...>
>
>> @@ -72,7 +72,7 @@ typedef int (*eth_stats_get_t)(struct rte_eth_dev *dev,
>>   				struct rte_eth_stats *igb_stats);
>>   /**< @internal Get global I/O statistics of an Ethernet device. */
>>   
>> -typedef void (*eth_stats_reset_t)(struct rte_eth_dev *dev);
>> +typedef int (*eth_stats_reset_t)(struct rte_eth_dev *dev);
>>   /**< @internal Reset global I/O statistics of an Ethernet device to 0. */
>>   
>>   typedef int (*eth_xstats_get_t)(struct rte_eth_dev *dev,
>> @@ -85,7 +85,7 @@ typedef int (*eth_xstats_get_by_id_t)(struct rte_eth_dev *dev,
>>   				      unsigned int n);
>>   /**< @internal Get extended stats of an Ethernet device. */
>>   
>> -typedef void (*eth_xstats_reset_t)(struct rte_eth_dev *dev);
>> +typedef int (*eth_xstats_reset_t)(struct rte_eth_dev *dev);
>>   /**< @internal Reset extended stats of an Ethernet device. */
>>   
>>   typedef int (*eth_xstats_get_names_t)(struct rte_eth_dev *dev,
>>
> Adding following comments to the dev_ops while merging, please shout if needs
> update:
>
> -typedef void (*eth_stats_reset_t)(struct rte_eth_dev *dev);
> -/**< @internal Reset global I/O statistics of an Ethernet device to 0. */
> +/**
> + * @internal
> + * Reset global I/O statistics of an Ethernet device to 0.
> + *
> + * @param dev
> + *   ethdev handle of port.
> + *
> + * @return
> + *   Negative errno value on error, 0 on success.
> + *
> + * @retval 0
> + *   Success, statistics has been reset.
> + * @retval -ENOTSUP
> + *   Resetting statistics is not supported.
> + * @retval -EINVAL
> + *   Resetting statistics is not valid.
> + * @retval -ENOMEM
> + *   Not enough memory to get the stats.
> + */
> +typedef int (*eth_stats_reset_t)(struct rte_eth_dev *dev);
>
>   typedef int (*eth_xstats_get_t)(struct rte_eth_dev *dev,
>          struct rte_eth_xstat *stats, unsigned n);
> @@ -129,8 +147,26 @@ typedef int (*eth_xstats_get_by_id_t)(struct rte_eth_dev *dev,
>                                        unsigned int n);
>   /**< @internal Get extended stats of an Ethernet device. */
>
> -typedef void (*eth_xstats_reset_t)(struct rte_eth_dev *dev);
> -/**< @internal Reset extended stats of an Ethernet device. */
> +/**
> + * @internal
> + * Reset extended stats of an Ethernet device.
> + *
> + * @param dev
> + *   ethdev handle of port.
> + *
> + * @return
> + *   Negative errno value on error, 0 on success.
> + *
> + * @retval 0
> + *   Success, statistics has been reset.
> + * @retval -ENOTSUP
> + *   Resetting statistics is not supported.
> + * @retval -EINVAL
> + *   Resetting statistics is not valid.
> + * @retval -ENOMEM
> + *   Not enough memory to get the stats.
> + */
> +typedef int (*eth_xstats_reset_t)(struct rte_eth_dev *dev);

Thanks, LGTM


  reply	other threads:[~2019-09-24 13:04 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-06 14:34 [dpdk-dev] [PATCH 0/2] ethdev: change xstats reset function return value to int Andrew Rybchenko
2019-09-06 14:34 ` [dpdk-dev] [PATCH 1/2] " Andrew Rybchenko
2019-09-06 14:34 ` [dpdk-dev] [PATCH 2/2] ethdev: make stats and xstats reset callbacks return int Andrew Rybchenko
2019-09-24 11:56   ` Ferruh Yigit
2019-09-24 13:03     ` Andrew Rybchenko [this message]
2019-09-24 11:56 ` [dpdk-dev] [PATCH 0/2] ethdev: change xstats reset function return value to int Ferruh Yigit

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=db1391c6-08e8-25d5-a017-4cc570dfa251@solarflare.com \
    --to=arybchenko@solarflare.com \
    --cc=ajit.khaparde@broadcom.com \
    --cc=alejandro.lucero@netronome.com \
    --cc=allain.legacy@windriver.com \
    --cc=beilei.xing@intel.com \
    --cc=bruce.richardson@intel.com \
    --cc=cernay@netcope.com \
    --cc=chas3@att.com \
    --cc=cloud.wangxiaoyun@huawei.com \
    --cc=dev@dpdk.org \
    --cc=ed.czeck@atomicrules.com \
    --cc=ferruh.yigit@intel.com \
    --cc=g.singh@nxp.com \
    --cc=gaetan.rivet@6wind.com \
    --cc=haiyangz@microsoft.com \
    --cc=hemant.agrawal@nxp.com \
    --cc=hyonkim@cisco.com \
    --cc=igor.romanov@oktetlabs.ru \
    --cc=igor.russkikh@aquantia.com \
    --cc=jerinj@marvell.com \
    --cc=jgrajcia@cisco.com \
    --cc=jingjing.wu@intel.com \
    --cc=john.miller@atomicrules.com \
    --cc=johndale@cisco.com \
    --cc=keith.wiles@intel.com \
    --cc=kirankumark@marvell.com \
    --cc=konstantin.ananyev@intel.com \
    --cc=kys@microsoft.com \
    --cc=linville@tuxdriver.com \
    --cc=lironh@marvell.com \
    --cc=matan@mellanox.com \
    --cc=matt.peters@windriver.com \
    --cc=maxime.coquelin@redhat.com \
    --cc=mczekaj@marvell.com \
    --cc=mtetsuyah@gmail.com \
    --cc=ndabilpuram@marvell.com \
    --cc=pavel.belous@aquantia.com \
    --cc=qi.z.zhang@intel.com \
    --cc=qiming.yang@intel.com \
    --cc=rahul.lakkireddy@chelsio.com \
    --cc=ravi1.kumar@amd.com \
    --cc=remes@netcope.com \
    --cc=rmody@marvell.com \
    --cc=rosen.xu@intel.com \
    --cc=sachin.saxena@nxp.com \
    --cc=shahafs@mellanox.com \
    --cc=shepard.siegel@atomicrules.com \
    --cc=shshaikh@marvell.com \
    --cc=somnath.kotur@broadcom.com \
    --cc=srinivasan@marvell.com \
    --cc=sthemmin@microsoft.com \
    --cc=sthotton@marvell.com \
    --cc=tdu@semihalf.com \
    --cc=thomas@monjalon.net \
    --cc=tiwei.bie@intel.com \
    --cc=viacheslavo@mellanox.com \
    --cc=wenzhuo.lu@intel.com \
    --cc=xiao.w.wang@intel.com \
    --cc=xiaolong.ye@intel.com \
    --cc=xuanziyang2@huawei.com \
    --cc=yongwang@vmware.com \
    --cc=yskoh@mellanox.com \
    --cc=zhihong.wang@intel.com \
    --cc=zhouguoyang@huawei.com \
    --cc=zr@semihalf.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 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).