[dpdk-dev] [PATCH] examples/vhost: add rate statistics for rx/tx and core

2015-12-02 Thread Jianfeng Tan
of circulation. Besides, this fix the problem of statistics error under the case of software vm2vm fowarding. Signed-off-by: Jianfeng Tan Tested-by: Qian Xu --- examples/vhost/main.c | 150 +++--- 1 file changed, 119 insertions(+), 31 deletions(-) diff

[dpdk-dev] [PATCH v2] examples/vhost: fix statistics error

2015-12-03 Thread Jianfeng Tan
, so we design a mechanism to make sure unreasonable data will not show. Signed-off-by: Jianfeng Tan Tested-by: Qian Xu --- examples/vhost/main.c | 71 --- 1 file changed, 51 insertions(+), 20 deletions(-) diff --git a/examples/vhost/main.c b

[dpdk-dev] [PATCH v3] examples/vhost: fix statistics error

2015-12-03 Thread Jianfeng Tan
This issue was discovered under the case of software vm2vm fowarding. When pkts are received from virtio device 0 and tx_route to virtio device 1, tx of device 0 is not updated. Signed-off-by: Jianfeng Tan Tested-by: Qian Xu --- examples/vhost/main.c | 4 ++-- 1 file changed, 2 insertions

[dpdk-dev] [PATCH 00/12] Add API to get packet type info

2015-12-31 Thread Jianfeng Tan
not implement it, it means it will not provide any ptype info. Jianfeng Tan (12): ethdev: add API to query what/if packet type is set pmd/cxgbe: add dev_ptype_info_get implementation pmd/e1000: add dev_ptype_info_get implementation pmd/enic: add dev_ptype_info_get implementation pmd/fm10k: add

[dpdk-dev] [PATCH 04/12] pmd/enic: add dev_ptype_info_get implementation

2015-12-31 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/enic/enic_ethdev.c | 20 1 file changed, 20 insertions(+) diff --git a/drivers/net/enic/enic_ethdev.c b/drivers/net/enic/enic_ethdev.c index 2a88043..112480e 100644 --- a/drivers/net/enic/enic_ethdev.c +++ b/drivers/net/enic

[dpdk-dev] [PATCH 01/12] ethdev: add API to query what/if packet type is set

2015-12-31 Thread Jianfeng Tan
Add a new API rte_eth_dev_get_ptype_info to query what/if packet type will be set by current rx burst function. Signed-off-by: Jianfeng Tan --- lib/librte_ether/rte_ethdev.c | 12 lib/librte_ether/rte_ethdev.h | 22 ++ lib/librte_mbuf/rte_mbuf.h| 13

[dpdk-dev] [PATCH 05/12] pmd/fm10k: add dev_ptype_info_get implementation

2015-12-31 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/fm10k/fm10k_ethdev.c | 60 ++ drivers/net/fm10k/fm10k_rxtx.c | 5 drivers/net/fm10k/fm10k_rxtx_vec.c | 5 3 files changed, 70 insertions(+) diff --git a/drivers/net/fm10k/fm10k_ethdev.c b/drivers

[dpdk-dev] [PATCH 02/12] pmd/cxgbe: add dev_ptype_info_get implementation

2015-12-31 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/cxgbe/cxgbe_ethdev.c | 17 + 1 file changed, 17 insertions(+) diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c b/drivers/net/cxgbe/cxgbe_ethdev.c index 97ef152..f17d5d5 100644 --- a/drivers/net/cxgbe/cxgbe_ethdev.c +++ b/drivers/net/cxgbe

[dpdk-dev] [PATCH 06/12] pmd/i40e: add dev_ptype_info_get implementation

2015-12-31 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/i40e/i40e_ethdev.c| 1 + drivers/net/i40e/i40e_ethdev_vf.c | 1 + drivers/net/i40e/i40e_rxtx.c | 69 ++- drivers/net/i40e/i40e_rxtx.h | 2 ++ 4 files changed, 72 insertions(+), 1 deletion(-) diff

[dpdk-dev] [PATCH 03/12] pmd/e1000: add dev_ptype_info_get implementation

2015-12-31 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/e1000/igb_ethdev.c | 48 ++ 1 file changed, 48 insertions(+) diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c index d1bbcda..0a9abd6 100644 --- a/drivers/net/e1000/igb_ethdev.c +++ b

[dpdk-dev] [PATCH 07/12] pmd/ixgbe: add dev_ptype_info_get implementation

2015-12-31 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/ixgbe/ixgbe_ethdev.c | 50 drivers/net/ixgbe/ixgbe_ethdev.h | 2 ++ drivers/net/ixgbe/ixgbe_rxtx.c | 5 +++- 3 files changed, 56 insertions(+), 1 deletion(-) diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b

[dpdk-dev] [PATCH 08/12] pmd/mlx4: add dev_ptype_info_get implementation

2015-12-31 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/mlx4/mlx4.c | 27 +++ 1 file changed, 27 insertions(+) diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c index 207bfe2..85afa32 100644 --- a/drivers/net/mlx4/mlx4.c +++ b/drivers/net/mlx4/mlx4.c @@ -2836,6 +2836,8

[dpdk-dev] [PATCH 09/12] pmd/mlx5: add dev_ptype_info_get implementation

