DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf
@ 2014-12-11 17:08 Pablo de Lara
  2014-12-11 19:56 ` De Lara Guarch, Pablo
  2014-12-11 21:18 ` [dpdk-dev] [PATCH v2] vmxnet3: set txq_flags in default TX conf Pablo de Lara
  0 siblings, 2 replies; 7+ messages in thread
From: Pablo de Lara @ 2014-12-11 17:08 UTC (permalink / raw)
  To: dev; +Cc: root

Since commit fbde27f19ab8f "get default Rx/Tx configuration from dev info",
a default RX/TX configuration can be used for all PMDs.
In case of vmxnet3, the whole structure was zeroed and not filled out.
The PMD does not support multi segments or offload functions,
so txq_flags should have those flags set.

Signed-off-by: root <root@sie-lab-214-174.ir.intel.com>
---
 lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
index 963a8a5..ef0af16 100644
--- a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
+++ b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
@@ -642,6 +642,9 @@ vmxnet3_dev_info_get(__attribute__((unused))struct rte_eth_dev *dev, struct rte_
 	dev_info->min_rx_bufsize = 1518 + RTE_PKTMBUF_HEADROOM;
 	dev_info->max_rx_pktlen = 16384; /* includes CRC, cf MAXFRS register */
 	dev_info->max_mac_addrs = VMXNET3_MAX_MAC_ADDRS;
+
+	dev_info->default_txconf.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
+						ETH_TXQ_FLAGS_NOOFFLOADS;
 }
 
 /* return 0 means link status changed, -1 means not changed */
