[dpdk-dev] [PATCH] scripts: check cc stable mailing list in commit

2016-11-21 Thread Thomas Monjalon
Add a check for commits fixing a released bug. Such commits are found thanks to scripts/git-log-fixes.sh. They must be sent CC: stable at dpdk.org. In order to avoid forgetting CC, this mail header can be written in the git commit message. Signed-off-by: Thomas Monjalon --- scripts/check-git-log

[dpdk-dev] [PATCH] scripts: fix checkpatch from standard input

2016-11-21 Thread Thomas Monjalon
When checking a valid patch from standard input, the footer lines of the report are not filtered out. The function check is called outside of any loop, so the statement continue has no effect and the footer is printed. Fixes: 8005feef421d ("scripts: add standard input to checkpatch") Signed-off-

[dpdk-dev] Coverity project created for dpdk-next-net tree

2016-11-21 Thread Ferruh Yigit
Coverity project created for dpdk-next-net tree: https://scan.coverity.com/projects/dpdk-next-net This can be useful to fix coverity issues before next-net merged into master branch. Project is open for everyone to register and to get scan reports, there will be regular scans for next-net tree.

[dpdk-dev] [PATCH] eal: postpone vdev initialization

2016-11-21 Thread Jerin Jacob
On Mon, Nov 21, 2016 at 09:54:57AM +, Ferruh Yigit wrote: > On 11/20/2016 8:00 AM, Jerin Jacob wrote: > > Some platform like octeontx may use pci and > > vdev based combined device to represent a logical > > dpdk functional device.In such case, postponing the > > vdev initialization after pci d

[dpdk-dev] [PATCH] eal: postpone vdev initialization

2016-11-21 Thread Jerin Jacob
On Mon, Nov 21, 2016 at 10:39:00AM +0530, Shreyansh Jain wrote: > On Sunday 20 November 2016 01:30 PM, Jerin Jacob wrote: > > Some platform like octeontx may use pci and > > vdev based combined device to represent a logical > > dpdk functional device.In such case, postponing the > > vdev initializa

[dpdk-dev] 16.07.2 stable patches review and test

2016-11-21 Thread Yuanhan Liu
Hi all, Here is a list of patches targeted for 16.07.2 release. Please help reviewing and testing. The planned date for the final release is 30th, Nov. Before that, please shout if anyone has objections with these patches being applied, or if I missed some important fixes. These patches are locat

[dpdk-dev] [PATCH v2 2/2] net: align ethdev and eal driver names

2016-11-21 Thread David Marchand
Some virtual pmds report a different name than the vdev driver name registered in eal. While it does not hurt, let's try to be consistent. Signed-off-by: David Marchand Reviewed-by: Ferruh Yigit --- drivers/net/af_packet/rte_eth_af_packet.c | 4 +++- drivers/net/bonding/rte_eth_bond_api.c

[dpdk-dev] [PATCH v2 1/2] net: remove dead driver names

2016-11-21 Thread David Marchand
Since commit b1fb53a39d88 ("ethdev: remove some PCI specific handling"), rte_eth_dev_info_get() relies on dev->data->drv_name to report the driver name to caller. Having the pmds set driver_info->driver_name in the pmds is useless, since ethdev overwrites it right after. The only thing the pmd mus

[dpdk-dev] Solarflare PMD submission question

2016-11-21 Thread Andrew Rybchenko
On 11/21/2016 01:30 PM, Ferruh Yigit wrote: > On 11/21/2016 8:59 AM, Thomas Monjalon wrote: >> 2016-11-21 11:46, Andrew Rybchenko: >>> On 11/21/2016 11:19 AM, Thomas Monjalon wrote: > Before submitting 56 patches I'd like to double-check that checkpatch.pl > errors (for example, because of

[dpdk-dev] [PATCH 2/7] eal: Helper to convert to struct rte_pci_device

2016-11-21 Thread Jan Blunck
On Sun, Nov 20, 2016 at 4:20 PM, David Marchand wrote: > Hello Jan, > > On Sun, Nov 20, 2016 at 11:05 AM, Jan Blunck wrote: >> Signed-off-by: Jan Blunck >> --- >> lib/librte_eal/common/include/rte_pci.h | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/lib/librte_eal/common/include/

[dpdk-dev] [PATCH v2 8/8] ethdev: Decouple interrupt handling from PCI device

2016-11-21 Thread Jan Blunck
The struct rte_intr_handle is an abstraction layer for different types of interrupt mechanisms. It is embedded in the low-level device (e.g. PCI). On allocation of a struct rte_eth_dev a reference to the intr_handle should be stored for devices supporting interrupts. Signed-off-by: Jan Blunck ---

[dpdk-dev] [PATCH v2 7/8] ethdev: Move filling of rte_eth_dev_info->pci_dev to dev_infos_get()

2016-11-21 Thread Jan Blunck
Only the device itself can decide its PCI or not. Signed-off-by: Jan Blunck --- drivers/net/bnx2x/bnx2x_ethdev.c| 1 + drivers/net/bnxt/bnxt_ethdev.c | 2 ++ drivers/net/cxgbe/cxgbe_ethdev.c| 2 ++ drivers/net/e1000/em_ethdev.c | 1 + drivers/net/e1000/igb_ethd