2015-12-31 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/mlx5/mlx5.c| 1 + drivers/net/mlx5/mlx5.h| 2 ++ drivers/net/mlx5/mlx5_ethdev.c | 25 + drivers/net/mlx5/mlx5_rxtx.c | 2 ++ 4 files changed, 30 insertions(+) diff --git a/drivers/net/mlx5/mlx5.c b/drivers

[dpdk-dev] [PATCH 10/12] pmd/nfp: add dev_ptype_info_get implementation

2015-12-31 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/nfp/nfp_net.c | 18 ++ 1 file changed, 18 insertions(+) diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c index bc2089f..c121d7b 100644 --- a/drivers/net/nfp/nfp_net.c +++ b/drivers/net/nfp/nfp_net.c @@ -1075,6

[dpdk-dev] [PATCH 11/12] pmd/vmxnet3: add dev_ptype_info_get implementation

2015-12-31 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/vmxnet3/vmxnet3_ethdev.c | 20 1 file changed, 20 insertions(+) diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c b/drivers/net/vmxnet3/vmxnet3_ethdev.c index c363bf6..6bc8d9a 100644 --- a/drivers/net/vmxnet3/vmxnet3_ethdev.c

[dpdk-dev] [PATCH 12/12] examples/l3fwd: add option to parse ptype

2015-12-31 Thread Jianfeng Tan
Firstly, use rte_eth_dev_get_ptype_info() API to check if device will parse needed packet type. If not, specifying the newly added option, --parse-ptype to do it in the callback softly. Signed-off-by: Jianfeng Tan --- examples/l3fwd/main.c | 86

[dpdk-dev] [PATCH v6 0/7] virtio support for container

2016-06-02 Thread Jianfeng Tan
t \ -v /dev/net/tun:/dev/net/tun \ -v /dev/hugepages:/dev/hugepages \ dpdk-app-l2fwd l2fwd -c 0x4 -n 4 -m 1024 --no-pci \ --vdev=virtio-user0,path=/dev/vhost-net -- -p 0x1 By the way, it's not necessary to run in a container. Signed-off-by: Huawei Xie Signed-off-by:

[dpdk-dev] [PATCH v6 1/7] virtio: hide phys addr check inside pci ops

2016-06-02 Thread Jianfeng Tan
This patch is to move phys addr check from virtio_dev_queue_setup to pci ops. To makt that happen, make sure virtio_ops.setup_queue return the result if we pass through the check. Signed-off-by: Jianfeng Tan Signed-off-by: Huawei Xie Acked-by: Yuanhan Liu --- drivers/net/virtio

[dpdk-dev] [PATCH v6 2/7] virtio: clean up virtio_dev_queue_setup

2016-06-02 Thread Jianfeng Tan
Abstract vring hdr desc init as an inline method. Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_ethdev.c | 42 ++ 1 file changed, 24 insertions(+), 18 deletions(-) diff --git a/drivers/net/virtio/virtio_ethdev.c b

[dpdk-dev] [PATCH v6 3/7] virtio: enable use virtual address to fill desc

2016-06-02 Thread Jianfeng Tan
here. It basically means: a. when set_base_addr, VA address is used; b. when preparing RX's descriptors, VA address is used; c. when transmitting packets, VA is filled in TX's descriptors; d. in TX and CQ's header, VA is used. Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked

[dpdk-dev] [PATCH v6 4/7] virtio-user: add vhost adapter layer

2016-06-02 Thread Jianfeng Tan
t backend | -- Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman --- config/common_linuxapp| 3 + drivers/net/virtio/Makefile | 6 + drivers/net/virtio/virtio_user/vhost.c| 105 +++ drivers/net/virtio/vi

[dpdk-dev] [PATCH v6 6/7] virtio-user: add new virtual pci driver for virtio

2016-06-02 Thread Jianfeng Tan
vhost adapter | | | -- | -- | | | -- | vhost backend | -- Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman --- drivers/net/virtio/Ma

[dpdk-dev] [PATCH v6 7/7] virtio-user: add a new vdev named virtio-user

2016-06-02 Thread Jianfeng Tan
there are more than VHOST_MEMORY_MAX_NREGIONS(8) hugepages. - Root privilege is a must (mainly becase of sorting hugepages according to physical address). - Applications should not use file name like HUGEFILE_FMT ("%smap_%d"). Signed-off-by: Huawei Xie Signed-off-by: Jianfeng

[dpdk-dev] [PATCH v7 0/6] virtio support for container

2016-06-12 Thread Jianfeng Tan
-privileged \ -v /dev/vhost-net:/dev/vhost-net \ -v /dev/net/tun:/dev/net/tun \ -v /dev/hugepages:/dev/hugepages \ dpdk-app-l2fwd l2fwd -c 0x4 -n 4 -m 1024 --no-pci \ --vdev=virtio-user0,path=/dev/vhost-net -- -p 0x1 By the way, it's not necessary to run in

[dpdk-dev] [PATCH v7 1/6] virtio: hide phys addr check inside pci ops

2016-06-12 Thread Jianfeng Tan
This patch is to move phys addr check from virtio_dev_queue_setup to pci ops. To makt that happen, make sure virtio_ops.setup_queue return the result if we pass through the check. Signed-off-by: Jianfeng Tan Signed-off-by: Huawei Xie Acked-by: Yuanhan Liu --- drivers/net/virtio