-- 
1.7.4.1

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf
  2014-12-11 17:08 [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf Pablo de Lara
@ 2014-12-11 19:56 ` De Lara Guarch, Pablo
  2014-12-12  6:48   ` Zhang, XiaonanX
  2014-12-17  8:59   ` [dpdk-dev] vmxnet3 and Linux FC20 OS platform, example directory could not compiled success Zhang, XiaonanX
  2014-12-11 21:18 ` [dpdk-dev] [PATCH v2] vmxnet3: set txq_flags in default TX conf Pablo de Lara
  1 sibling, 2 replies; 7+ messages in thread
From: De Lara Guarch, Pablo @ 2014-12-11 19:56 UTC (permalink / raw)
  To: De Lara Guarch, Pablo, dev



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Pablo de Lara
> Sent: Thursday, December 11, 2014 5:08 PM
> To: dev@dpdk.org
> Cc: root
> Subject: [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf
> 
> Since commit fbde27f19ab8f "get default Rx/Tx configuration from dev info",
> a default RX/TX configuration can be used for all PMDs.
> In case of vmxnet3, the whole structure was zeroed and not filled out.
> The PMD does not support multi segments or offload functions,
> so txq_flags should have those flags set.
> 
> Signed-off-by: root <root@sie-lab-214-174.ir.intel.com>

Self-NACK. Wrong signed-off.

> ---
>  lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
> 
> diff --git a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> index 963a8a5..ef0af16 100644
> --- a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> +++ b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> @@ -642,6 +642,9 @@
> vmxnet3_dev_info_get(__attribute__((unused))struct rte_eth_dev *dev,
> struct rte_
>  	dev_info->min_rx_bufsize = 1518 + RTE_PKTMBUF_HEADROOM;
>  	dev_info->max_rx_pktlen = 16384; /* includes CRC, cf MAXFRS
> register */
>  	dev_info->max_mac_addrs = VMXNET3_MAX_MAC_ADDRS;
> +
> +	dev_info->default_txconf.txq_flags =
> ETH_TXQ_FLAGS_NOMULTSEGS |
> +
> 	ETH_TXQ_FLAGS_NOOFFLOADS;
>  }
> 
>  /* return 0 means link status changed, -1 means not changed */
> --
> 1.7.4.1

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [dpdk-dev] [PATCH v2] vmxnet3: set txq_flags in default TX conf
  2014-12-11 17:08 [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf Pablo de Lara
  2014-12-11 19:56 ` De Lara Guarch, Pablo
@ 2014-12-11 21:18 ` Pablo de Lara
  2014-12-17  0:07   ` Thomas Monjalon
  1 sibling, 1 reply; 7+ messages in thread
From: Pablo de Lara @ 2014-12-11 21:18 UTC (permalink / raw)
  To: dev

Since commit fbde27f19ab8f "get default Rx/Tx configuration from dev info",
a default RX/TX configuration can be used for all PMDs.
In case of vmxnet3, the whole structure was zeroed and not filled out.
The PMD does not support multi segments or offload functions,
so txq_flags should have those flags set.

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
---
 lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
index 963a8a5..ef0af16 100644
--- a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
+++ b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
@@ -642,6 +642,9 @@ vmxnet3_dev_info_get(__attribute__((unused))struct rte_eth_dev *dev, struct rte_
 	dev_info->min_rx_bufsize = 1518 + RTE_PKTMBUF_HEADROOM;
 	dev_info->max_rx_pktlen = 16384; /* includes CRC, cf MAXFRS register */
 	dev_info->max_mac_addrs = VMXNET3_MAX_MAC_ADDRS;
+
+	dev_info->default_txconf.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
+						ETH_TXQ_FLAGS_NOOFFLOADS;
 }
 
 /* return 0 means link status changed, -1 means not changed */
-- 
1.7.4.1

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf
  2014-12-11 19:56 ` De Lara Guarch, Pablo
@ 2014-12-12  6:48   ` Zhang, XiaonanX
  2014-12-17  8:59   ` [dpdk-dev] vmxnet3 and Linux FC20 OS platform, example directory could not compiled success Zhang, XiaonanX
  1 sibling, 0 replies; 7+ messages in thread
From: Zhang, XiaonanX @ 2014-12-12  6:48 UTC (permalink / raw)
  To: De Lara Guarch, Pablo, dev, Cao, Waterman, Thomas Monjalon

Tested-by: Xiaonan Zhang <xiaonanx.zhang@intel.com>

- Tested Commit: Pablo
- OS: Fedora20 3.15.8-200.fc20.x86_64
- GCC: gcc version 4.8.3 20140624
- CPU: Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
- NIC: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection [8086:10fb]
- Default x86_64-native-linuxapp-gcc configuration
- Total 6 cases, 6 passed, 0 failed
- Test Environment setup

- Topology #1: Create 2VMs (Fedora 20, 64bit);for each VM, pass through one physical port(Niantic 82599) to VM, and also create one virtual device: vmxnet3 in VM. Between two VMs, use one vswitch to connect 2 vmxnet3. In summary, PF1 
               and vmxnet3A are in VM1; PF2 and vmxnet3B are in VM2.The traffic flow for l2fwd/l3fwd is as below:                            
               Ixia -> PF1 -> vmxnet3A -> vswitch -> vmxnet3B -> PF2 -> Ixia. 
- Topology #2: Create 1VM (Fedora 20, 64bit), on this VM, created 2 vmxnet3, called vmxnet3A, vmxnet3B; create 2 vswitch, vswitchA connecting PF1 and vmxnet3A, while vswitchB connecting PF2 and vmxnet3B. The traffic flow is as below:
               Ixia -> PF1 -> vswitchA -> vmxnet3A -> vmxnet3B -> vswitchB -> PF2 -> Ixia.

- Test Case1: L2fwd with Topology#1 
  Description: Set up topology#1(in prerequisite session), and bind PF1, PF2, Vmxnet3A, vmxnet3B to DPDK poll-mode driver (igb_uio).
               Increase the flow at line rate (uni-directional traffic), send the flow at different packet size (64bytes, 128bytes, 256bytes, 512bytes, 1024bytes, 1280bytes and 1518bytes) and check the received packets/rate to see  
               if any unexpected behavior, such as no receives after N packets. 
  Command / instruction:
                To run the l2fwd example in 2VMs:
                                ./build/l2fwd -c f -n 4 -- -p 0x3
- Test IXIA Flow prerequisite: Ixia port1 sends 5 packets to PF1, and the flow should have PF1's MAC as destination MAC. Check if ixia port2 have received the 5 packets.
  Expected test result:
                Passed

- Test Case2: L3fwd-VF with Topology#1
  Description: Set up topology#1(in prerequisite session), and bind PF1, PF2, Vmxnet3A, vmxnet3B to DPDK poll-mode driver (igb_uio)
               Increase the flow at line rate (uni-directional traffic), send the flow at different packet size (64bytes, 128bytes, 256bytes, 512bytes, 1024bytes, 1280bytes and 1518bytes) and check the received packets/rate to see  
               if any unexpected behavior, such as no receives after N packets.
  Command / instruction:
                To run the l3fwd-vf example in 2VMs:
                                ./build/l3fwd-vf -c 0x6 -n 4 -- -p 0x3 --config "(0,0,1),(1,0,2)"
- Test IXIA Flow prerequisite: Ixia port1 sends 5 packets to PF1, and the flow should have PF1's MAC as destination MAC and have 2.1.1.x as destination IP. Check if ixia port2 have received the 5 packets.
  Expected test result:
                Passed

- Test Case3: L2fwd with Topology#2
  Description: Set up topology#2(in prerequisite session), and bind vmxnet3A and vmxnet3B to DPDK poll-mode driver (igb_uio).
               Increase the flow at line rate (uni-directional traffic), send the flow at different packet size (64bytes, 128bytes, 256bytes, 512bytes, 1024bytes, 1280bytes and 1518bytes) and check the received packets/rate to see  
               if any unexpected behavior, such as no receives after N packets.
  Command / instruction:
                To run the l2fwd example in VM1:
                                ./build/l2fwd -c f -n 4 -- -p 0x3
- Test IXIA Flow prerequisite: Ixia port1 sends 5 packets to port0 (vmxnet3A), and the flow should have port0's MAC as destination MAC. Check if ixia port2 have received the 5 packets. Similar things need to be done at ixia port2.
  Expected test result:
                Passed

- Test Case4: L3fwd-VF with Topology#2
  Description: Set up topology#2(in prerequisite session), and bind vmxnet3A and vmxnet3B to DPDK poll-mode driver (igb_uio).  
               Increase the flow at line rate (uni-directional traffic), send the flow at different packet size (64bytes, 128bytes, 256bytes, 512bytes, 1024bytes, 1280bytes and 1518bytes) and check the received packets/rate to see  
               if any unexpected behavior, such as no receives after N packets.
  Command / instruction:
                To run the l3fwd-vf example in VM1:
                                ./build/l3fwd-vf -c 0x6 -n 4 -- -p 0x3 --config "(0,0,1),(1,0,2)"
- Test IXIA Flow prerequisite: Ixia port1 sends 5 packets to port0(vmxnet3A), and the flow should have port0's MAC as destination MAC and have 2.1.1.x as destination IP. Check if ixia port2 have received the 5 packets.

  Expected test result:
                Passed

- Test Case5: Timer test with Topology#2
  Description: Set up topology#2(in prerequisite session), and bind vmxnet3A and vmxnet3B to DPDK poll-mode driver (igb_uio).
  Command / instruction:
                Build timer sample and run the sample:
                                ./build/timer -c f -n 4
- Test IXIA Flow prerequisite: N.A.
		
  Expected test result:
                Passed

- Test Case6: Testpmd basic with Topology#2
  Description: Set up topology#2(in prerequisite session), and bind vmxnet3A and vmxnet3B to DPDK poll-mode driver (igbuio).
               Increase the flow at line rate (uni-directional traffic), send the flow at different packet size (64bytes, 128bytes, 256bytes, 512bytes, 1024bytes, 1280bytes and 1518bytes) and check the received packets/rate to see  
               if any unexpected behavior, such as no receives after N packets.
  Command / instruction:
                Run testpmd(e.g:/x86_64-native-linuxapp-gcc/app/testpmd) with below command lines:
                                ./testpmd -c f -n 4 -- --txqflags=0xf01 -i
		    Clean environment and start the forwarding. Need check the port information and clear port statics by using below commands:
                Testpmd>show port info all
                Testpmd>clear port stats all
                Testpmd>show port stats all
                Testpmd>set fwd mac
                Testpmd>start
- Test IXIA Flow prerequisite: N.A.
  Expected test result:
                Passed


-----Original Message-----
From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of De Lara Guarch, Pablo
Sent: Friday, December 12, 2014 3:57 AM
To: De Lara Guarch, Pablo; dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Pablo de Lara
> Sent: Thursday, December 11, 2014 5:08 PM
> To: dev@dpdk.org
> Cc: root
> Subject: [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf
> 
> Since commit fbde27f19ab8f "get default Rx/Tx configuration from dev info",
> a default RX/TX configuration can be used for all PMDs.
> In case of vmxnet3, the whole structure was zeroed and not filled out.
> The PMD does not support multi segments or offload functions,
> so txq_flags should have those flags set.
> 
> Signed-off-by: root <root@sie-lab-214-174.ir.intel.com>

Self-NACK. Wrong signed-off.

> ---
>  lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
> 
> diff --git a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> index 963a8a5..ef0af16 100644
> --- a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> +++ b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> @@ -642,6 +642,9 @@
> vmxnet3_dev_info_get(__attribute__((unused))struct rte_eth_dev *dev,
> struct rte_
>  	dev_info->min_rx_bufsize = 1518 + RTE_PKTMBUF_HEADROOM;
>  	dev_info->max_rx_pktlen = 16384; /* includes CRC, cf MAXFRS
> register */
>  	dev_info->max_mac_addrs = VMXNET3_MAX_MAC_ADDRS;
> +
> +	dev_info->default_txconf.txq_flags =
> ETH_TXQ_FLAGS_NOMULTSEGS |
> +
> 	ETH_TXQ_FLAGS_NOOFFLOADS;
>  }
> 
>  /* return 0 means link status changed, -1 means not changed */
> --
> 1.7.4.1

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH v2] vmxnet3: set txq_flags in default TX conf
  2014-12-11 21:18 ` [dpdk-dev] [PATCH v2] vmxnet3: set txq_flags in default TX conf Pablo de Lara
@ 2014-12-17  0:07   ` Thomas Monjalon
  0 siblings, 0 replies; 7+ messages in thread
From: Thomas Monjalon @ 2014-12-17  0:07 UTC (permalink / raw)
  To: Pablo de Lara; +Cc: dev

> Since commit fbde27f19ab8f "get default Rx/Tx configuration from dev info",
> a default RX/TX configuration can be used for all PMDs.
> In case of vmxnet3, the whole structure was zeroed and not filled out.
> The PMD does not support multi segments or offload functions,
> so txq_flags should have those flags set.
> 
> Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>

Applied

Thanks
-- 
Thomas

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [dpdk-dev] vmxnet3 and Linux FC20 OS platform, example directory could not compiled success
  2014-12-11 19:56 ` De Lara Guarch, Pablo
  2014-12-12  6:48   ` Zhang, XiaonanX
@ 2014-12-17  8:59   ` Zhang, XiaonanX
  2014-12-17 11:45     ` Thomas Monjalon
  1 sibling, 1 reply; 7+ messages in thread
From: Zhang, XiaonanX @ 2014-12-17  8:59 UTC (permalink / raw)
  To: De Lara Guarch, Pablo, dev, Cao, Waterman, Thomas Monjalon

Hi Pablo and Thomas,
   We use latest package DPDK-1.8-rc5, and we found some compiled errors,

Our Test Environment setup as follows:

- OS:  Fedora20 3.11.10-301.fc20.x86_64
- GCC: gcc version 4.8.2 20131017 (Red Hat 4.8.2-1)
- CPU: Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
- NIC: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection [8086:10fb]
- Default x86_64-native-linuxapp-gcc configuration


main.o: In function `signal_handler':
main.c:(.text+0x7): undefined reference to `rte_eth_dev_count'
main.c:(.text+0x1a): undefined reference to `rte_exit'
main.c:(.text+0x4a): undefined reference to `rte_eth_dev_close'
main.o: In function `rte_pktmbuf_free':
main.c:(.text+0x9c): undefined reference to `per_lcore__lcore_id'
main.c:(.text+0x2df): undefined reference to `rte_eal_has_hugepages'
main.c:(.text+0x354): undefined reference to `per_lcore__lcore_id'
main.c:(.text+0x6fa): undefined reference to `rte_mem_virt2phy'
main.o: In function `send_burst':
main.c:(.text+0x797): undefined reference to `rte_eth_devices'
main.c:(.text+0x79d): undefined reference to `rte_eth_devices'
main.o: In function `main_loop':
main.c:(.text+0x819): undefined reference to `rte_get_tsc_hz'
main.c:(.text+0x820): undefined reference to `per_lcore__lcore_id'
main.c:(.text+0x870): undefined reference to `rte_logs'
main.c:(.text+0x879): undefined reference to `rte_logs'
main.c:(.text+0x893): undefined reference to `rte_log'
main.c:(.text+0x8aa): undefined reference to `rte_logs'
main.c:(.text+0x8b3): undefined reference to `rte_logs'
main.c:(.text+0x8cf): undefined reference to `rte_log'
main.c:(.text+0x8e7): undefined reference to `rte_logs'
main.c:(.text+0x8fa): undefined reference to `rte_logs'
main.c:(.text+0x916): undefined reference to `rte_log'
main.c:(.text+0x952): undefined reference to `rte_cycles_vmware_tsc_map'
main.c:(.text+0x9c3): undefined reference to `rte_eth_devices'
main.c:(.text+0x9d6): undefined reference to `rte_eth_devices'
main.c:(.text+0xe33): undefined reference to `rte_eth_devices'
main.o: In function `main':
main.c:(.text.startup+0x34): undefined reference to `rte_eal_init'
main.c:(.text.startup+0x10d): undefined reference to `rte_exit'
main.c:(.text.startup+0x1f9): undefined reference to `rte_strsplit'
main.c:(.text.startup+0x33c): undefined reference to `rte_eal_get_configuration'
main.c:(.text.startup+0x360): undefined reference to `lcore_config'
main.c:(.text.startup+0x443): undefined reference to `rte_eth_dev_count'
main.c:(.text.startup+0x4cb): undefined reference to `rte_eal_get_configuration'
main.c:(.text.startup+0x5dd): undefined reference to `rte_eth_dev_configure'
main.c:(.text.startup+0x600): undefined reference to `rte_eth_macaddr_get'
main.c:(.text.startup+0x633): undefined reference to `lcore_config'
main.c:(.text.startup+0x6fb): undefined reference to `rte_eal_get_configuration'
main.c:(.text.startup+0x754): undefined reference to `rte_pktmbuf_pool_init'
main.c:(.text.startup+0x786): undefined reference to `rte_pktmbuf_init'
main.c:(.text.startup+0x78b): undefined reference to `rte_mempool_create'
main.c:(.text.startup+0x7de): undefined reference to `rte_lpm_create'
main.c:(.text.startup+0x843): undefined reference to `rte_lpm_add'
main.c:(.text.startup+0x89c): undefined reference to `rte_exit'
main.c:(.text.startup+0x8a1): undefined reference to `rte_eal_get_configuration'
main.c:(.text.startup+0x8be): undefined reference to `lcore_config'
main.c:(.text.startup+0x8e3): undefined reference to `rte_eth_dev_info_get'
main.c:(.text.startup+0x90e): undefined reference to `rte_eth_tx_queue_setup'
main.c:(.text.startup+0x931): undefined reference to `rte_eal_get_configuration'
main.c:(.text.startup+0x95a): undefined reference to `lcore_config'
main.c:(.text.startup+0x981): undefined reference to `rte_eal_get_configuration'
main.c:(.text.startup+0xa17): undefined reference to `rte_eth_rx_queue_setup'
main.c:(.text.startup+0xaaf): undefined reference to `rte_eth_dev_start'
main.c:(.text.startup+0xae3): undefined reference to `rte_eal_mp_remote_launch'
main.c:(.text.startup+0xaea): undefined reference to `rte_eal_get_configuration'
main.c:(.text.startup+0xaf8): undefined reference to `rte_eal_get_configuration'
main.c:(.text.startup+0xb14): undefined reference to `rte_eal_get_configuration'
main.c:(.text.startup+0xb22): undefined reference to `rte_eal_get_configuration'
main.c:(.text.startup+0xb35): undefined reference to `rte_eal_wait_lcore'
main.c:(.text.startup+0xb77): undefined reference to `rte_exit'
main.c:(.text.startup+0xbb9): undefined reference to `rte_exit'
main.c:(.text.startup+0xbd5): undefined reference to `rte_exit'
main.c:(.text.startup+0xbef): undefined reference to `rte_exit'
main.c:(.text.startup+0xc04): undefined reference to `rte_exit'
main.o:main.c:(.text.startup+0xc44): more undefined references to `rte_exit' follow
collect2: error: ld returned 1 exit status
make[1]: *** [l3fwd-vf] Error 1
make: *** [all] Error 2



Best Regards
Xiaonan



























-----Original Message-----
From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of De Lara Guarch, Pablo
Sent: Friday, December 12, 2014 3:57 AM
To: De Lara Guarch, Pablo; dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Pablo de Lara
> Sent: Thursday, December 11, 2014 5:08 PM
> To: dev@dpdk.org
> Cc: root
> Subject: [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf
> 
> Since commit fbde27f19ab8f "get default Rx/Tx configuration from dev info",
> a default RX/TX configuration can be used for all PMDs.
> In case of vmxnet3, the whole structure was zeroed and not filled out.
> The PMD does not support multi segments or offload functions,
> so txq_flags should have those flags set.
> 
> Signed-off-by: root <root@sie-lab-214-174.ir.intel.com>

Self-NACK. Wrong signed-off.

> ---
>  lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
> 
> diff --git a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> index 963a8a5..ef0af16 100644
> --- a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> +++ b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c
> @@ -642,6 +642,9 @@
> vmxnet3_dev_info_get(__attribute__((unused))struct rte_eth_dev *dev,
> struct rte_
>  	dev_info->min_rx_bufsize = 1518 + RTE_PKTMBUF_HEADROOM;
>  	dev_info->max_rx_pktlen = 16384; /* includes CRC, cf MAXFRS
> register */
>  	dev_info->max_mac_addrs = VMXNET3_MAX_MAC_ADDRS;
> +
> +	dev_info->default_txconf.txq_flags =
> ETH_TXQ_FLAGS_NOMULTSEGS |
> +
> 	ETH_TXQ_FLAGS_NOOFFLOADS;
>  }
> 
>  /* return 0 means link status changed, -1 means not changed */
> --
> 1.7.4.1

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] vmxnet3 and Linux FC20 OS platform, example directory could not compiled success
  2014-12-17  8:59   ` [dpdk-dev] vmxnet3 and Linux FC20 OS platform, example directory could not compiled success Zhang, XiaonanX
@ 2014-12-17 11:45     ` Thomas Monjalon
  0 siblings, 0 replies; 7+ messages in thread
From: Thomas Monjalon @ 2014-12-17 11:45 UTC (permalink / raw)
  To: Zhang, XiaonanX; +Cc: dev

2014-12-17 08:59, Zhang, XiaonanX:
> Hi Pablo and Thomas,
>    We use latest package DPDK-1.8-rc5, and we found some compiled errors,
> 
> Our Test Environment setup as follows:
> 
> - OS:  Fedora20 3.11.10-301.fc20.x86_64
> - GCC: gcc version 4.8.2 20131017 (Red Hat 4.8.2-1)
> - CPU: Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
> - NIC: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection [8086:10fb]
> - Default x86_64-native-linuxapp-gcc configuration
> 
> 
> main.o: In function `signal_handler':
> main.c:(.text+0x7): undefined reference to `rte_eth_dev_count'
> main.c:(.text+0x1a): undefined reference to `rte_exit'
> main.c:(.text+0x4a): undefined reference to `rte_eth_dev_close'
> main.o: In function `rte_pktmbuf_free':
> main.c:(.text+0x9c): undefined reference to `per_lcore__lcore_id'
> main.c:(.text+0x2df): undefined reference to `rte_eal_has_hugepages'
> main.c:(.text+0x354): undefined reference to `per_lcore__lcore_id'
> main.c:(.text+0x6fa): undefined reference to `rte_mem_virt2phy'
> main.o: In function `send_burst':
> main.c:(.text+0x797): undefined reference to `rte_eth_devices'
> main.c:(.text+0x79d): undefined reference to `rte_eth_devices'
> main.o: In function `main_loop':
> main.c:(.text+0x819): undefined reference to `rte_get_tsc_hz'
> main.c:(.text+0x820): undefined reference to `per_lcore__lcore_id'
> main.c:(.text+0x870): undefined reference to `rte_logs'
> main.c:(.text+0x879): undefined reference to `rte_logs'
> main.c:(.text+0x893): undefined reference to `rte_log'
> main.c:(.text+0x8aa): undefined reference to `rte_logs'
> main.c:(.text+0x8b3): undefined reference to `rte_logs'
> main.c:(.text+0x8cf): undefined reference to `rte_log'
> main.c:(.text+0x8e7): undefined reference to `rte_logs'
> main.c:(.text+0x8fa): undefined reference to `rte_logs'
> main.c:(.text+0x916): undefined reference to `rte_log'
> main.c:(.text+0x952): undefined reference to `rte_cycles_vmware_tsc_map'
> main.c:(.text+0x9c3): undefined reference to `rte_eth_devices'
> main.c:(.text+0x9d6): undefined reference to `rte_eth_devices'
> main.c:(.text+0xe33): undefined reference to `rte_eth_devices'
> main.o: In function `main':
> main.c:(.text.startup+0x34): undefined reference to `rte_eal_init'
> main.c:(.text.startup+0x10d): undefined reference to `rte_exit'
> main.c:(.text.startup+0x1f9): undefined reference to `rte_strsplit'
> main.c:(.text.startup+0x33c): undefined reference to `rte_eal_get_configuration'
> main.c:(.text.startup+0x360): undefined reference to `lcore_config'
> main.c:(.text.startup+0x443): undefined reference to `rte_eth_dev_count'
> main.c:(.text.startup+0x4cb): undefined reference to `rte_eal_get_configuration'
> main.c:(.text.startup+0x5dd): undefined reference to `rte_eth_dev_configure'
> main.c:(.text.startup+0x600): undefined reference to `rte_eth_macaddr_get'
> main.c:(.text.startup+0x633): undefined reference to `lcore_config'
> main.c:(.text.startup+0x6fb): undefined reference to `rte_eal_get_configuration'
> main.c:(.text.startup+0x754): undefined reference to `rte_pktmbuf_pool_init'
> main.c:(.text.startup+0x786): undefined reference to `rte_pktmbuf_init'
> main.c:(.text.startup+0x78b): undefined reference to `rte_mempool_create'
> main.c:(.text.startup+0x7de): undefined reference to `rte_lpm_create'
> main.c:(.text.startup+0x843): undefined reference to `rte_lpm_add'
> main.c:(.text.startup+0x89c): undefined reference to `rte_exit'
> main.c:(.text.startup+0x8a1): undefined reference to `rte_eal_get_configuration'
> main.c:(.text.startup+0x8be): undefined reference to `lcore_config'
> main.c:(.text.startup+0x8e3): undefined reference to `rte_eth_dev_info_get'
> main.c:(.text.startup+0x90e): undefined reference to `rte_eth_tx_queue_setup'
> main.c:(.text.startup+0x931): undefined reference to `rte_eal_get_configuration'
> main.c:(.text.startup+0x95a): undefined reference to `lcore_config'
> main.c:(.text.startup+0x981): undefined reference to `rte_eal_get_configuration'
> main.c:(.text.startup+0xa17): undefined reference to `rte_eth_rx_queue_setup'
> main.c:(.text.startup+0xaaf): undefined reference to `rte_eth_dev_start'
> main.c:(.text.startup+0xae3): undefined reference to `rte_eal_mp_remote_launch'
> main.c:(.text.startup+0xaea): undefined reference to `rte_eal_get_configuration'
> main.c:(.text.startup+0xaf8): undefined reference to `rte_eal_get_configuration'
> main.c:(.text.startup+0xb14): undefined reference to `rte_eal_get_configuration'
> main.c:(.text.startup+0xb22): undefined reference to `rte_eal_get_configuration'
> main.c:(.text.startup+0xb35): undefined reference to `rte_eal_wait_lcore'
> main.c:(.text.startup+0xb77): undefined reference to `rte_exit'
> main.c:(.text.startup+0xbb9): undefined reference to `rte_exit'
> main.c:(.text.startup+0xbd5): undefined reference to `rte_exit'
> main.c:(.text.startup+0xbef): undefined reference to `rte_exit'
> main.c:(.text.startup+0xc04): undefined reference to `rte_exit'
> main.o:main.c:(.text.startup+0xc44): more undefined references to `rte_exit' follow
> collect2: error: ld returned 1 exit status
> make[1]: *** [l3fwd-vf] Error 1
> make: *** [all] Error 2

Fixed: http://dpdk.org/browse/dpdk/commit/?id=0731b5e07c42115

-- 
Thomas

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-12-17 11:45 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-12-11 17:08 [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf Pablo de Lara
2014-12-11 19:56 ` De Lara Guarch, Pablo
2014-12-12  6:48   ` Zhang, XiaonanX
2014-12-17  8:59   ` [dpdk-dev] vmxnet3 and Linux FC20 OS platform, example directory could not compiled success Zhang, XiaonanX
2014-12-17 11:45     ` Thomas Monjalon
2014-12-11 21:18 ` [dpdk-dev] [PATCH v2] vmxnet3: set txq_flags in default TX conf Pablo de Lara
2014-12-17  0:07   ` Thomas Monjalon

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).