[dpdk-dev] [PATCH v2 6/8] virtio: Don't depend on struct rte_eth_dev's pci_dev

2016-11-21 Thread Jan Blunck
We don't need to depend on rte_eth_dev->pci_dev to differentiate between the virtio_user and the virtio_pci case. Instead we can use the private virtio_hw struct to get that information. Signed-off-by: Jan Blunck --- drivers/net/virtio/virtio_ethdev.c | 21 ++--- 1 file changed,

[dpdk-dev] [PATCH v2 5/8] virtio: Add vtpci_intr_handle() helper to get rte_intr_handle

2016-11-21 Thread Jan Blunck
This adds a helper to get the rte_intr_handle from the virtio_hw. This is safe to do since the usage of the helper is guarded by RTE_ETH_DEV_INTR_LSC which is only set if we found a PCI device during initialization. Signed-off-by: Jan Blunck --- drivers/net/virtio/virtio_ethdev.c | 12 +++---

[dpdk-dev] [PATCH v2 4/8] virtio: Don't fill dev_info->driver_name

2016-11-21 Thread Jan Blunck
This is overwritten in rte_eth_dev_info_get(). Signed-off-by: Jan Blunck --- drivers/net/virtio/virtio_ethdev.c | 4 1 file changed, 4 deletions(-) diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c index 079fd6c..741688e 100644 --- a/drivers/net/virtio/v

[dpdk-dev] [PATCH v2 3/8] drivers: Use ETH_DEV_PCI_DEV() helper

2016-11-21 Thread Jan Blunck
The drivers should not directly access the rte_eth_dev->pci_dev but use a macro instead. This is a preparation for replacing the pci_dev with a struct rte_device member in the future. Signed-off-by: Jan Blunck --- drivers/net/bnxt/bnxt_ethdev.c | 19 ++- drivers/net/bnxt/bnxt_ring.

[dpdk-dev] [PATCH v2 2/8] ethdev: Helper to convert to struct rte_pci_device

2016-11-21 Thread Jan Blunck
Signed-off-by: Jan Blunck --- lib/librte_ether/rte_ethdev.h | 6 ++ 1 file changed, 6 insertions(+) diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h index 9678179..3adbb2b 100644 --- a/lib/librte_ether/rte_ethdev.h +++ b/lib/librte_ether/rte_ethdev.h @@ -1644,6 +164

[dpdk-dev] [PATCH v2 1/8] eal: define container_of macro

2016-11-21 Thread Jan Blunck
This macro is based on Jan Viktorin's original patch but also checks the type of the passed pointer against the type of the member. Signed-off-by: Jan Viktorin Signed-off-by: Shreyansh Jain [jblunck at infradead.org: add type checking and __extension__] Signed-off-by: Jan Blunck --- lib/librte

[dpdk-dev] [PATCH 4/7] virtio: Don't fill dev_info->driver_name

2016-11-21 Thread Jan Blunck
On Mon, Nov 21, 2016 at 5:49 PM, David Marchand wrote: > On Mon, Nov 21, 2016 at 5:34 PM, Jan Blunck wrote: >> On Sun, Nov 20, 2016 at 4:22 PM, David Marchand >>> I posted something similar [1], so looks good to me :-) >>> >>> [1]: http://dpdk.org/dev/patchwork/patch/16991/ >>> >> >> Thanks for r

[dpdk-dev] [PATCH 4/7] virtio: Don't fill dev_info->driver_name

2016-11-21 Thread David Marchand
On Mon, Nov 21, 2016 at 5:34 PM, Jan Blunck wrote: > On Sun, Nov 20, 2016 at 4:22 PM, David Marchand >> I posted something similar [1], so looks good to me :-) >> >> [1]: http://dpdk.org/dev/patchwork/patch/16991/ >> > > Thanks for reviewing. Do we go with your proposal then? Do you plan to > foll

[dpdk-dev] [PATCH 2/4] eventdev: implement the northbound APIs

2016-11-21 Thread Eads, Gage
Hi Jerin, I did a quick review and overall this implementation looks good. I noticed just one issue in rte_event_queue_setup(): the check of nb_atomic_order_sequences is being applied to atomic-type queues, but that field applies to ordered-type queues. One open issue I noticed is the "typical

[dpdk-dev] [PATCH] eal: postpone vdev initialization

2016-11-21 Thread Ferruh Yigit
On 11/21/2016 5:02 PM, Jerin Jacob wrote: > On Mon, Nov 21, 2016 at 09:54:57AM +, Ferruh Yigit wrote: >> On 11/20/2016 8:00 AM, Jerin Jacob wrote: >>> Some platform like octeontx may use pci and >>> vdev based combined device to represent a logical >>> dpdk functional device.In such case, postp

[dpdk-dev] [PATCH 4/7] virtio: Don't fill dev_info->driver_name

2016-11-21 Thread Jan Blunck
On Sun, Nov 20, 2016 at 4:22 PM, David Marchand wrote: > On Sun, Nov 20, 2016 at 11:05 AM, Jan Blunck wrote: >> This is overwritten in rte_eth_dev_info_get(). >> >> Signed-off-by: Jan Blunck >> --- >> drivers/net/virtio/virtio_ethdev.c | 4 >> 1 file changed, 4 deletions(-) >> >> diff --gi