[dpdk-dev] [PATCH v7 2/6] virtio: enable use virtual address to fill desc

2016-06-12 Thread Jianfeng Tan
here. It basically means: a. when set_base_addr, VA address is used; b. when preparing RX's descriptors, VA address is used; c. when transmitting packets, VA is filled in TX's descriptors; d. in TX and CQ's header, VA is used. Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked

[dpdk-dev] [PATCH v7 3/6] virtio-user: add vhost adapter layer

2016-06-12 Thread Jianfeng Tan
t backend | -- Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman --- config/common_linuxapp| 1 + drivers/net/virtio/Makefile | 6 + drivers/net/virtio/virtio_user/vhost.c| 105 +++ drivers/net/virtio/vi

[dpdk-dev] [PATCH v7 4/6] virtio-user: add device emulation layer APIs

2016-06-12 Thread Jianfeng Tan
ed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman --- drivers/net/virtio/Makefile | 1 + drivers/net/virtio/virtio_user/virtio_user_dev.c | 263 +++ drivers/net/virtio/virtio_user/virtio_user_dev.h | 64 ++ 3 files changed, 328 inse

[dpdk-dev] [PATCH v7 5/6] virtio-user: add new virtual pci driver for virtio

2016-06-12 Thread Jianfeng Tan
vhost adapter | | | -- | -- | | | -- | vhost backend | -- Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman --- drivers/net/virtio/Ma

[dpdk-dev] [PATCH v7 6/6] virtio-user: add a new vdev named virtio-user

2016-06-12 Thread Jianfeng Tan
there are more than VHOST_MEMORY_MAX_NREGIONS(8) hugepages. - Root privilege is a must (mainly becase of sorting hugepages according to physical address). - Applications should not use file name like HUGEFILE_FMT ("%smap_%d"). Signed-off-by: Huawei Xie Signed-off-by: Jianfeng

[dpdk-dev] [PATCH] virito: fix reuse index in nested loop

2016-06-12 Thread Jianfeng Tan
on these queues, segment fault happens. Fixes: a900472aedef ("virtio: split virtio Rx/Tx queue") Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_rxtx.c | 36 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/drivers/net/virtio/virti

[dpdk-dev] [PATCH] virtio: fix allocating virtnet_rx not mem aligned

2016-06-12 Thread Jianfeng Tan
hat making sz_vq 32-byte aligned. Here we make it cache line aligned for future optimization. Fixes: a900472aedef ("virtio: split virtio Rx/Tx queue") Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_ethdev.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) di

[dpdk-dev] [PATCH v8 0/6] virtio support for container

2016-06-13 Thread Jianfeng Tan
docker build -t dpdk-app-l2fwd . d. Used with vhost-user $: ./examples/vhost/build/vhost-switch -c 3 -n 4 \ --socket-mem 1024,1024 -- -p 0x1 --stats 1 $: docker run -i -t -v :/var/run/usvhost \ -v /dev/hugepages:/dev/hugepages \ dpdk-app-l2fwd l2fwd -c 0x4 -n 4 -m 1024

[dpdk-dev] [PATCH v8 1/6] virtio: hide phys addr check inside pci ops

2016-06-13 Thread Jianfeng Tan
This patch is to move phys addr check from virtio_dev_queue_setup to pci ops. To makt that happen, make sure virtio_ops.setup_queue return the result if we pass through the check. Signed-off-by: Jianfeng Tan Signed-off-by: Huawei Xie Acked-by: Yuanhan Liu --- drivers/net/virtio

[dpdk-dev] [PATCH v8 2/6] virtio: enable use virtual address to fill desc

2016-06-13 Thread Jianfeng Tan
here. It basically means: a. when set_base_addr, VA address is used; b. when preparing RX's descriptors, VA address is used; c. when transmitting packets, VA is filled in TX's descriptors; d. in TX and CQ's header, VA is used. Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked

[dpdk-dev] [PATCH v8 3/6] virtio-user: add vhost user adapter layer

2016-06-13 Thread Jianfeng Tan
uawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman --- config/common_linuxapp | 1 + drivers/net/virtio/Makefile | 4 + drivers/net/virtio/virtio_user/vhost.h | 141 ++ drivers/net/virtio/virtio_user/vhost_use

[dpdk-dev] [PATCH v8 4/6] virtio-user: add device emulation layer APIs

2016-06-13 Thread Jianfeng Tan
ed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman --- drivers/net/virtio/Makefile | 1 + drivers/net/virtio/virtio_user/virtio_user_dev.c | 227 +++ drivers/net/virtio/virtio_user/virtio_user_dev.h | 62 +++ 3 files changed, 290 inse

[dpdk-dev] [PATCH v8 5/6] virtio-user: add new virtual pci driver for virtio

2016-06-13 Thread Jianfeng Tan
vhost adapter | | | -- | -- | | | -- | vhost backend | -- Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman --- drivers/net/virtio/Ma

[dpdk-dev] [PATCH v8 6/6] virtio-user: add a new vdev named virtio-user

2016-06-13 Thread Jianfeng Tan
by: Huawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman --- doc/guides/rel_notes/release_16_07.rst | 12 ++ doc/guides/sample_app_ug/vhost.rst | 17 +++ drivers/net/virtio/virtio_ethdev.c | 19 +-- drivers/net/virtio/virtio_ethdev.h | 2 + drivers/

