[dpdk-dev] [PATCH 4/4] virtio/vdev: add a new vdev named eth_cvio

2016-01-10 Thread Jianfeng Tan
Add a new virtual device named eth_cvio, it can be used just like eth_ring, eth_null, etc. Configured parameters include: - rx (optional, 1 by default): number of rx, only allowed to be 1 for now. - tx (optional, 1 by default): number of tx, only allowed

[dpdk-dev] [PATCH 3/4] virtio/vdev: add ways to interact with vhost

2016-01-10 Thread Jianfeng Tan
Depends on the type of vhost file: vhost-user is used if the given path points to a unix socket; vhost-net is used if the given path points to a char device. NOTE: we now keep CONFIG_RTE_VIRTIO_VDEV undefined by default, need to be uncommented when in use. Signed-off-by: Huawei Xie Signed-off-by

[dpdk-dev] [PATCH 2/4] mem: add API to obstain memory-backed file info

2016-01-10 Thread Jianfeng Tan
A new API named rte_eal_get_backfile_info() and a new data struct back_file is added to obstain information of memory- backed file info. Signed-off-by: Huawei Xie Signed-off-by: Jianfeng Tan --- lib/librte_eal/common/include/rte_memory.h | 16 + lib/librte_eal/linuxapp/eal/eal_memor

[dpdk-dev] [PATCH 1/4] mem: add --single-file to create single mem-backed file

2016-01-10 Thread Jianfeng Tan
Originally, there're two cons in using hugepage: a. needs root privilege to touch /proc/self/pagemap, which is a premise to alllocate physically contiguous memseg; b. possibly too many hugepage file are created, especially used with 2M hugepage. For virtual devices, they don't care about physical-

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

2016-01-10 Thread Jianfeng Tan
This patchset is to provide high performance networking interface (virtio) for container-based DPDK applications. The way of starting DPDK apps in containers with ownership of NIC devices exclusively is beyond the scope. The basic idea here is to present a new virtual device (named eth_cvio), which

