#
538da7a1 |
| 21-May-2019 |
Olivier Matz <olivier.matz@6wind.com> |
net: add rte prefix to ether functions
Add 'rte_' prefix to functions: - rename is_same_ether_addr() as rte_is_same_ether_addr(). - rename is_zero_ether_addr() as rte_is_zero_ether_addr(). - rename
net: add rte prefix to ether functions
Add 'rte_' prefix to functions: - rename is_same_ether_addr() as rte_is_same_ether_addr(). - rename is_zero_ether_addr() as rte_is_zero_ether_addr(). - rename is_unicast_ether_addr() as rte_is_unicast_ether_addr(). - rename is_multicast_ether_addr() as rte_is_multicast_ether_addr(). - rename is_broadcast_ether_addr() as rte_is_broadcast_ether_addr(). - rename is_universal_ether_addr() as rte_is_universal_ether_addr(). - rename is_local_admin_ether_addr() as rte_is_local_admin_ether_addr(). - rename is_valid_assigned_ether_addr() as rte_is_valid_assigned_ether_addr(). - rename eth_random_addr() as rte_eth_random_addr(). - rename ether_addr_copy() as rte_ether_addr_copy(). - rename ether_format_addr() as rte_ether_format_addr().
Signed-off-by: Olivier Matz <olivier.matz@6wind.com> Reviewed-by: Stephen Hemminger <stephen@networkplumber.org> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
show more ...
|
#
6d13ea8e |
| 21-May-2019 |
Olivier Matz <olivier.matz@6wind.com> |
net: add rte prefix to ether structures
Add 'rte_' prefix to structures: - rename struct ether_addr as struct rte_ether_addr. - rename struct ether_hdr as struct rte_ether_hdr. - rename struct vlan_
net: add rte prefix to ether structures
Add 'rte_' prefix to structures: - rename struct ether_addr as struct rte_ether_addr. - rename struct ether_hdr as struct rte_ether_hdr. - rename struct vlan_hdr as struct rte_vlan_hdr. - rename struct vxlan_hdr as struct rte_vxlan_hdr. - rename struct vxlan_gpe_hdr as struct rte_vxlan_gpe_hdr.
Do not update the command line library to avoid adding a dependency to librte_net.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com> Reviewed-by: Stephen Hemminger <stephen@networkplumber.org> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
show more ...
|
#
a9de470c |
| 26-Feb-2019 |
Bruce Richardson <bruce.richardson@intel.com> |
test: move to app directory
Since all other apps have been moved to the "app" folder, the autotest app remains alone in the test folder. Rather than having an entire top-level folder for this, we ca
test: move to app directory
Since all other apps have been moved to the "app" folder, the autotest app remains alone in the test folder. Rather than having an entire top-level folder for this, we can move it back to where it all started in early versions of DPDK - the "app/" folder.
This move has a couple of advantages: * This reduces clutter at the top level of the project, due to one less folder. * It eliminates the separate build task necessary for building the autotests using make "make test-build" which means that developers are less likely to miss something in their own compilation tests * It re-aligns the final location of the test binary in the app folder when building with make with it's location in the source tree.
For meson builds, the autotest app is different from the other apps in that it needs a series of different test cases defined for it for use by "meson test". Therefore, it does not get built as part of the main loop in the app folder, but gets built separately at the end.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
#
7d3b1ec4 |
| 16-Feb-2017 |
Ferruh Yigit <ferruh.yigit@intel.com> |
test: move unit tests to separate directory
This is to logically group unit tests into their own folder, separating them from "app" folder.
Hopefully this will make the unit test in DPDK more visib
test: move unit tests to separate directory
This is to logically group unit tests into their own folder, separating them from "app" folder.
Hopefully this will make the unit test in DPDK more visible.
Following binaries moved to "test" folder: cmdline-test test-acl test-pipeline test <-- various DPDK unit tests
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
#
26e09db6 |
| 13-Jul-2016 |
Thomas Monjalon <thomas.monjalon@6wind.com> |
app/test: rework command registration
The tests are registered with their command name by adding a structure to a list. The structure of each test was declared in each test file and passed to the re
app/test: rework command registration
The tests are registered with their command name by adding a structure to a list. The structure of each test was declared in each test file and passed to the register macro. This rework generate the structure inside the register macro.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com> Reviewed-by: Jan Viktorin <viktorin@rehivetech.com>
show more ...
|
#
b4e0f64f |
| 03-May-2016 |
Mauricio Vasquez B <mauricio.vasquezbernal@studenti.polito.it> |
examples: remove useless check of port count
The rte_eth_dev_count() function will never return a value greater than RTE_MAX_ETHPORTS, so that checking is useless.
Signed-off-by: Mauricio Vasquez B
examples: remove useless check of port count
The rte_eth_dev_count() function will never return a value greater than RTE_MAX_ETHPORTS, so that checking is useless.
Signed-off-by: Mauricio Vasquez B <mauricio.vasquezbernal@studenti.polito.it> Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
show more ...
|
#
09419f23 |
| 31-Mar-2016 |
Thomas Monjalon <thomas.monjalon@6wind.com> |
ethdev: use constants for link state
Define and use ETH_LINK_UP and ETH_LINK_DOWN where appropriate.
Signed-off-by: Marc Sune <marcdevel@gmail.com> Signed-off-by: Thomas Monjalon <thomas.monjalon@6
ethdev: use constants for link state
Define and use ETH_LINK_UP and ETH_LINK_DOWN where appropriate.
Signed-off-by: Marc Sune <marcdevel@gmail.com> Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
show more ...
|
#
555b78e6 |
| 23-Nov-2015 |
David Hunt <david.hunt@intel.com> |
app/test: fix crash in performance test
Fix crash in pmd_perf_test autotest (div by 0) when no packets received Also fixes the fact that the test passes even if exec_burst fails
To repeat the issue
app/test: fix crash in performance test
Fix crash in pmd_perf_test autotest (div by 0) when no packets received Also fixes the fact that the test passes even if exec_burst fails
To repeat the issue: The system must be incorrectly set up so that all packets will be lost, i.e. no loopback cable, etc. This is an edge case, but still the test should not crash or pass when failing. run the test app RTE>> set_rxtx_sc poll_before_xmit RTE>> pmd_perf_autotest --snip-- > Generate 4096 packets @socket 1 > start to receive total expect 4096 > 4096 packets lost, IDLE 10000 times > Floating point exception (core dumped)
Signed-off-by: David Hunt <david.hunt@intel.com>
show more ...
|
#
f72a0fa6 |
| 06-Nov-2015 |
Stephen Hemminger <stephen@networkplumber.org> |
app/testpmd: remove references to deprecated statistics
Some of the statistics are deprecated, so don't test them.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
|
#
71f39b07 |
| 10-Nov-2015 |
Konstantin Ananyev <konstantin.ananyev@intel.com> |
ixgbe: fix Tx hang when RS distance exceeds HW limit
One of the ways to reproduce the issue:
testpmd <EAL-OPTIONS> -- -i --txqflags=0 testpmd> set fwd txonly testpmd> set txpkts 64,4,4,4,4,4,4,4,4,
ixgbe: fix Tx hang when RS distance exceeds HW limit
One of the ways to reproduce the issue:
testpmd <EAL-OPTIONS> -- -i --txqflags=0 testpmd> set fwd txonly testpmd> set txpkts 64,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4 testpmd> set txsplit rand testpmd> start
After some time TX on ixgbe queue will hang, and all packet transmission on that queue will stop.
This bug was first reported and investigated by Vlad Zolotarov <vladz@cloudius-systems.com>: "We can reproduce this issue when stressed the xmit path with a lot of highly fragmented TCP frames (packets with up to 33 fragments with non-headers fragments as small as 4 bytes) with all offload features enabled."
The root cause is that ixgbe_xmit_pkts() in some cases violates the HW rule that the distance between TDs with RS bit set should not exceed 40 TDs.
>From the latest 82599 spec update: "When WTHRESH is set to zero, the software device driver should set the RS bit in the Tx descriptors with the EOP bit set and at least once in the 40 descriptors."
The fix is to make sure that the distance between TDs with RS bit set would never exceed HW limit. As part of that fix, tx_rs_thresh for ixgbe PMD is not allowed to be greater then to 32 to comply with HW restrictions.
With that fix slight slowdown for the full-featured ixgbe TX path might be observed (from our testing - up to 4%).
ixgbe simple TX path is unaffected by that patch.
Reported-by: Vlad Zolotarov <vladz@cloudius-systems.com> Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
show more ...
|
#
824cb29c |
| 29-Apr-2015 |
Konstantin Ananyev <konstantin.ananyev@intel.com> |
apps: fix default mbuf size
Latest mbuf changes (priv_size addition and related fixes) exposed small problem with testpmd and few other sample apps: when mbuf size is exaclty 2KB or less, that cause
apps: fix default mbuf size
Latest mbuf changes (priv_size addition and related fixes) exposed small problem with testpmd and few other sample apps: when mbuf size is exaclty 2KB or less, that causes ixgbe PMD to select scattered RX even for configs with 'normal' max packet length (max_rx_pkt_len == ETHER_MAX_LEN). To overcome that problem and unify the code, new macro was created to represent recommended minimal buffer length for mbuf. When appropriate, samples are updated to use that macro.
Fixes: dfb03bbe2b ("app/testpmd: use standard functions to initialize mbufs and mbuf pool")
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com> Acked-by: Olivier Matz <olivier.matz@6wind.com>
show more ...
|
#
ea0c20ea |
| 22-Apr-2015 |
Olivier Matz <olivier.matz@6wind.com> |
apps: use helper to create mbuf pools
When it's possible, use the new helper to create the mbuf pools. Most of the patch is trivial, except for the following files that have some specifics (indirect
apps: use helper to create mbuf pools
When it's possible, use the new helper to create the mbuf pools. Most of the patch is trivial, except for the following files that have some specifics (indirect mbufs): - ip_fragmentation - ip_pipeline - ipv4_multicast - vhost
Signed-off-by: Olivier Matz <olivier.matz@6wind.com> Acked-by: Neil Horman <nhorman@tuxdriver.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
show more ...
|
#
6e6b34fb |
| 20-Feb-2015 |
Maciej Gajdzica <maciejx.t.gajdzica@intel.com> |
app/test: add unit tests for link bonding mode 6
Added 4 unit tests checking link bonding mode 6 behavior.
Also modified virtual_pmd so it is possible to provide packets, that should be received wi
app/test: add unit tests for link bonding mode 6
Added 4 unit tests checking link bonding mode 6 behavior.
Also modified virtual_pmd so it is possible to provide packets, that should be received with rx_burst and to inspect packets transmitted by tx_burst.
In packet_burst_generator.c function creating eth_header is modified, so it accepts ether_type as a parameter and function creating arp_header is added. Updated other unit tests to get rid of compilation errors.
Signed-off-by: Maciej Gajdzica <maciejx.t.gajdzica@intel.com> Acked-by: Declan Doherty <declan.doherty@intel.com>
show more ...
|
#
ecd9d519 |
| 30-Jan-2015 |
Declan Doherty <declan.doherty@intel.com> |
bond: remove offload flags from transmit policy checks
The Link bonding library is incorrectly using receive packet type flags in the transmit policy hashing functions, which would cause packets gen
bond: remove offload flags from transmit policy checks
The Link bonding library is incorrectly using receive packet type flags in the transmit policy hashing functions, which would cause packets generated locally to be incorrectly distributed across the slave devices. This patch completely removes the dependency on the packet type flags and uses the ether_type from either the Ethernet header or the VLAN headers for branching.
This patch also includes the associate changes in the test suite and in the packet_burst_generator code to remove the dependences on the packet type flags.
Signed-off-by: Declan Doherty <declan.doherty@intel.com> Reviewed-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
show more ...
|
#
fdf20fa7 |
| 19-Nov-2014 |
Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com> |
add prefix to cache line macros
CACHE_LINE_SIZE is a macro defined in machine/param.h in FreeBSD and conflicts with DPDK macro version. Adding RTE_ prefix to avoid conflicts. CACHE_LINE_MASK and CAC
add prefix to cache line macros
CACHE_LINE_SIZE is a macro defined in machine/param.h in FreeBSD and conflicts with DPDK macro version. Adding RTE_ prefix to avoid conflicts. CACHE_LINE_MASK and CACHE_LINE_ROUNDUP are also prefixed.
Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com> [Thomas: updated on HEAD, including PPC]
show more ...
|
#
002ade70 |
| 12-Nov-2014 |
Cunming Liang <cunming.liang@intel.com> |
app/test: measure cycles per packet in Rx/Tx
The unit test can be used to measure cycles per packet in different rx/tx routines. The NIC works in loopback mode. So it doesn't require test equipment
app/test: measure cycles per packet in Rx/Tx
The unit test can be used to measure cycles per packet in different rx/tx routines. The NIC works in loopback mode. So it doesn't require test equipment to measure throughput. As result, the unit test shows the average cycles per packet consuming. When doing the test, make sure the link is UP.
Usage Example: 1. Run unit test app in interactive mode app/test -c f -n 4 -- -i 2. Run and wait for the result pmd_perf_autotest
There's option to choose rx/tx pair, default is vector. set_rxtx_mode [vector|scalar|full|hybrid] Note: To get acurate scalar fast, please choose 'vector' or 'hybrid' without INC_VEC=y in config
It supports to measure standalone rx or tx. Usage Example: Choose rx or tx standalone, default is both set_rxtx_anchor [rxtx|rxonly|txonly]
It also supports to measure standalone RX burst cycles. In this way, it won't repeat re-send received packets. Now it measures two situations, poll before/after xmit(w or w/o desc. cache conflict) Usage Example: Set stream control mode, by default is continuous set_rxtx_sc [continuous|poll_before_xmit|poll_after_xmit]
Test report: http://dpdk.org/ml/archives/dev/2014-October/007145.html
Signed-off-by: Cunming Liang <cunming.liang@intel.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Neil Horman <nhorman@tuxdriver.com> Tested-by: Yong Liu <yong.liu@intel.com>
show more ...
|