[dpdk-dev] [PATCH v2 0/4] add multi queue support for virtio-user

2016-06-13 Thread Jianfeng Tan
--no-pci --file-prefix=testpmd \ --vdev=virtio-user0,mac=00:01:02:03:04:05,path=/tmp/sock0,queues=2 \ -- -i --rxq=2 --txq=2 --nb-cores=2 --txqflags=0xf01 --disable-hw-vlan 3. use below commands to see if all queues are working: testpmd> show port xstats all Jianfeng Tan (4): vir

[dpdk-dev] [PATCH v2 1/4] virtio-user: use virtual address in cq

2016-06-13 Thread Jianfeng Tan
Change to use virtio_net_hdr_mem instead of physical addr of memzone when sending contrl queue commands. The virtio_net_hdr_mem has been initialized to use virtual address under the case of virtio-user. Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_ethdev.c | 6 +++--- 1 file

[dpdk-dev] [PATCH v2 2/4] virtio-user: add mq in vhost user adapter

2016-06-13 Thread Jianfeng Tan
This patch mainly adds method in vhost user adapter to communicate enable/disable queues messages with vhost user backend. Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_user/vhost.h | 5 + drivers/net/virtio/virtio_user/vhost_user.c | 21 + 2 files

[dpdk-dev] [PATCH v2 3/4] virtio-user: add ctrl-q and mq in device emulation

2016-06-13 Thread Jianfeng Tan
of VIRTIO_NET_CTRL_MQ_VQ_PAIRS_SET to handle mq support. This patch provides an API, virtio_user_handle_cq(), for driver to handle ctrl-queue messages. Besides, multi-queue requires VIRTIO_NET_F_MQ and VIRTIO_NET_F_CTRL_VQ are enabled when we do feature negotiation. Signed-off-by: Jianfeng Tan --- drivers

[dpdk-dev] [PATCH v2 4/4] virtio-user: handle ctrl-q in driver

2016-06-13 Thread Jianfeng Tan
In virtio-user driver, when notify ctrl-queue, invoke API of virtio-user device emulation to handle ctrl-q command. Besides, multi-queue requires ctrl-queue and ctrl-queue will be enabled automatically when multi-queue is specified. Signed-off-by: Jianfeng Tan --- drivers/net/virtio

[dpdk-dev] [PATCH v9 1/6] virtio: hide phys addr check inside PCI ops

2016-06-15 Thread Jianfeng Tan
This patch is to move phys addr check from virtio_dev_queue_setup to pci ops. To makt that happen, make sure virtio_ops.setup_queue return the result if we pass through the check. Signed-off-by: Jianfeng Tan Signed-off-by: Huawei Xie Acked-by: Yuanhan Liu --- drivers/net/virtio

[dpdk-dev] [PATCH v9 4/6] virtio-user: add device emulation layer APIs

2016-06-15 Thread Jianfeng Tan
ed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman --- drivers/net/virtio/Makefile | 1 + drivers/net/virtio/virtio_user/virtio_user_dev.c | 227 +++ drivers/net/virtio/virtio_user/virtio_user_dev.h | 62 +++ 3 files changed, 290 inse

[dpdk-dev] [PATCH v9 5/6] virtio-user: add new virtual PCI driver for virtio

2016-06-15 Thread Jianfeng Tan
vhost adapter | | | -- | -- | | | -- | vhost backend | -- Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman Acked-by: Yuanhan Liu --- drivers/net/

[dpdk-dev] [PATCH v9 6/6] virtio-user: add a new vdev named virtio-user

2016-06-15 Thread Jianfeng Tan
by: Huawei Xie Signed-off-by: Jianfeng Tan Acked-by: Neil Horman Acked-by: Yuanhan Liu --- doc/guides/rel_notes/release_16_07.rst | 12 ++ doc/guides/sample_app_ug/vhost.rst | 17 +++ drivers/net/virtio/virtio_ethdev.c | 19 +-- drivers/net/virtio/virtio_ethdev.h | 2 + d

[dpdk-dev] [PATCH v3 0/3] add multi queue support for virtio-user

2016-06-15 Thread Jianfeng Tan
ile-prefix=testpmd \ --vdev=virtio-user0,mac=00:01:02:03:04:05,path=/tmp/sock0,queues=2 \ -- -i --rxq=2 --txq=2 --nb-cores=2 --txqflags=0xf01 --disable-hw-vlan 3. use below commands to see if all queues are working: testpmd> show port xstats all Jianfeng Tan (3): virtio-user: add mq

[dpdk-dev] [PATCH v3 1/3] virtio-user: add mq in vhost user adapter

2016-06-15 Thread Jianfeng Tan
This patch mainly adds method in vhost user adapter to communicate enable/disable queues messages with vhost user backend, aka, VHOST_USER_SET_VRING_ENABLE. Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_user/vhost.h | 5 + drivers/net/virtio/virtio_user/vhost_user.c | 22

[dpdk-dev] [PATCH v3 2/3] virtio-user: add ctrl-q and mq in device emulation

2016-06-15 Thread Jianfeng Tan
of VIRTIO_NET_CTRL_MQ_VQ_PAIRS_SET to handle mq support. This patch provides an API, virtio_user_handle_cq(), for driver to handle ctrl-queue messages. Besides, multi-queue requires VIRTIO_NET_F_MQ and VIRTIO_NET_F_CTRL_VQ are enabled when we do feature negotiation. Signed-off-by: Jianfeng Tan --- drivers

