test suite reviews and discussions
 help / color / mirror / Atom feed
From: "Tu, Lijuan" <lijuan.tu@intel.com>
To: "Chen, Zhaoyan" <zhaoyan.chen@intel.com>, "dts@dpdk.org" <dts@dpdk.org>
Cc: "Chen, Zhaoyan" <zhaoyan.chen@intel.com>
Subject: Re: [dts] [PATCH V1] Add ABI negative test case
Date: Fri, 13 Mar 2020 06:33:10 +0000	[thread overview]
Message-ID: <8CE3E05A3F976642AAB0F4675D0AD20E0BBEC7A7@SHSMSX101.ccr.corp.intel.com> (raw)
In-Reply-To: <20200309045901.175399-1-zhaoyan.chen@intel.com>

Applied, thanks

> -----Original Message-----
> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Chen, Zhaoyan
> Sent: Monday, March 9, 2020 12:59 PM
> To: dts@dpdk.org
> Cc: Chen, Zhaoyan <zhaoyan.chen@intel.com>
> Subject: [dts] [PATCH V1] Add ABI negative test case
> 
> Add ABI negative test case for checking ABI test suite.
> 
> ---
>  test_plans/ABI_stable_test.rst | 150 +++++++++++++++++++++++++++++++++
>  1 file changed, 150 insertions(+)
> 
> diff --git a/test_plans/ABI_stable_test.rst b/test_plans/ABI_stable_test.rst
> index bc8deb4..ab2fd7e 100644
> --- a/test_plans/ABI_stable_test.rst
> +++ b/test_plans/ABI_stable_test.rst
> @@ -148,3 +148,153 @@ Execute Test Suites
>    +-------------------------------+------------------------+
>    |   l3fwd                        |     performance         |
>    +-------------------------------+------------------------+
> +
> +
> +Negative Test Case
> +==================
> +
> +Prepare 1 patch file, 0001-rte_tx_burst_t_add-one-argument-at-the-
> end.patch ::
> +
> +  From 56eb4b14c2344fddc9f8ee1c6b5cf9ef4999ee80 Mon Sep 17 00:00:00
> + 2001
> +  From: Herakliusz Lipiec <herakliusz.lipiec@intel.com>
> +  Date: Thu, 30 Jan 2020 17:19:19 +0000
> +  Subject: [PATCH] eth_tx_burst_t add one argument at the end
> +
> +  compile with:
> +  meson configure
> + -Ddisable_drivers=net/af_packet,net/ark,net/atlantic,net/avp,net/axgbe
> + ,net/bond,net/bnx2x,net/bnxt,net/cxgbe,net/dpaa,net/dpaa2,net/e1000,n
> e
> + t/ena,net/enetc,net/enic,net/fm10k,net/i40e,net/hinic,net/hns3,net/iav
> + f,net/ice,net/kni,net/liquidio,net/memif,net/netvsc,net/nfp,net/null,n
> + et/octeontx,net/octeontx2,net/pcap,net/pfe,net/qede,net/sfc,net/softni
> + c,net/tap,net/thunderx,net/vdev_netvsc,net/vhost,net/virtio,net/vmxnet
> +
> 3,common/cpt,common/dpaax,common/iavf,common/octeontx2,bus/dpaa,
> bus/fs
> +
> lmc,bus/ifpga,bus/vmbus,mempool/bucket,mempool/dpaa,mempool/dpaa
> 2,memp
> +
> ool/octeontx2,mempool/stack,raw/dpaa2_cmdif,raw/dpaa2_qdma,raw/ioat
> ,ra
> +
> w/ntb,raw/octeontx2_dma,raw/octeontx2_ep,raw/skeleton,crypto/caam_jr,
> c
> + rypto/ccp,crypto/dpaa_sec,crypto/dpaa2_sec,crypto/nitrox,crypto/null_c
> + rypto,crypto/octeontx_crypto,crypto/octeontx2_crypto,crypto/openssl,cr
> + ypto/crypto_scheduler,crypto/virtio_crypto,vdpa/ifc,event/dpaa,event/d
> +
> paa2,event/octeontx2,event/opdl,event/skeleton,event/sw,event/dsw,even
> +
> t/octeontx,baseband/null,baseband/turbo_sw,baseband/fpga_lte_fec,net/f
> + ailsafe
> +
> +  Signed-off-by: Herakliusz Lipiec <herakliusz.lipiec@intel.com>
> +  ---
> +  drivers/net/ixgbe/ixgbe_ethdev.h         |  4 ++--
> +  drivers/net/ixgbe/ixgbe_rxtx.c           | 10 +++++-----
> +  drivers/net/ixgbe/ixgbe_vf_representor.c |  2 +-
> +  lib/librte_ethdev/rte_ethdev.h           |  2 +-
> +  lib/librte_ethdev/rte_ethdev_core.h      |  2 +-
> +  5 files changed, 10 insertions(+), 10 deletions(-)
> +
> +  diff --git a/drivers/net/ixgbe/ixgbe_ethdev.h
> + b/drivers/net/ixgbe/ixgbe_ethdev.h
> +  index e1cd8fd16..f5fce74fc 100644
> +  --- a/drivers/net/ixgbe/ixgbe_ethdev.h
> +  +++ b/drivers/net/ixgbe/ixgbe_ethdev.h
> +  @@ -642,10 +642,10 @@ uint16_t ixgbe_recv_pkts_lro_bulk_alloc(void
> *rx_queue,
> +      struct rte_mbuf **rx_pkts, uint16_t nb_pkts);
> +
> +  uint16_t ixgbe_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts,
> +  -		uint16_t nb_pkts);
> +  +		uint16_t nb_pkts, uint32_t dummy);
> +
> +  uint16_t ixgbe_xmit_pkts_simple(void *tx_queue, struct rte_mbuf
> **tx_pkts,
> +  -		uint16_t nb_pkts);
> +  +		uint16_t nb_pkts, uint32_t dummy);
> +
> +  uint16_t ixgbe_prep_pkts(void *tx_queue, struct rte_mbuf **tx_pkts,
> +      uint16_t nb_pkts);
> +  diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c
> + b/drivers/net/ixgbe/ixgbe_rxtx.c  index 7b398f1a1..198be146a 100644
> +  --- a/drivers/net/ixgbe/ixgbe_rxtx.c
> +  +++ b/drivers/net/ixgbe/ixgbe_rxtx.c
> +  @@ -315,10 +315,10 @@ tx_xmit_pkts(void *tx_queue, struct rte_mbuf
> + **tx_pkts,
> +
> +  uint16_t
> +  ixgbe_xmit_pkts_simple(void *tx_queue, struct rte_mbuf **tx_pkts,
> +  -		       uint16_t nb_pkts)
> +  +		       uint16_t nb_pkts, uint32_t dummy)
> +  {
> +    uint16_t nb_tx;
> +  -
> +  +	dummy += 1;
> +    /* Try to transmit at least chunks of TX_MAX_BURST pkts */
> +    if (likely(nb_pkts <= RTE_PMD_IXGBE_TX_MAX_BURST))
> +      return tx_xmit_pkts(tx_queue, tx_pkts, nb_pkts);  @@ -341,7
> + +341,7 @@ ixgbe_xmit_pkts_simple(void *tx_queue, struct rte_mbuf
> + **tx_pkts,
> +
> +  static uint16_t
> +  ixgbe_xmit_pkts_vec(void *tx_queue, struct rte_mbuf **tx_pkts,
> +  -		    uint16_t nb_pkts)
> +  +		    uint16_t nb_pkts, __rte_unused uint32_t dummy)
> +  {
> +    uint16_t nb_tx = 0;
> +    struct ixgbe_tx_queue *txq = (struct ixgbe_tx_queue *)tx_queue;  @@
> + -622,7 +622,7 @@ ixgbe_xmit_cleanup(struct ixgbe_tx_queue *txq)
> +
> +  uint16_t
> +  ixgbe_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts,
> +  -		uint16_t nb_pkts)
> +  +		uint16_t nb_pkts, uint32_t dummy)
> +  {
> +    struct ixgbe_tx_queue *txq;
> +    struct ixgbe_tx_entry *sw_ring;
> +  @@ -648,7 +648,7 @@ ixgbe_xmit_pkts(void *tx_queue, struct rte_mbuf
> + **tx_pkts,  #ifdef RTE_LIBRTE_SECURITY
> +    uint8_t use_ipsec;
> +  #endif
> +  -
> +  +	dummy += 1;
> +    tx_offload.data[0] = 0;
> +    tx_offload.data[1] = 0;
> +    txq = tx_queue;
> +  diff --git a/drivers/net/ixgbe/ixgbe_vf_representor.c
> + b/drivers/net/ixgbe/ixgbe_vf_representor.c
> +  index dbbef294a..47b41992d 100644
> +  --- a/drivers/net/ixgbe/ixgbe_vf_representor.c
> +  +++ b/drivers/net/ixgbe/ixgbe_vf_representor.c
> +  @@ -164,7 +164,7 @@ ixgbe_vf_representor_rx_burst(__rte_unused void
> + *rx_queue,
> +
> +  static uint16_t
> +  ixgbe_vf_representor_tx_burst(__rte_unused void *tx_queue,
> +  -	__rte_unused struct rte_mbuf **tx_pkts, __rte_unused uint16_t
> nb_pkts)
> +  +	__rte_unused struct rte_mbuf **tx_pkts, __rte_unused uint16_t
> nb_pkts, __rte_unused uint32_t dummy)
> +  {
> +    return 0;
> +  }
> +  diff --git a/lib/librte_ethdev/rte_ethdev.h
> + b/lib/librte_ethdev/rte_ethdev.h  index d1a593ad1..ba6c36155 100644
> +  --- a/lib/librte_ethdev/rte_ethdev.h
> +  +++ b/lib/librte_ethdev/rte_ethdev.h
> +  @@ -4663,7 +4663,7 @@ rte_eth_tx_burst(uint16_t port_id, uint16_t
> queue_id,
> +    }
> +  #endif
> +
> +  -	return (*dev->tx_pkt_burst)(dev->data->tx_queues[queue_id],
> tx_pkts, nb_pkts);
> +  +	return (*dev->tx_pkt_burst)(dev->data->tx_queues[queue_id],
> tx_pkts, nb_pkts, 5);
> +  }
> +
> +  /**
> +  diff --git a/lib/librte_ethdev/rte_ethdev_core.h
> + b/lib/librte_ethdev/rte_ethdev_core.h
> +  index 7bf97e24e..8a173574c 100644
> +  --- a/lib/librte_ethdev/rte_ethdev_core.h
> +  +++ b/lib/librte_ethdev/rte_ethdev_core.h
> +  @@ -344,7 +344,7 @@ typedef uint16_t (*eth_rx_burst_t)(void *rxq,
> +
> +  typedef uint16_t (*eth_tx_burst_t)(void *txq,
> +            struct rte_mbuf **tx_pkts,
> +  -				   uint16_t nb_pkts);
> +  +				   uint16_t nb_pkts, uint32_t dummy);
> +  /**< @internal Send output packets on a transmit queue of an Ethernet
> + device. */
> +
> +  typedef uint16_t (*eth_tx_prep_t)(void *txq,
> +  --
> +  2.17.2
> +
> +
> +Apply negative patch to rte_eth_dev structure and ixgbe pmd driver,
> +inject 4 bytes in tx_burst.
> +::
> +
> +  git apply 0001-rte_tx_burst_t_add-one-argument-at-the-end.patch
> +
> +Build shared libraries, (just enable i40e pmd for testing)::
> +
> +  meson configure
> + -Ddisable_drivers=net/af_packet,net/ark,net/atlantic,net/avp,net/axgbe
> + ,net/bond,net/bnx2x,net/bnxt,net/cxgbe,net/dpaa,net/dpaa2,net/e1000,n
> e
> + t/ena,net/enetc,net/enic,net/fm10k,net/hinic,net/hns3,net/iavf,net/ice
> + ,net/kni,net/liquidio,net/memif,net/netvsc,net/nfp,net/null,net/octeon
> + tx,net/octeontx2,net/pcap,net/pfe,net/qede,net/sfc,net/softnic,net/tap
> + ,net/thunderx,net/vdev_netvsc,net/vhost,net/virtio,net/vmxnet3,common
> /
> +
> cpt,common/dpaax,common/iavf,common/octeontx2,bus/dpaa,bus/fslmc,b
> us/i
> +
> fpga,bus/vmbus,mempool/bucket,mempool/dpaa,mempool/dpaa2,mempo
> ol/octeo
> +
> ntx2,mempool/stack,raw/dpaa2_cmdif,raw/dpaa2_qdma,raw/ioat,raw/ntb,
> raw
> +
> /octeontx2_dma,raw/octeontx2_ep,raw/skeleton,crypto/caam_jr,crypto/ccp
> + ,crypto/dpaa_sec,crypto/dpaa2_sec,crypto/nitrox,crypto/null_crypto,cry
> + pto/octeontx_crypto,crypto/octeontx2_crypto,crypto/openssl,crypto/cryp
> + to_scheduler,crypto/virtio_crypto,vdpa/ifc,event/dpaa,event/dpaa2,even
> + t/octeontx2,event/opdl,event/skeleton,event/sw,event/dsw,event/octeont
> + x,baseband/null,baseband/turbo_sw,baseband/fpga_lte_fec,net/failsafe
> +  meson  --werror -Dexamples=all --buildtype=debugoptimized
> + --default-library=shared ./devtools/.. ./build-gcc-shared  ninja -C
> + ./build-gcc-shared
> +
> +Run testpmd application refer to Common Test steps with ixgbe pmd NIC.::
> +
> +  testpmd -c 0xf -n 4 -d <dpdk_2002> -w 18:00.0 -- -i
> +
> +Test txonly::
> +
> +  set fwd txonly
> +  start
> +
> +Expect there is no error happended
> --
> 2.22.0


      reply	other threads:[~2020-03-13  6:33 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-09  4:59 Chen, Zhaoyan
2020-03-13  6:33 ` Tu, Lijuan [this message]

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=8CE3E05A3F976642AAB0F4675D0AD20E0BBEC7A7@SHSMSX101.ccr.corp.intel.com \
    --to=lijuan.tu@intel.com \
    --cc=dts@dpdk.org \
    --cc=zhaoyan.chen@intel.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).