[dpdk-dev] [PATCH 1/2] net: remove dead driver names

2016-11-21 Thread Jan Blunck
On Thu, Nov 10, 2016 at 2:51 PM, David Marchand wrote: > Since b1fb53a39d88 ("ethdev: remove some PCI specific handling"), Please fix this checkpatch finding. > rte_eth_dev_info_get() relies on dev->data->drv_name to report the driver > name to caller. > > Having the pmds set driver_info->driver

[dpdk-dev] [dpdk-stable] [PATCH] Revert "bonding: use existing enslaved device queues"

2016-11-21 Thread Ilya Maximets
To be clear, I still insist on applying this path as is. Best regards, Ilya Maximets. On 21.11.2016 15:49, Ilya Maximets wrote: > On 21.11.2016 14:39, Jan Blunck wrote: >> Ferruh, >> >> I've been working on a patch but was distracted by other stuff and >> therefore haven't tested it yet. > > Jan

[dpdk-dev] Adding API to force freeing consumed buffers in TX ring

2016-11-21 Thread Olivier Matz
Hi, On 11/21/2016 03:33 PM, Wiles, Keith wrote: > >> On Nov 21, 2016, at 4:48 AM, Damjan Marion (damarion) > cisco.com> wrote: >> >> >> Hi, >> >> Currently in VPP we do memcpy of whole packet when we need to do >> replication as we cannot know if specific buffer is transmitted >> from tx ring be

[dpdk-dev] [dpdk-stable] [PATCH] Revert "bonding: use existing enslaved device queues"

2016-11-21 Thread Ilya Maximets
On 21.11.2016 14:39, Jan Blunck wrote: > Ferruh, > > I've been working on a patch but was distracted by other stuff and > therefore haven't tested it yet. Jan, on what patch are you working? I don't understand. > > Stay tuned, > Jan > > On Mon, Nov 21, 2016 at 12:30 PM, Ferruh Yigit > wrote:

[dpdk-dev] Adding API to force freeing consumed buffers in TX ring

2016-11-21 Thread Bruce Richardson
On Mon, Nov 21, 2016 at 04:06:32PM +0100, Olivier Matz wrote: > Hi, > > On 11/21/2016 03:33 PM, Wiles, Keith wrote: > > > >> On Nov 21, 2016, at 4:48 AM, Damjan Marion (damarion) >> cisco.com> wrote: > >> > >> > >> Hi, > >> > >> Currently in VPP we do memcpy of whole packet when we need to do >

[dpdk-dev] [PATCH 56/56] net/sfc: add callback to send bursts of packets

2016-11-21 Thread Andrew Rybchenko
From: Ivan Malov Reviewed-by: Andy Moreton Signed-off-by: Ivan Malov Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ethdev.c | 2 + drivers/net/sfc/efx/sfc_ev.c | 22 +++- drivers/net/sfc/efx/sfc_tweak.h | 7 +++ drivers/net/sfc/efx/sfc_tx.c | 115 ++

[dpdk-dev] [PATCH 55/56] net/sfc: implement transmit path start / stop

2016-11-21 Thread Andrew Rybchenko
From: Ivan Malov Reviewed-by: Andy Moreton Signed-off-by: Ivan Malov Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc.c| 8 ++ drivers/net/sfc/efx/sfc_ev.c | 12 ++- drivers/net/sfc/efx/sfc_tx.c | 237 +++ drivers/net/sfc/efx/sfc_tx.h

[dpdk-dev] [PATCH 54/56] net/sfc: add callbacks to set up and release Tx queues

2016-11-21 Thread Andrew Rybchenko
From: Ivan Malov Reviewed-by: Andy Moreton Signed-off-by: Ivan Malov Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ethdev.c | 58 ++ drivers/net/sfc/efx/sfc_ev.h | 2 + drivers/net/sfc/efx/sfc_tx.c | 167 +++ drivers/net

[dpdk-dev] [PATCH 53/56] net/sfc: add function to check configured Tx mode

2016-11-21 Thread Andrew Rybchenko
From: Ivan Malov Reviewed-by: Andy Moreton Signed-off-by: Ivan Malov Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_tx.c | 42 ++ 1 file changed, 42 insertions(+) diff --git a/drivers/net/sfc/efx/sfc_tx.c b/drivers/net/sfc/efx/sfc_tx.c ind

[dpdk-dev] [PATCH 52/56] net/sfc: provide basic stubs for Tx subsystem

2016-11-21 Thread Andrew Rybchenko
From: Ivan Malov Reviewed-by: Andy Moreton Signed-off-by: Ivan Malov Signed-off-by: Andrew Rybchenko --- doc/guides/nics/features/sfc_efx.ini | 2 + doc/guides/nics/sfc_efx.rst | 2 + drivers/net/sfc/efx/Makefile | 1 + drivers/net/sfc/efx/sfc.c| 14 ++ dri

[dpdk-dev] [PATCH 51/56] net/sfc: discard scattered packet on Rx correctly