[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread Zhang, Helin
Hello David Thanks for your huge contribution! May you help to describe more details of why you made these huge changes? What benefit we can have with your changes. I guess there must have, while you did not tell that here. Regards, Helin > -Original Message- > From: dev [mailto:dev-bou

[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread David Marchand
Really ... Last mail for today ... On Sun, Jan 10, 2016 at 2:26 PM, David Marchand wrote: > > > On Sun, Jan 10, 2016 at 2:24 PM, Thomas Monjalon < > thomas.monjalon at 6wind.com> wrote: > >> 2016-01-10 13:58, David Marchand: >> > Hello Thomas, >> > >> > Sorry, don't know how I ended up with this

[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread David Marchand
On Sun, Jan 10, 2016 at 2:24 PM, Thomas Monjalon wrote: > 2016-01-10 13:58, David Marchand: > > Hello Thomas, > > > > Sorry, don't know how I ended up with this, I wrote an incorrect mail > > address for you (I should not send patches after sunday meal ;-)). > > No worries :) > I was not expectin

[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread Thomas Monjalon
2016-01-10 13:58, David Marchand: > Hello Thomas, > > Sorry, don't know how I ended up with this, I wrote an incorrect mail > address for you (I should not send patches after sunday meal ;-)). No worries :) I was not expecting a patch so quickly after introducing you in this thread. Glad to see t

[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread David Marchand
Hello Thomas, Sorry, don't know how I ended up with this, I wrote an incorrect mail address for you (I should not send patches after sunday meal ;-)). -- David Marchand

[dpdk-dev] [PATCH 11/11] pci: place all uio pci device ids in a dedicated section

2016-01-10 Thread David Marchand
We could do something ? la modinfo, but let's keep it simple for now. With this, you can extract the devices that need to be bound to uio / vfio with tools like objdump : $ objdump -j rte_pci_id_uio -s build/lib/librte_pmd_fm10k.so Contents of section rte_pci_id_uio: 15760 8680a415 868

[dpdk-dev] [PATCH 10/11] pci: no need for global device ids list

2016-01-10 Thread David Marchand
Now that all pci device ids are in their respective drivers, we can remove this header. Signed-off-by: David Marchand --- doc/api/doxy-api-index.md | 1 - doc/guides/prog_guide/dev_kit_build_system.rst | 75 ++-- lib/librte_eal/common/Makefile

[dpdk-dev] [PATCH 09/11] doc: refresh headers list

2016-01-10 Thread David Marchand
Since we are going to remove a header in next commit, let's first refresh documentation. Signed-off-by: David Marchand --- doc/guides/prog_guide/dev_kit_build_system.rst | 57 +- 1 file changed, 38 insertions(+), 19 deletions(-) diff --git a/doc/guides/prog_guide/dev_kit

[dpdk-dev] [PATCH 08/11] bnx2x: move pci device ids to driver

2016-01-10 Thread David Marchand
Reused defines from the driver and moved broadcom vendor id macro. Signed-off-by: David Marchand --- drivers/net/bnx2x/bnx2x.c | 3 +- drivers/net/bnx2x/bnx2x_ethdev.c| 25 --- lib/librte_eal/common/include/rte_pci_dev_ids.h | 60 ---

[dpdk-dev] [PATCH 07/11] enic: move pci device ids to driver

2016-01-10 Thread David Marchand
Moved cisco vendor id since the driver had no such information. Signed-off-by: David Marchand --- drivers/net/enic/enic_ethdev.c | 12 lib/librte_eal/common/include/rte_pci_dev_ids.h | 17 - 2 files changed, 4 insertions(+), 25 deletions(-) diff --g

[dpdk-dev] [PATCH 06/11] vmxnet3: move pci device ids to driver

2016-01-10 Thread David Marchand
Moved vmware device ids macro since the driver had no such information. Signed-off-by: David Marchand --- drivers/net/vmxnet3/vmxnet3_ethdev.c| 7 +++ lib/librte_eal/common/include/rte_pci_dev_ids.h | 16 2 files changed, 3 insertions(+), 20 deletions(-) diff -

[dpdk-dev] [PATCH 05/11] virtio: move pci device ids to driver

2016-01-10 Thread David Marchand
Reused defines from virtio_pci.h. Signed-off-by: David Marchand --- drivers/net/virtio/virtio_ethdev.c | 5 + lib/librte_eal/common/include/rte_pci_dev_ids.h | 17 - 2 files changed, 1 insertion(+), 21 deletions(-) diff --git a/drivers/net/virtio/virtio_ethdev.

[dpdk-dev] [PATCH 04/11] fm10k: move pci device ids to driver

2016-01-10 Thread David Marchand
Since the base driver already defines all pci device ids, no need to redefine them, let's just drop the previous RTE_PCI_DEV_ID_DECL* stuff. Signed-off-by: David Marchand --- drivers/net/fm10k/fm10k_ethdev.c| 8 +++ lib/librte_eal/common/include/rte_pci_dev_ids.h | 29 --

[dpdk-dev] [PATCH 03/11] i40e: move pci device ids to driver

2016-01-10 Thread David Marchand
Since the base driver already defines all pci device ids, no need to redefine them, let's just drop the previous RTE_PCI_DEV_ID_DECL* stuff. Signed-off-by: David Marchand --- drivers/net/i40e/i40e_ethdev.c | 18 +++- drivers/net/i40e/i40e_ethdev_vf.c | 6 ++-

[dpdk-dev] [PATCH 02/11] ixgbe: move pci device ids to driver

2016-01-10 Thread David Marchand
test application and kni still want to know ixgbe pci devices. So let's create a header in the driver that will be used by them. Signed-off-by: David Marchand --- app/test-pmd/Makefile | 2 + app/test-pmd/cmdline.c | 2 +- app/test/Makefile

[dpdk-dev] [PATCH 01/11] e1000: move pci device ids to driver

2016-01-10 Thread David Marchand
test application and kni still want to know e1000 pci devices. So let's create headers in the driver that will be used by them. Signed-off-by: David Marchand --- app/test/Makefile | 3 + app/test/test_pci.c | 3 +- drivers/net/e1000/e

[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread David Marchand
This patchset moves all pci device ids from eal to the pmds that need them (patches 1 to 8). Global pci device id list is then removed (patches 9, 10). In last patch, all those device ids are put in a dedicated section for retrieval by external tools. -- David Marchand David Marchand (11): e1

[dpdk-dev] [PATCH 03/11] i40e: move pci device ids to driver

2016-01-10 Thread Stephen Hemminger
On Sun, 10 Jan 2016 13:50:46 +0100 David Marchand wrote: > +{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_SFP_XL710) }, > +{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_QEMU) }, > +{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_KX_A) }, > +{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E