[dpdk-dev] [PATCH v3 0/3] virtio-user: handle ctrl-q in driver

2016-06-15 Thread Jianfeng Tan
In virtio-user driver, when notify ctrl-queue, invoke API of virtio-user device emulation to handle ctrl-q command. Besides, multi-queue requires ctrl-queue and ctrl-queue will be enabled automatically when multi-queue is specified. Signed-off-by: Jianfeng Tan --- drivers/net/virtio

[dpdk-dev] [PATCH] net/virtio-user: fix implicit int to enum conversion

2016-06-23 Thread Jianfeng Tan
is simple, aka make such conversion explicit. Fixes: 6a84c37e3975 ("net/virtio-user: add vhost-user adapter layer") Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_user/vhost_user.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/virtio/v

[dpdk-dev] [PATCH v2] net/virtio-user: fix implicit int to enum conversion

2016-06-26 Thread Jianfeng Tan
is simple, change the type of parameter req to enum vhost_user_request. Fixes: 6a84c37e3975 ("net/virtio-user: add vhost-user adapter layer") Suggested-by: Stephen Hemminger Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_user/vhost.h | 2 +- drivers/net/virtio/v

[dpdk-dev] [PATCH] net/virtio-user: fix O_CLOEXEC undeclared error

2016-06-26 Thread Jianfeng Tan
t;net/virtio-user: add device emulation layer") Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_user/virtio_user_dev.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/virtio/virtio_user/virtio_user_dev.c b/drivers/net/virtio/virtio_user/virtio_user_dev.c ind

[dpdk-dev] [PATCH] net/virtio-user: fix missing default macro

2016-06-29 Thread Jianfeng Tan
: ce2eabdd43ec ("net/virtio-user: add virtual device") Reported-by: Ferruh Yigit Signed-off-by: Jianfeng Tan --- config/common_base | 5 + 1 file changed, 5 insertions(+) diff --git a/config/common_base b/config/common_base index 5d9daf5..0368d59 100644 --- a/config/common_base ++

[dpdk-dev] [PATCH v2] net/virtio-user: fix build error in SUSE 11

2016-06-29 Thread Jianfeng Tan
which needs _GNU_SOURCE defined on some old systems. Fixes: 37a7eb2ae816 ("net/virtio-user: add device emulation layer") Signed-off-by: Jianfeng Tan --- v2: - Change the way to fix this issue. drivers/net/virtio/virtio_user/virtio_user_dev.c | 4 ++-- 1 file changed, 2 insertions(+), 2

[dpdk-dev] [PATCH 0/4] net/virtio-user: fix coverity issues

2016-06-29 Thread Jianfeng Tan
Patch 1: fix return value not checked, Coverity issue: 127344, 127478 Patch 2: fix string overflow, Coverity issue: 127484 Patch 3: fix resource leaks, Coverity issue: 127482 Patch 4: fix string unterminated, Coverity issue: 127476 Jianfeng Tan (4): net/virtio-user: fix return value not checked

[dpdk-dev] [PATCH 1/4] net/virtio-user: fix return value not checked

2016-06-29 Thread Jianfeng Tan
3975 ("net/virtio-user: add vhost-user adapter layer") Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_user/vhost_user.c | 3 +- drivers/net/virtio/virtio_user_ethdev.c | 57 ++--- 2 files changed, 45 insertions(+), 15 deletions(-) diff --git

[dpdk-dev] [PATCH 2/4] net/virtio-user: fix string overflow

2016-06-29 Thread Jianfeng Tan
issue: 127484 Fixes: 6a84c37e3975 ("net/virtio-user: add vhost-user adapter layer") Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_user/vhost_user.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/virtio/virtio_user/vhost_user.c b/drivers/

[dpdk-dev] [PATCH 3/4] net/virtio-user: fix resource leaks

2016-06-29 Thread Jianfeng Tan
The return value by rte_kvargs_parse is not free(d), which leads to memory leak. Coverity issue: 127482 Fixes: ce2eabdd43ec ("net/virtio-user: add virtual device") Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_user_ethdev.c | 4 +++- 1 file changed, 3 insertions(+),

[dpdk-dev] [PATCH 4/4] net/virtio-user: fix string unterminated

2016-06-29 Thread Jianfeng Tan
evice") Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_user/virtio_user_dev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/virtio/virtio_user/virtio_user_dev.c b/drivers/net/virtio/virtio_user/virtio_user_dev.c index 1b1e5bf..376c9cf 100644 --- a/d

[dpdk-dev] [PATCH] vhost: fix mmap failure as len not aligned with hugepage size

2015-10-30 Thread Jianfeng Tan
This patch fixes a bug under lower version linux kernel, mmap() fails when length is not aligned with hugepage size. Signed-off-by: Jianfeng Tan --- lib/librte_vhost/vhost_user/virtio-net-user.c | 12 +--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/lib/librte_vhost

[dpdk-dev] [RFC 0/5] virtio support for container