2016-11-21 Thread Andrew Rybchenko
Since Rx scatter is not supported, all scattered packets are discarded. It is not always possible to disable scatter on Huntington, so we should handle scattered packets correctly in any case. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ev.c | 22 ++

[dpdk-dev] [PATCH 50/56] net/sfc: implement device callback to Rx burst of packets

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ethdev.c | 2 ++ drivers/net/sfc/efx/sfc_ev.c | 47 -- drivers/net/sfc/efx/sfc_rx.c | 72 +++- drivers/net/sfc/efx/sfc_rx.h | 7 4

[dpdk-dev] [PATCH 49/56] net/sfc: implement Rx queue start and stop operations

2016-11-21 Thread Andrew Rybchenko
These functions should set the queue state in dev->data->rx_queue_state array. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc.c | 8 ++ drivers/net/sfc/efx/sfc_ev.c| 23 +++- drivers/net/sfc/efx/sfc_rx.c| 297 ++

[dpdk-dev] [PATCH 48/56] net/sfc: validate Rx queue buffers setup

2016-11-21 Thread Andrew Rybchenko
Check that Rx mbuf pool, MTU and Rx scatter config are in sync. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- doc/guides/nics/sfc_efx.rst | 10 ++ drivers/net/sfc/efx/sfc_rx.c | 14 ++ 2 files changed, 24 insertions(+) diff --git a/doc/guides/nics/sfc_efx.r

[dpdk-dev] [PATCH 47/56] net/sfc: calculate Rx buffer size which may be used

2016-11-21 Thread Andrew Rybchenko
Take Rx buffer start alignment and end-padding into account. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_rx.c | 110 +-- drivers/net/sfc/efx/sfc_rx.h | 1 + 2 files changed, 107 insertions(+), 4 deletions(-) di

[dpdk-dev] [PATCH 46/56] net/sfc: implement Rx queue setup release operations

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ethdev.c | 60 drivers/net/sfc/efx/sfc_ev.h | 2 + drivers/net/sfc/efx/sfc_rx.c | 147 +++ drivers/net/sfc/efx/sfc_rx.h | 64

[dpdk-dev] [PATCH 45/56] net/sfc: check configured rxmode

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- doc/guides/nics/sfc_efx.rst | 12 + drivers/net/sfc/efx/sfc_rx.c | 61 2 files changed, 73 insertions(+) diff --git a/doc/guides/nics/sfc_efx.rst b/doc/guides/nics/sfc_efx.rst ind

[dpdk-dev] [PATCH 44/56] net/sfc: implement Rx subsystem stubs

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/Makefile | 1 + drivers/net/sfc/efx/sfc.c| 9 drivers/net/sfc/efx/sfc.h| 4 ++ drivers/net/sfc/efx/sfc_ethdev.c | 10 drivers/net/sfc/efx/sfc_rx.c | 104

[dpdk-dev] [PATCH 43/56] net/sfc: implement device operation to retrieve link info

2016-11-21 Thread Andrew Rybchenko
From: Artem Andreev Reviewed-by: Andy Moreton Signed-off-by: Artem Andreev Signed-off-by: Andrew Rybchenko --- doc/guides/nics/features/sfc_efx.ini | 1 + doc/guides/nics/sfc_efx.rst | 2 ++ drivers/net/sfc/efx/sfc.h| 3 ++ drivers/net/sfc/efx/sfc_ethdev.c | 42 +++

[dpdk-dev] [PATCH 42/56] net/sfc: minimum port control sufficient to receive traffic

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/Makefile | 1 + drivers/net/sfc/efx/sfc.c| 16 + drivers/net/sfc/efx/sfc.h| 12 drivers/net/sfc/efx/sfc_ethdev.c | 2 + drivers/net/sfc/efx/sfc_port.c | 131

[dpdk-dev] [PATCH 41/56] net/sfc: periodic management EVQ polling using alarm

2016-11-21 Thread Andrew Rybchenko
Timers cannot be used to implement periodic polling, since it implies requirement on application to process timers in the main loop. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ev.c | 42 ++ 1 file changed, 42 ins

[dpdk-dev] [PATCH 40/56] net/sfc: maintain management event queue

2016-11-21 Thread Andrew Rybchenko
The event queue is required for device level events (e.g. link status change) and flush events. Provide thread-safe function to poll the event queue since it may be really done from different contexts. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc.h|

[dpdk-dev] [PATCH 39/56] net/sfc: implement EVQ dummy exception handling