2015-11-06 Thread Jianfeng Tan
T=x86_64-native-linuxapp-gcc $: make -C examples/vhost RTE_SDK=`pwd` T=x86_64-native-linuxapp-gcc e. Start vhost-switch $: ./examples/vhost/build/vhost-switch -c 3 -n 4 --socket-mem 1024,1024 -- -p 0x1 --stats 1 f. Start docker $: docker run -i -t -v :/var/run/usvhost dpdk-app-l2fwd Sig

[dpdk-dev] [RFC 1/5] virtio/container: add handler for ioport rd/wr

2015-11-06 Thread Jianfeng Tan
Add handler to turn ioport rd/wr into vhost user unix socket msgs. Add field, like kickfd, callfd in struct virtio_hw. Add CONFIG_RTE_VIRTIO_VDEV to control virtio vdev, disabled by default. Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan --- config/common_linuxapp | 5

[dpdk-dev] [RFC 2/5] virtio/container: add a new virtual device named eth_cvio

2015-11-06 Thread Jianfeng Tan
to calculate relative address. Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_ethdev.c | 319 + drivers/net/virtio/virtio_ethdev.h | 16 ++ drivers/net/virtio/virtqueue.h | 9 +- 3 files changed, 275 insertions

[dpdk-dev] [RFC 3/5] virtio/container: unify desc->addr assignment

2015-11-06 Thread Jianfeng Tan
Unify desc->addr assignment using RTE_MBUF_DATA_DMA_ADDR. virtio for vm uses physical address, while virtio for container uses virtual address. Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan --- drivers/net/virtio/virtio_rxtx.c| 9 - drivers/net/vir

[dpdk-dev] [RFC 4/5] virtio/container: adjust memory initialization process

2015-11-06 Thread Jianfeng Tan
When using virtio for container, we should specify --no-huge so that in memory initialization, shm_open() is used to alloc memory from tmpfs filesystem /dev/shm/. Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan --- lib/librte_eal/common/include/rte_memory.h | 5 +++ lib/librte_eal

[dpdk-dev] [RFC 5/5] vhost/container: change mode of vhost listening socket

2015-11-06 Thread Jianfeng Tan
Change vhost listening socket mode so that users in groups and others can connect to vhost listening socket. Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan --- lib/librte_vhost/vhost_user/vhost-net-user.c | 5 + 1 file changed, 5 insertions(+) diff --git a/lib/librte_vhost

[dpdk-dev] [PATCH v2] vhost: fix mmap failure as len not aligned with hugepage size

2015-11-12 Thread Jianfeng Tan
with EINVAL. This bug was fixed in Linux kernel by commit: dab2d3dc45ae7343216635d981d43637e1cb7d45 To avoid failure, make sure in caller to keep length aligned. Signed-off-by: Jianfeng Tan --- lib/librte_vhost/vhost_user/virtio-net-user.c | 36 --- 1 file changed, 21

[dpdk-dev] [PATCH] mem: fix how to calculate space left in a hugetlbfs

2015-11-12 Thread Jianfeng Tan
This patch enables calculating space left in a hugetlbfs. There are three sources to get the information: 1. from sysfs; 2. from option size specified when mount; 3. use statfs. We should use the minimum one of these three sizes. Signed-off-by: Jianfeng Tan --- lib/librte_eal/linuxapp/eal

[dpdk-dev] [PATCH v2] mem: calculate space left in a hugetlbfs

2015-11-12 Thread Jianfeng Tan
This patch enables calculating space left in a hugetlbfs. There are three sources to get the information: 1. from sysfs; 2. from option size specified when mount; 3. use statfs. We should use the minimum one of these three sizes. Signed-off-by: Jianfeng Tan --- lib/librte_eal/linuxapp/eal

[dpdk-dev] [PATCH v2] mem: calculate space left in a hugetlbfs

2015-11-12 Thread Jianfeng Tan
This patch enables calculating space left in a hugetlbfs. There are three sources to get the information: 1. from sysfs; 2. from option size specified when mount; 3. use statfs. We should use the minimum one of these three sizes. Signed-off-by: Jianfeng Tan --- Changes in v2: - reword title

[dpdk-dev] [PATCH v3] vhost: fix mmap failure as len not aligned with hugepage size

2015-11-12 Thread Jianfeng Tan
ove unnecessary alignments when munmap Signed-off-by: Jianfeng Tan --- lib/librte_vhost/vhost_user/virtio-net-user.c | 36 --- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/lib/librte_vhost/vhost_user/virtio-net-user.c b/lib/librte_vhost/vhost_user/virtio-

[dpdk-dev] [PATCH v3] mem: calculate space left in a hugetlbfs

2015-11-18 Thread Jianfeng Tan
on having mapped all free hugepages in the system. Signed-off-by: Jianfeng Tan --- v3 changes: - commit msg rework - add hpi->quota to record quota of each hugetlbfs - get_hugepage_dir -> get_hugepage_mnt_info to fill hugedir and quota - add info in release note v2 changes: - reword

[dpdk-dev] [PATCH v3 00/12] Add API to get packet type info

2016-02-25 Thread Jianfeng Tan
filter function from each PMDs into ether layer. - Add ixgbe vPMD's ptype info. - Fix code style issues. Jianfeng Tan (12): ethdev: add API to query packet type filling info pmd/cxgbe: add dev_ptype_info_get implementation pmd/e1000: add dev_ptype_info_get implementation pmd/enic: add