2016-11-21 Thread Andrew Rybchenko
Right now the code just logs the exception and sets flag to notify subsequent event handlers and poller that recovery is required. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ev.c | 20 ++-- 1 file changed, 18 insertions(+), 2 deletions(

[dpdk-dev] [PATCH 38/56] net/sfc: implement event queue support

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/Makefile | 1 + drivers/net/sfc/efx/sfc.c| 17 ++ drivers/net/sfc/efx/sfc.h| 7 + drivers/net/sfc/efx/sfc_ev.c | 484 +++ drivers/net/sfc/efx/sfc_ev.h | 138

[dpdk-dev] [PATCH 37/56] net/sfc: interrupts support sufficient for event queue init

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/Makefile | 1 + drivers/net/sfc/efx/sfc.c | 22 +++ drivers/net/sfc/efx/sfc.h | 12 drivers/net/sfc/efx/sfc_intr.c | 129 + 4 files changed, 164 inse

[dpdk-dev] [PATCH 36/56] net/sfc: make available resources estimation and allocation

2016-11-21 Thread Andrew Rybchenko
Resources required in accordance with configuration are allocated only. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- doc/guides/nics/sfc_efx.rst | 8 +++ drivers/net/sfc/efx/sfc.c | 117 +--- 2 files changed, 117 insertions(+), 8 dele

[dpdk-dev] [PATCH 35/56] net/sfc: implement device start and stop operations

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc.c| 65 drivers/net/sfc/efx/sfc.h| 19 drivers/net/sfc/efx/sfc_ethdev.c | 37 +++ 3 files changed, 121 insertions(+) dif

[dpdk-dev] [PATCH 34/56] net/sfc: add device configuration checks

2016-11-21 Thread Andrew Rybchenko
Manual link speed/duplex configuration is not supported yet. Loopback is not supported yet. Flow Director is not supported. Link status change notification using interrupt is not supported yet. Receive data notification using interrupts is not supported yet. Reviewed-by: Andy Moreton Signed-off-b

[dpdk-dev] [PATCH 33/56] net/sfc: add device configure and close stubs

2016-11-21 Thread Andrew Rybchenko
Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc.c| 29 +++ drivers/net/sfc/efx/sfc.h| 31 drivers/net/sfc/efx/sfc_ethdev.c | 62 ++-- 3 files changed, 114 insertions(+),

[dpdk-dev] [PATCH 32/56] net/sfc: implement driver operation to init device on attach

2016-11-21 Thread Andrew Rybchenko
The setup and configuration of the PMD is not performance sensitive, but is not thread safe either. It is possible that the multiple read/writes during PMD setup and configuration could be corrupted in a multi-thread environment. Since this is not performance sensitive, the developer can choose to

[dpdk-dev] [PATCH 31/56] net/sfc: implement dummy callback to get device information

2016-11-21 Thread Andrew Rybchenko
Just a stub to be filled in when corresponding functionality is implemented. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/sfc_ethdev.c | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/drivers/net/sfc/efx/sfc_ethdev.c b/drivers/

[dpdk-dev] [PATCH 30/56] net/sfc: include libefx in build

2016-11-21 Thread Andrew Rybchenko
From: Artem Andreev Implement efsys.h for the PMD. Reviewed-by: Andy Moreton Signed-off-by: Artem Andreev Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/Makefile | 54 +++ drivers/net/sfc/efx/efsys.h | 767 +++ 2 files changed, 821 insertion

[dpdk-dev] [PATCH 29/56] net/sfc: import libefx licensing support

2016-11-21 Thread Andrew Rybchenko
Provide API to deal with licences on SFN7xxx and SFN8xxx family adapaters. EFSYS_OPT_LICENSING should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx.h | 145 +++ drivers/net/sfc/efx/base/efx_check.h | 10 + d

[dpdk-dev] [PATCH 28/56] net/sfc: import libefx bootrom configuration support

2016-11-21 Thread Andrew Rybchenko
Provide API to read/write bootrom configuration from/to NVRAM. EFSYS_OPT_BOOTROM should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx.h | 39 +++ drivers/net/sfc/efx/base/efx_bootcfg.c | 563

[dpdk-dev] [PATCH 27/56] net/sfc: import libefx VPD support

2016-11-21 Thread Andrew Rybchenko
Provide API to read/write PCI Vital Product Data. EFSYS_OPT_VPD should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 63 ++ drivers/net/sfc/efx/base/ef10_vpd.c | 463 +++ drivers/net/sfc/e

[dpdk-dev] [PATCH 26/56] net/sfc: import libefx NVRAM support

2016-11-21 Thread Andrew Rybchenko
Provide API to work with NIC non-volatile memory. It is used to update firmware, configure NIC including bootrom parameters, manage licenses, store PCI Vital Product Data etc. EFSYS_OPT_NVRAM should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko ---

[dpdk-dev] [PATCH 25/56] net/sfc: import libefx support for Rx packed stream mode

2016-11-21 Thread Andrew Rybchenko
In packed stream mode, large buffers are provided to the NIC into which many packets can be delivered. This reduces the number of queue refills needed compared to delivering every packet into a separate buffer. EFSYS_OPT_RX_PACKED_STREAM should be enabled to use it. >From Solarflare Communication

[dpdk-dev] [PATCH 24/56] net/sfc: import libefx support to access monitors via MCDI

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_MON_MCDI should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_nic.c | 3 + drivers/net/sfc/efx/base/efx_check.h | 7 + drivers/net/sfc/efx/base/efx_ev.c| 3 + drivers/net/sfc/efx/base/efx_mon.c

[dpdk-dev] [PATCH 23/56] net/sfc: import libefx monitors statistics support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_MON_STATS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_ev.c | 20 + drivers/net/sfc/efx/base/ef10_nic.c | 15 drivers/net/sfc/efx/base/efx.h | 140 +++

[dpdk-dev] [PATCH 22/56] net/sfc: import libefx loopback control support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_LOOPBACK should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 13 +++ drivers/net/sfc/efx/base/ef10_mac.c | 36 +++ drivers/net/sfc/efx/base/ef10_nic.c | 9 ++ drivers/net/sfc/efx/base

[dpdk-dev] [PATCH 21/56] net/sfc: import libefx RSS support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_RX_SCALE should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_filter.c | 10 + drivers/net/sfc/efx/base/ef10_impl.h | 29 +++ drivers/net/sfc/efx/base/ef10_rx.c | 443 +++

[dpdk-dev] [PATCH 20/56] net/sfc: import libefx Rx scatter support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_RX_SCATTER should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 7 +++ drivers/net/sfc/efx/base/ef10_rx.c | 11 + drivers/net/sfc/efx/base/efx.h | 7 +++ drivers/net/sfc/efx/base/efx_

[dpdk-dev] [PATCH 19/56] net/sfc: import libefx event prefetch support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_EV_PREFECT allows to enable event prefetching when event queue is polled. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx.h | 9 + drivers/net/sfc/efx/base/efx_check.h | 7 +++ drivers/net/sfc/efx/base/efx_ev.c

[dpdk-dev] [PATCH 18/56] net/sfc: import libefx MAC statistics support

2016-11-21 Thread Andrew Rybchenko
MAC statistics are either periodically (if supported/requested) or on-demand written to provided DMA-mapped memory. If periodic update is not supported (e.g. for EF10 virtual functions), it is the driver responsiblity to handle it. EFSYS_OPT_MAC_STATS should be enabled to use it. >From Solarflare

[dpdk-dev] [PATCH 17/56] net/sfc: import libefx PHY LEDs control support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_PHY_LED_CONTROL should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_phy.c | 19 +++ drivers/net/sfc/efx/base/efx.h | 20 drivers/net/sfc/efx/base/efx_check.h | 7 ++

[dpdk-dev] [PATCH 16/56] net/sfc: import libefx PHY statistics support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_PHY_STATS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 10 +++ drivers/net/sfc/efx/base/ef10_phy.c | 17 drivers/net/sfc/efx/base/efx.h| 80 ++ drivers/ne

[dpdk-dev] [PATCH 15/56] net/sfc: import libefx PHY flags control support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_PHY_FLAGS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_phy.c | 4 drivers/net/sfc/efx/base/efx.h | 3 +++ drivers/net/sfc/efx/base/efx_check.h | 7 +++ drivers/net/sfc/efx/base/efx_i

[dpdk-dev] [PATCH 14/56] net/sfc: import libefx software per-queue statistics support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_QSTATS should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_ev.c | 25 drivers/net/sfc/efx/base/ef10_impl.h | 16 + drivers/net/sfc/efx/base/ef10_tx.c | 26 drivers/net/sfc/efx/

[dpdk-dev] [PATCH 13/56] net/sfc: import libefx built-in selftest support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_BIST should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 29 + drivers/net/sfc/efx/base/ef10_phy.c | 153 + drivers/net/sfc/efx/base/efx.h| 80

[dpdk-dev] [PATCH 12/56] net/sfc: import libefx diagnostics support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_DIAG should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h | 8 ++ drivers/net/sfc/efx/base/ef10_nic.c | 27 ++ drivers/net/sfc/efx/base/efx.h| 33 +++ drivers/net/sfc/efx/base/

[dpdk-dev] [PATCH 11/56] net/sfc: import libefx SFN8xxx family support

2016-11-21 Thread Andrew Rybchenko
SFN8xxx is the second family based on EF10 architecture. It has few differences from SFN7xxx adapters family. EFSYS_OPT_MEDFORD should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_impl.h| 6 +- drivers/net/s

[dpdk-dev] [PATCH 10/56] net/sfc: import libefx SFN7xxx family support

2016-11-21 Thread Andrew Rybchenko
SFN7xxx is the first family based on EF10 architecture. EFSYS_OPT_HUNTINGTON should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/ef10_ev.c | 1226 +++ drivers/net/sfc/efx/base/ef10_filter.c |

[dpdk-dev] [PATCH 09/56] net/sfc: import libefx 5xxx/6xxx family support

2016-11-21 Thread Andrew Rybchenko
EFSYS_OPT_SIENA should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx_check.h | 14 + drivers/net/sfc/efx/base/efx_ev.c | 783 drivers/net/sfc/efx/base/efx_filter.c | 1042 ++

[dpdk-dev] [PATCH 08/56] net/sfc: import libefx MCDI proxy authorization support

2016-11-21 Thread Andrew Rybchenko
MCDI proxy authorization may be used if priviledged PCI function (physical function) would like to intercept and authorize MCDI requests done by unprivileged (e.g. virtual) PCI function. It may be used to control unpriviledged function Rx mode (e.g. promicsuous, all-multicast), MTU and default MAC

[dpdk-dev] [PATCH 07/56] net/sfc: import libefx MCDI logging support

2016-11-21 Thread Andrew Rybchenko
Driver can provide a function to be called to log MCDI requests and responses to help with debugging. Solarflare netlogdecode cross-platform tool may be used to decode these logs. EFSYS_OPT_MCDI_LOGGING should be enabled to use it. >From Solarflare Communications Inc. Signed-off-by: Andrew Rybc

[dpdk-dev] [PATCH 06/56] net/sfc: import libefx MCDI implementation

2016-11-21 Thread Andrew Rybchenko
Implement interface to talk to NIC managment CPU. Provide helpers to fill in MCDI requests, execute it and process recevied response. MCDI request is prepared in either PCI BAR mapped memory (SFN5xxx/SFN6xxx) or DMA-mapped memory (SFN7xxx/SFN8xxx) and, doorbell is pressed (memory-mapped register)

[dpdk-dev] [PATCH 05/56] net/sfc: import libefx MCDI definition

2016-11-21 Thread Andrew Rybchenko
The header defines data interface between host CPU and NIC management CPU. The header is automatially generated from firmware sources. MCDI is used on NIC control path (configuration, event/transmit/receive queues setup and teardown etc), but not used on data path. >From Solarflare Communication

[dpdk-dev] [PATCH 04/56] net/sfc: import libefx filters support

2016-11-21 Thread Andrew Rybchenko
Filtering capabilities depend on NIC family and used firmware variant. Provided API allows to get supported filter types (in a priority order), add/delete individual filters and restore entire filter table after, for example, NIC management CPU reboot. Rx filters allow to redirect matching flow to

[dpdk-dev] [PATCH 03/56] net/sfc: import libefx register definitions

2016-11-21 Thread Andrew Rybchenko
>From Solarflare Communications Inc. Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/efx/base/efx_regs.h | 3870 +++ drivers/net/sfc/efx/base/efx_regs_pci.h | 2356 +++ 2 files changed, 6226 insertions(+) create mode 100644 drivers/net/sfc/efx

[dpdk-dev] [PATCH 02/56] net/sfc: import libefx base

2016-11-21 Thread Andrew Rybchenko
libefx is a platform-independent library to implement drivers for Solarflare network adapters. It provides unified adapter family independent interface (if possible). Driver must provide efsys.h header which defines options (EFSYS_OPT_*) to be used and macros/functions to allocate memory, read/wri

[dpdk-dev] [PATCH 01/56] net/sfc: libefx-based PMD stub sufficient to build and init

2016-11-21 Thread Andrew Rybchenko
The PMD is put into the sfc/efx subdirectory to have a place for the second PMD and library shared by both. Enable the PMD by default on supported configuratons. Reviewed-by: Andy Moreton Signed-off-by: Andrew Rybchenko --- MAINTAINERS | 6 ++ config/commo

[dpdk-dev] [PATCH 00/56] Solarflare libefx-based PMD

2016-11-21 Thread Andrew Rybchenko
The patch series adds Solarflare libefx-based network PMD. This version of the driver supports Solarflare SFN7xxx and SFN8xxx families of 10/40 Gbps adapters. libefx is a platform-independent library to implement drivers for Solarflare network adapters. It provides unified adapter family independ

[dpdk-dev] [PATCH v2] nfp: report link speed using hardware info

2016-11-21 Thread Alejandro Lucero
On Mon, Nov 21, 2016 at 11:18 AM, Ferruh Yigit wrote: > On 11/18/2016 4:06 PM, Alejandro Lucero wrote: > > Previous reported speed was hardcoded. > > > > Signed-off-by: Alejandro Lucero > > --- > > drivers/net/nfp/nfp_net.c | 28 ++-- > > drivers/net/nfp/nfp_net_ctr

[dpdk-dev] Adding API to force freeing consumed buffers in TX ring

2016-11-21 Thread Wiles, Keith
> On Nov 21, 2016, at 4:48 AM, Damjan Marion (damarion) > wrote: > > > Hi, > > Currently in VPP we do memcpy of whole packet when we need to do > replication as we cannot know if specific buffer is transmitted > from tx ring before we update it again (i.e. l2 header rewrite). > > Unless the

[dpdk-dev] [PATCH v3] ntnic: add PMD driver

2016-11-21 Thread Finn Christensen
I have changed the state to rejected. Sorry for not doing this earlier. Finn Christensen -Original Message- From: Ferruh Yigit [mailto:ferruh.yi...@intel.com] Sent: 21. november 2016 14:48 To: Finn Christensen ; Thomas Monjalon Cc: Neil Horman ; dev at dpdk.org; stephen at networkplumb

[dpdk-dev] [PATCH RFC 0/2] Allow vectorized Rx with 4096 desc ring size on Intel NICs.

2016-11-21 Thread Ferruh Yigit
On 10/19/2016 3:30 PM, Ferruh Yigit wrote: > On 10/19/2016 3:07 PM, Ilya Maximets wrote: >> Ilya Maximets (2): >> net/i40e: allow bulk alloc for the max size desc ring >> net/ixgbe: allow bulk alloc for the max size desc ring >> >> drivers/net/i40e/i40e_rxtx.c | 24 +--- >

[dpdk-dev] [PATCH v3] ntnic: add PMD driver

2016-11-21 Thread Ferruh Yigit
On 9/12/2016 8:34 AM, fc at napatech.com (Finn Christensen) wrote: >> -Original Message- >> From: Thomas Monjalon [mailto:thomas.monjalon at 6wind.com] >> Sent: 10. september 2016 10:20 >> To: Finn Christensen >> Cc: Neil Horman ; dev at dpdk.org; >> stephen at networkplumber.org >> Subjec

[dpdk-dev] [PATCH] examples/ip_pipeline: fix load balancing function in pass-through pipeline

2016-11-21 Thread Jasvinder Singh
This patch fixes the configuration file parsing error when load balancing function is enabled in pass-through pipeline. error log: pipeline> [APP] Initializing PIPELINE1 ... [PIPELINE1] Pass-through Parse error in section "PIPELINE1": entry "lb" has invalid value ("hash") Fixes: cbe82f6cfb0a ("ex

[dpdk-dev] [PATCH v9] drivers/net:new PMD using tun/tap host interface

2016-11-21 Thread Ferruh Yigit
On 10/13/2016 11:03 PM, Keith Wiles wrote: > The rte_eth_tap.c PMD creates a device using TUN/TAP interfaces > on the local host. The PMD allows for DPDK and the host to > communicate using a raw device interface on the host and in > the DPDK application. The device created is a Tap device with > a

[dpdk-dev] [dpdk-stable] [PATCH] Revert "bonding: use existing enslaved device queues"

2016-11-21 Thread Jan Blunck
Ferruh, I've been working on a patch but was distracted by other stuff and therefore haven't tested it yet. Stay tuned, Jan On Mon, Nov 21, 2016 at 12:30 PM, Ferruh Yigit wrote: > On 10/25/2016 3:00 PM, Bruce Richardson wrote: >> On Tue, Oct 25, 2016 at 02:48:04PM +0100, Declan Doherty wrote:

[dpdk-dev] [RFC PATCH 0/6] Restructure EAL device model for bus support

2016-11-21 Thread Jan Blunck
On Mon, Nov 21, 2016 at 10:08 AM, Thomas Monjalon wrote: > 2016-11-20 16:30, David Marchand: >> For a first patchset, I would see: >> - introduce the rte_bus object. In rte_eal_init, for each bus, we call >> the scan method. Then, for each bus, we find the appropriate >> rte_driver using the bus m

[dpdk-dev] Solarflare PMD submission question

2016-11-21 Thread Andrew Rybchenko
On 11/21/2016 11:19 AM, Thomas Monjalon wrote: >> Before submitting 56 patches I'd like to double-check that checkpatch.pl >> errors (for example, because of assignments in the 'if' condition, >> parenthesis around return value) is not a show-stopper for base driver >> import. > You can run checkpa

[dpdk-dev] [dpdk-stable] [PATCH] Revert "bonding: use existing enslaved device queues"

2016-11-21 Thread Ferruh Yigit
On 10/25/2016 3:00 PM, Bruce Richardson wrote: > On Tue, Oct 25, 2016 at 02:48:04PM +0100, Declan Doherty wrote: >> On 25/10/16 13:57, Bruce Richardson wrote: >>> On Mon, Oct 24, 2016 at 04:07:17PM +0100, Declan Doherty wrote: On 24/10/16 15:51, Jan Blunck wrote: > On Mon, Oct 24, 2016 at

[dpdk-dev] [PATCH v2] nfp: report link speed using hardware info

2016-11-21 Thread Ferruh Yigit
On 11/18/2016 4:06 PM, Alejandro Lucero wrote: > Previous reported speed was hardcoded. > > Signed-off-by: Alejandro Lucero > --- > drivers/net/nfp/nfp_net.c | 28 ++-- > drivers/net/nfp/nfp_net_ctrl.h | 13 + > 2 files changed, 39 insertions(+), 2 deleti

[dpdk-dev] [PATCH v2] nfp: report link speed using hardware info

2016-11-21 Thread Ferruh Yigit
On 11/18/2016 4:50 PM, Alejandro Lucero wrote: > On Fri, Nov 18, 2016 at 4:29 PM, Thomas Monjalon 6wind.com> > wrote: > >> 2016-11-18 16:06, Alejandro Lucero: >>> Previous reported speed was hardcoded. >>> >>> Signed-off-by: Alejandro Lucero >>> --- >>> drivers/net/nfp/nfp_net.c | 28 +

[dpdk-dev] Adding API to force freeing consumed buffers in TX ring

2016-11-21 Thread Damjan Marion (damarion)
Hi, Currently in VPP we do memcpy of whole packet when we need to do replication as we cannot know if specific buffer is transmitted from tx ring before we update it again (i.e. l2 header rewrite). Unless there is already a way to address this issue in DPDK which I?m not aware of my proposal is

[dpdk-dev] [PATCH 0/4] libeventdev API and northbound implementation

2016-11-21 Thread Thomas Monjalon
2016-11-19 00:57, Jerin Jacob: > On Fri, Nov 18, 2016 at 04:04:29PM +, Bruce Richardson wrote: > > On Fri, Nov 18, 2016 at 03:25:18PM +, Bruce Richardson wrote: > > > On Fri, Nov 18, 2016 at 11:14:58AM +0530, Jerin Jacob wrote: > > > > Possible next steps: > > > > 1) Review this patch set >

  1   2   >