[dpdk-dev] [PATCH v3 01/12] ethdev: add API to query packet type filling info

2016-02-25 Thread Jianfeng Tan
Add a new API rte_eth_dev_get_ptype_info to query whether/what packet type can be filled by given pmd rx burst function. Signed-off-by: Jianfeng Tan --- lib/librte_ether/rte_ethdev.c | 32 lib/librte_ether/rte_ethdev.h | 23 +++ 2 files

[dpdk-dev] [PATCH v3 02/12] pmd/cxgbe: add dev_ptype_info_get implementation

2016-02-25 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/cxgbe/cxgbe_ethdev.c | 14 ++ 1 file changed, 14 insertions(+) diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c b/drivers/net/cxgbe/cxgbe_ethdev.c index 97ef152..33bd815 100644 --- a/drivers/net/cxgbe/cxgbe_ethdev.c +++ b/drivers/net/cxgbe

[dpdk-dev] [PATCH v3 03/12] pmd/e1000: add dev_ptype_info_get implementation

2016-02-25 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/e1000/igb_ethdev.c | 30 ++ 1 file changed, 30 insertions(+) diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c index 4ed5e95..b3a3ee6 100644 --- a/drivers/net/e1000/igb_ethdev.c +++ b/drivers/net

[dpdk-dev] [PATCH v3 04/12] pmd/enic: add dev_ptype_info_get implementation

2016-02-25 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/enic/enic_ethdev.c | 17 + 1 file changed, 17 insertions(+) diff --git a/drivers/net/enic/enic_ethdev.c b/drivers/net/enic/enic_ethdev.c index 2a88043..fbeab6f 100644 --- a/drivers/net/enic/enic_ethdev.c +++ b/drivers/net/enic

[dpdk-dev] [PATCH v3 05/12] pmd/fm10k: add dev_ptype_info_get implementation

2016-02-25 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/fm10k/fm10k_ethdev.c | 50 ++ drivers/net/fm10k/fm10k_rxtx.c | 3 +++ drivers/net/fm10k/fm10k_rxtx_vec.c | 3 +++ 3 files changed, 56 insertions(+) diff --git a/drivers/net/fm10k/fm10k_ethdev.c b/drivers/net

[dpdk-dev] [PATCH v3 06/12] pmd/i40e: add dev_ptype_info_get implementation

2016-02-25 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/i40e/i40e_ethdev.c| 1 + drivers/net/i40e/i40e_ethdev_vf.c | 1 + drivers/net/i40e/i40e_rxtx.c | 46 ++- drivers/net/i40e/i40e_rxtx.h | 1 + 4 files changed, 48 insertions(+), 1 deletion(-) diff

[dpdk-dev] [PATCH v3 07/12] pmd/ixgbe: add dev_ptype_info_get implementation

2016-02-25 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/ixgbe/ixgbe_ethdev.c | 38 ++ drivers/net/ixgbe/ixgbe_ethdev.h | 2 ++ drivers/net/ixgbe/ixgbe_rxtx.c | 4 +++- 3 files changed, 43 insertions(+), 1 deletion(-) diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b

[dpdk-dev] [PATCH v3 08/12] pmd/mlx4: add dev_ptype_info_get implementation

2016-02-25 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/mlx4/mlx4.c | 21 + 1 file changed, 21 insertions(+) diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c index ee00151..85fdebf 100644 --- a/drivers/net/mlx4/mlx4.c +++ b/drivers/net/mlx4/mlx4.c @@ -2835,6 +2835,8

[dpdk-dev] [PATCH v3 09/12] pmd/mlx5: add dev_ptype_info_get implementation

2016-02-25 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/mlx4/mlx4.c| 2 +- drivers/net/mlx5/mlx5.c| 1 + drivers/net/mlx5/mlx5.h| 1 + drivers/net/mlx5/mlx5_ethdev.c | 20 drivers/net/mlx5/mlx5_rxtx.c | 2 ++ 5 files changed, 25 insertions(+), 1 deletion

[dpdk-dev] [PATCH v3 10/12] pmd/nfp: add dev_ptype_info_get implementation

2016-02-25 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/nfp/nfp_net.c | 19 +++ 1 file changed, 19 insertions(+) diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c index fd4dd39..5894a9d 100644 --- a/drivers/net/nfp/nfp_net.c +++ b/drivers/net/nfp/nfp_net.c @@ -1073,6

[dpdk-dev] [PATCH v3 11/12] pmd/vmxnet3: add dev_ptype_info_get implementation

2016-02-25 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/vmxnet3/vmxnet3_ethdev.c | 16 1 file changed, 16 insertions(+) diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c b/drivers/net/vmxnet3/vmxnet3_ethdev.c index c363bf6..ac120a1 100644 --- a/drivers/net/vmxnet3/vmxnet3_ethdev.c +++ b

[dpdk-dev] [PATCH v3 12/12] examples/l3fwd: add option to parse ptype

2016-02-25 Thread Jianfeng Tan
packets with extensions or ip packets which are neither tcp nor udp cannot work well because it needs the 5 tuples to caculate hash. Signed-off-by: Jianfeng Tan --- doc/guides/sample_app_ug/l3_forward.rst | 6 +- examples/l3fwd/main.c | 122 2

[dpdk-dev] [PATCH v4 00/12] Add API to get packet type info

2016-02-26 Thread Jianfeng Tan
is enabled. - Fix l3fwd memory leak when calling the API. v2: - Move ptype_mask filter function from each PMDs into ether layer. - Add ixgbe vPMD's ptype info. - Fix code style issues. Signed-off-by: Jianfeng Tan Jianfeng Tan (12): ethdev: add API to query packet type filling info pmd/cxgbe

[dpdk-dev] [PATCH v4 01/12] ethdev: add API to query packet type filling info

2016-02-26 Thread Jianfeng Tan
Add a new API rte_eth_dev_get_ptype_info to query whether/what packet type can be filled by given pmd rx burst function. Signed-off-by: Jianfeng Tan --- lib/librte_ether/rte_ethdev.c | 26 ++ lib/librte_ether/rte_ethdev.h | 26 ++ 2 files changed

[dpdk-dev] [PATCH v4 00/12] Add API to get packet type info

2016-02-26 Thread Jianfeng Tan
is enabled. - Fix l3fwd memory leak when calling the API. v2: - Move ptype_mask filter function from each PMDs into ether layer. - Add ixgbe vPMD's ptype info. - Fix code style issues. Signed-off-by: Jianfeng Tan Jianfeng Tan (12): ethdev: add API to query packet type filling info pmd/cxgbe

[dpdk-dev] [PATCH v4 02/12] pmd/cxgbe: add dev_ptype_info_get implementation

2016-02-26 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/cxgbe/cxgbe_ethdev.c | 14 ++ 1 file changed, 14 insertions(+) diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c b/drivers/net/cxgbe/cxgbe_ethdev.c index 97ef152..33bd815 100644 --- a/drivers/net/cxgbe/cxgbe_ethdev.c +++ b/drivers/net/cxgbe

[dpdk-dev] [PATCH v4 03/12] pmd/e1000: add dev_ptype_info_get implementation

2016-02-26 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/e1000/igb_ethdev.c | 30 ++ 1 file changed, 30 insertions(+) diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c index 4ed5e95..b3a3ee6 100644 --- a/drivers/net/e1000/igb_ethdev.c +++ b/drivers/net

[dpdk-dev] [PATCH v4 04/12] pmd/enic: add dev_ptype_info_get implementation

2016-02-26 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/enic/enic_ethdev.c | 17 + 1 file changed, 17 insertions(+) diff --git a/drivers/net/enic/enic_ethdev.c b/drivers/net/enic/enic_ethdev.c index 2a88043..fbeab6f 100644 --- a/drivers/net/enic/enic_ethdev.c +++ b/drivers/net/enic

[dpdk-dev] [PATCH v4 05/12] pmd/fm10k: add dev_ptype_info_get implementation

2016-02-26 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/fm10k/fm10k_ethdev.c | 50 ++ drivers/net/fm10k/fm10k_rxtx.c | 3 +++ drivers/net/fm10k/fm10k_rxtx_vec.c | 3 +++ 3 files changed, 56 insertions(+) diff --git a/drivers/net/fm10k/fm10k_ethdev.c b/drivers/net

[dpdk-dev] [PATCH v4 07/12] pmd/ixgbe: add dev_ptype_info_get implementation

2016-02-26 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/ixgbe/ixgbe_ethdev.c | 38 ++ drivers/net/ixgbe/ixgbe_ethdev.h | 2 ++ drivers/net/ixgbe/ixgbe_rxtx.c | 4 +++- 3 files changed, 43 insertions(+), 1 deletion(-) diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b

[dpdk-dev] [PATCH v4 08/12] pmd/mlx4: add dev_ptype_info_get implementation

2016-02-26 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/mlx4/mlx4.c | 21 + 1 file changed, 21 insertions(+) diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c index ee00151..85fdebf 100644 --- a/drivers/net/mlx4/mlx4.c +++ b/drivers/net/mlx4/mlx4.c @@ -2835,6 +2835,8

[dpdk-dev] [PATCH v4 09/12] pmd/mlx5: add dev_ptype_info_get implementation

2016-02-26 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/mlx4/mlx4.c| 2 +- drivers/net/mlx5/mlx5.c| 1 + drivers/net/mlx5/mlx5.h| 1 + drivers/net/mlx5/mlx5_ethdev.c | 20 drivers/net/mlx5/mlx5_rxtx.c | 2 ++ 5 files changed, 25 insertions(+), 1 deletion

[dpdk-dev] [PATCH v4 11/12] pmd/vmxnet3: add dev_ptype_info_get implementation

2016-02-26 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/vmxnet3/vmxnet3_ethdev.c | 16 1 file changed, 16 insertions(+) diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c b/drivers/net/vmxnet3/vmxnet3_ethdev.c index c363bf6..ac120a1 100644 --- a/drivers/net/vmxnet3/vmxnet3_ethdev.c +++ b

[dpdk-dev] [PATCH v4 10/12] pmd/nfp: add dev_ptype_info_get implementation

2016-02-26 Thread Jianfeng Tan
Signed-off-by: Jianfeng Tan --- drivers/net/nfp/nfp_net.c | 19 +++ 1 file changed, 19 insertions(+) diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c index fd4dd39..5894a9d 100644 --- a/drivers/net/nfp/nfp_net.c +++ b/drivers/net/nfp/nfp_net.c @@ -1073,6

  1   2   3   >