From: Eric Kinzie <ekin...@brocade.com>
The bonding PMD in mode 4 puts all enslaved interfaces into promiscuous
mode in order to receive LACPDUs and must filter unwanted packets
after the traffic has been "collected". Allow broadcast and multicast
through so that ARP and IPv6 ne
From: Eric Kinzie <ekin...@brocade.com>
Provide functions to allow an external 802.3ad state machine to transmit
and recieve LACPDUs and to set the collection/distribution flags on
slave interfaces.
Signed-off-by: Eric Kinzie
---
lib/librte_pmd_bond/rte_eth_bond_8023ad.c
From: Eric Kinzie <ekin...@brocade.com>
This adds test cases for exercising the external state machine API to
the mode 4 autotest.
Signed-off-by: Eric Kinzie
---
app/test/test_link_bonding_mode4.c | 210 ++--
1 file changed, 201 insertions(+), 9 del
Clear values specific to ixgbe vector RX during queue reset.
I've also include a patch that adds a memory barrier before writing the
rx/tx tail pointer registers in ixgbe_rxtx_vec.c. The non-vector code
has such barriers which looks right to me. Comments?
Eric Kinzie (2):
ixgbe: vector rx
available. This causes receive to stop indefinitely
on that queue.
Fixes: 01fa1d6215fa ("ixgbe: unify Rx setup")
Signed-off-by: Eric Kinzie
---
drivers/net/ixgbe/ixgbe_rxtx.c |4
1 file changed, 4 insertions(+)
diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ix
Add write memory barrier before writing tail pointer.
Fixes c95584dc2b18 ("ixgbe: new vectorized functions for Rx/Tx")
Signed-off-by: Eric Kinzie
---
drivers/net/ixgbe/ixgbe_rxtx_vec.c |3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/ixgbe/ixgbe_rxtx_vec.c
b/d
On Wed Jun 04 16:18:53 +0100 2014, Declan Doherty wrote:
> - Broadcast TX burst broadcast bug fix
> - Add/remove slave behavior fix
> - Checkpatch fixes
Declan, would you consider the following change to rte_bond.c? The two
header files from librte_cmdline don't seem to be necessary.
Eric
This patchset makes a couple of small corrections to the bonding driver
and introduces the ability to use an external state machine for mode
4 operation.
Eric Kinzie (5):
bond: use existing enslaved device queues
bond mode 4: copy entire config structure
bond mode 4: do not ignore multicast
If a device to be enslaved already has transmit and/or receive queues
allocated, use those and then create any additional queues that are
necessary.
Signed-off-by: Eric Kinzie
---
lib/librte_pmd_bond/rte_eth_bond_pmd.c |8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git
Copy all needed fields from the mode8023ad_private structure in
bond_mode_8023ad_conf_get().
Signed-off-by: Eric Kinzie
---
lib/librte_pmd_bond/rte_eth_bond_8023ad.c |1 +
1 file changed, 1 insertion(+)
diff --git a/lib/librte_pmd_bond/rte_eth_bond_8023ad.c
b/lib/librte_pmd_bond
The bonding PMD in mode 4 puts all enslaved interfaces into promiscuous
mode in order to receive LACPDUs and must filter unwanted packets
after the traffic has been "collected". Allow broadcast and multicast
through so that ARP and IPv6 neighbor discovery continue to work.
Signed-of
Provide functions to allow an external 802.3ad state machine to transmit
and recieve LACPDUs and to set the collection/distribution flags on
slave interfaces.
Signed-off-by: Eric Kinzie
---
lib/librte_pmd_bond/rte_eth_bond_8023ad.c | 175 +
lib/librte_pmd_bond
This adds test cases for exercising the external state machine API to
the mode 4 autotest.
Signed-off-by: Eric Kinzie
---
app/test/test_link_bonding_mode4.c | 201 ++--
1 file changed, 192 insertions(+), 9 deletions(-)
diff --git a/app/test
On Tue Apr 07 16:18:08 +0200 2015, Pawel Wodkowski wrote:
> On 2015-04-06 19:01, Eric Kinzie wrote:
>
> Interesting patch. I will closer look at this tomorrow.
>
> For now I have first comments:
>
> >+static void bond_mode_8023ad_ext_periodic_cb(void
On Fri Apr 10 09:40:09 +0200 2015, Pawel Wodkowski wrote:
> On 2015-04-06 19:01, Eric Kinzie wrote:
> >If a device to be enslaved already has transmit and/or receive queues
> >allocated, use those and then create any additional queues that are
> >necessary.
> >
&g
. check for valid LACPDU in test application's rx callback
. add "Fixes:" tags
Eric Kinzie (4):
bond mode 4: copy entire config structure
bond mode 4: do not ignore multicast
bond mode 4: allow external state machine
bond mode 4: tests for external state machine
From: Eric Kinzie <ekin...@brocade.com>
Copy all needed fields from the mode8023ad_private structure in
bond_mode_8023ad_conf_get(). This help ensure that a subsequent call
to rte_eth_bond_8023ad_setup() is not passed uninitialized data that
would result in either incorrect be
From: Eric Kinzie <ekin...@brocade.com>
The bonding PMD in mode 4 puts all enslaved interfaces into promiscuous
mode in order to receive LACPDUs and must filter unwanted packets
after the traffic has been "collected". Allow broadcast and multicast
through so that ARP and IPv6 ne
From: Eric Kinzie <ekin...@brocade.com>
Provide functions to allow an external 802.3ad state machine to transmit
and recieve LACPDUs and to set the collection/distribution flags on
slave interfaces.
Signed-off-by: Eric Kinzie
---
lib/librte_pmd_bond/rte_eth_bond_8023ad.c
From: Eric Kinzie <ekin...@brocade.com>
This adds test cases for exercising the external state machine API to
the mode 4 autotest.
Signed-off-by: Eric Kinzie
---
app/test/test_link_bonding_mode4.c | 210 ++--
1 file changed, 201 insertions(+), 9 del
acros
Changes in v6:
. updated symbols have version 2.2
. specify versioned local symbol names in map so they don't become exported
Eric Kinzie (4):
bond mode 4: copy entire config structure
bond mode 4: do not ignore multicast
bond mode 4: allow external state machine
bond mode 4: test
From: Eric Kinzie <ekin...@brocade.com>
Copy all needed fields from the mode8023ad_private structure in
bond_mode_8023ad_conf_get(). This help ensure that a subsequent call
to rte_eth_bond_8023ad_setup() is not passed uninitialized data that
would result in either incorrect be
From: Eric Kinzie <ekin...@brocade.com>
The bonding PMD in mode 4 puts all enslaved interfaces into promiscuous
mode in order to receive LACPDUs and must filter unwanted packets
after the traffic has been "collected". Allow broadcast and multicast
through so that ARP and IPv6 ne
From: Eric Kinzie <ekin...@brocade.com>
Provide functions to allow an external 802.3ad state machine to transmit
and recieve LACPDUs and to set the collection/distribution flags on
slave interfaces.
Size of struct rte_eth_bond_8023ad_conf changed. Increment LIBABIVER
and v
From: Eric Kinzie <ekin...@brocade.com>
This adds test cases for exercising the external state machine API to
the mode 4 autotest.
Signed-off-by: Eric Kinzie
---
app/test/test_link_bonding_mode4.c | 210 ++--
1 file changed, 201 insertions(+), 9 del
. check for valid LACPDU in test application's rx callback
. add "Fixes:" tags
Changes in v3:
. update rte_eth_bond_version.map
Changes in v4:
. version functions that modify slowrx_cb
Changes in v5:
. remove "__vsym" from source files and use updated symbol version ma
From: Eric Kinzie <ekin...@brocade.com>
Copy all needed fields from the mode8023ad_private structure in
bond_mode_8023ad_conf_get(). This help ensure that a subsequent call
to rte_eth_bond_8023ad_setup() is not passed uninitialized data that
would result in either incorrect be
From: Eric Kinzie <ekin...@brocade.com>
The bonding PMD in mode 4 puts all enslaved interfaces into promiscuous
mode in order to receive LACPDUs and must filter unwanted packets
after the traffic has been "collected". Allow broadcast and multicast
through so that ARP and IPv6 ne
From: Eric Kinzie <ekin...@brocade.com>
Provide functions to allow an external 802.3ad state machine to transmit
and recieve LACPDUs and to set the collection/distribution flags on
slave interfaces.
Size of struct rte_eth_bond_8023ad_conf changed. Increment LIBABIVER
and v
From: Eric Kinzie <ekin...@brocade.com>
This adds test cases for exercising the external state machine API to
the mode 4 autotest.
Signed-off-by: Eric Kinzie
---
app/test/test_link_bonding_mode4.c | 210 ++--
1 file changed, 201 insertions(+), 9 del
. check for valid LACPDU in test application's rx callback
. add "Fixes:" tags
Changes in v3:
. update rte_eth_bond_version.map
Changes in v4:
. version functions that modify slowrx_cb
Eric Kinzie (4):
bond mode 4: copy entire config structure
bond mode 4: do not ignore multic
From: Eric Kinzie <ekin...@brocade.com>
Copy all needed fields from the mode8023ad_private structure in
bond_mode_8023ad_conf_get(). This help ensure that a subsequent call
to rte_eth_bond_8023ad_setup() is not passed uninitialized data that
would result in either incorrect be
From: Eric Kinzie <ekin...@brocade.com>
The bonding PMD in mode 4 puts all enslaved interfaces into promiscuous
mode in order to receive LACPDUs and must filter unwanted packets
after the traffic has been "collected". Allow broadcast and multicast
through so that ARP and IPv6 ne
From: Eric Kinzie <ekin...@brocade.com>
Provide functions to allow an external 802.3ad state machine to transmit
and recieve LACPDUs and to set the collection/distribution flags on
slave interfaces.
Size of struct rte_eth_bond_8023ad_conf changed. Increment LIBABIVER
and v
From: Eric Kinzie <ekin...@brocade.com>
This adds test cases for exercising the external state machine API to
the mode 4 autotest.
Signed-off-by: Eric Kinzie
---
app/test/test_link_bonding_mode4.c | 210 ++--
1 file changed, 201 insertions(+), 9 del
This change addresses an issue found using the bonding driver
with ixgbe interfaces that have vector operations enabled
(CONFIG_RTE_IXGBE_INC_VECTOR=y).
Eric Kinzie (1):
ixgbe: fall back to non-vector rx
drivers/net/ixgbe/ixgbe_rxtx.c | 10 +-
drivers/net/ixgbe/ixgbe_rxtx.h
of the enslaved interfaces can drop below
that threshold. Instead of just giving up when insufficient buffers are
supplied fall back to the original, non-vector, ixgbe receive function.
Signed-off-by: Eric Kinzie
---
drivers/net/ixgbe/ixgbe_rxtx.c | 10 +-
drivers/net/ixgbe
On Mon Nov 02 12:23:47 +0200 2015, Panu Matilainen wrote:
> On 11/01/2015 08:17 PM, Thomas Monjalon wrote:
> >2015-10-19 08:36, Eric Kinzie:
> >> Size of struct rte_eth_bond_8023ad_conf changed. Increment LIBABIVER
> >> and version bond_mode_8023ad_setup an
On Tue Nov 03 10:30:56 +0200 2015, Panu Matilainen wrote:
> On 11/03/2015 10:16 AM, Thomas Monjalon wrote:
> >2015-11-03 08:48, Panu Matilainen:
> >>On 11/02/2015 06:42 PM, Eric Kinzie wrote:
> >>>On Mon Nov 02 12:23:47 +0200 2015, Panu Matilainen wrote:
> &
On Tue Nov 03 11:48:57 + 2015, Ferruh Yigit wrote:
> On Tue, Nov 03, 2015 at 01:31:45PM +0200, Panu Matilainen wrote:
> > On 11/03/2015 01:02 PM, Ferruh Yigit wrote:
> >> On Tue, Nov 03, 2015 at 08:48:16AM +0200, Panu Matilainen wrote:
> >>> On 11/02/20
This patchset introduces the ability to use an external 802.3ad state
machine for mode 4 bonding. Functions to alter the mux state and to
allow LACPDUs to be sent and received from outside of the bonding PMD
are provided.
Eric Kinzie (2):
bond mode 4: allow external state machine
bond mode 4
From: Eric Kinzie <ekin...@brocade.com>
Provide functions to allow an external 802.3ad state machine to transmit
and recieve LACPDUs and to set the collection/distribution flags on
slave interfaces.
Signed-off-by: Eric Kinzie
---
drivers/net/bonding/rte_eth_bond_8023ad.c
From: Eric Kinzie <ekin...@brocade.com>
This adds test cases for exercising the external state machine API to
the mode 4 autotest.
Signed-off-by: Eric Kinzie
---
app/test/test_link_bonding_mode4.c | 210 ++--
1 file changed, 201 insertions(+), 9 del
Provide functions to allow an external 802.3ad state machine to transmit
and recieve LACPDUs and to set the collection/distribution flags on
slave interfaces.
Signed-off-by: Eric Kinzie
---
drivers/net/bonding/rte_eth_bond_8023ad.c | 323 +++--
drivers/net/bonding
This adds test cases for exercising the external state machine API to
the mode 4 autotest.
Signed-off-by: Eric Kinzie
---
app/test/test_link_bonding_mode4.c | 215 ++--
1 file changed, 206 insertions(+), 9 deletions(-)
diff --git a/app/test
On Wed Sep 07 15:28:10 +0300 2016, Ilya Maximets wrote:
> This reverts commit 5b7bb2bda5519b7800f814df64d4e015282140e5.
>
> It is necessary to reconfigure all queues every time because configuration
> can be changed.
>
> For example, if we're reconfiguring bonding device with new memory pool,
>
On Wed Oct 12 16:24:21 +0100 2016, Bruce Richardson wrote:
> On Wed, Oct 12, 2016 at 04:24:54PM +0300, Ilya Maximets wrote:
> > On 07.10.2016 05:02, Eric Kinzie wrote:
> > > On Wed Sep 07 15:28:10 +0300 2016, Ilya Maximets wrote:
> > >> This reverts commit 5b7bb2bda5
ring"
Changes in v3:
This version has only fixes. Patches with new functionality have been
removed and will be submitted separately.
- remove "bond mode 4: allow external state machine"
- remove "bond: use existing enslaved device queues"
Eric Kinzie (4):
bond mode 4: co
From: Eric Kinzie <ekin...@brocade.com>
Copy all needed fields from the mode8023ad_private structure in
bond_mode_8023ad_conf_get(). This help ensure that a subsequent call
to rte_eth_bond_8023ad_setup() is not passed uninitialized data that
would result in either incorrect behavior or a
From: Eric Kinzie <ekin...@brocade.com>
The bonding PMD in mode 4 puts all enslaved interfaces into promiscuous
mode in order to receive LACPDUs and must filter unwanted packets
after the traffic has been "collected". Allow broadcast and multicast
through so that ARP and IPv6 ne
From: Eric Kinzie <ekin...@brocade.com>
If the link state of a slave is "up" when added, it is added to the list
of active slaves but, even if it is the only slave, is not selected as
the primary interface. Generally, handling of link state interrupts
selects an interface to be p
From: Eric Kinzie <ekin...@brocade.com>
The current code for detecting link during slave addition can cause a
slave interface to be activated twice -- once during slave_configure()
and again at the end of __eth_bond_slave_add_lock_free(). This will
either cause the active slave
On Thu Feb 25 15:22:35 + 2016, Iremonger, Bernard wrote:
> Hi Eric,
>
>
> > > @@ -157,6 +159,7 @@ struct rte_eth_bond_8023ad_conf {
> > > uint32_t tx_period_ms;
> > > uint32_t rx_marker_period_ms;
> > > uint32_t update_timeout_ms;
> > > +
Instead of a hard-coded maximum receive length, allow the bond interface
to inherit this limit from the first slave added. This allows
an application that uses jumbo frames to pass realistic values to
rte_eth_dev_configure without causing an error.
Signed-off-by: Eric Kinzie
v2 changes:
- remove type cast on constant
- check max_rx_pktlen when adding a slave to make sure it is >= max
packet length of existing slave interfaces
Eric Kinzie (1):
bond: inherit maximum rx packet length
drivers/net/bonding/rte_eth_bond_api.c | 12 +++-
drivers/
Instead of a hard-coded maximum receive length, allow the bond interface
to inherit this limit from the first slave added. This allows
an application that uses jumbo frames to pass realistic values to
rte_eth_dev_configure without causing an error.
Signed-off-by: Eric Kinzie
On Tue Apr 26 11:51:53 +0100 2016, Declan Doherty wrote:
> On 14/04/16 18:23, Eric Kinzie wrote:
> > Instead of a hard-coded maximum receive length, allow the bond interface
> > to inherit this limit from the first slave added. This allows
> > an application that uses
This series contains a fix to the validation of interfaces added to a
bond group and an enhancement to allow reception of tagged frames on
slave interfaces that are virtual functions.
Eric Kinzie (2):
net/bonding: validate speed after link up
net/bonding: enable slave VLAN filter
drivers
("bond: new link bonding library")
Signed-off-by: Eric Kinzie
---
drivers/net/bonding/rte_eth_bond_api.c | 15 ---
drivers/net/bonding/rte_eth_bond_pmd.c | 10 ++
2 files changed, 10 insertions(+), 15 deletions(-)
diff --git a/drivers/net/bonding/rte_eth_bond_api.c
SR-IOV virtual functions cannot rely on promiscuous mode for the reception
of VLAN tagged frames. Program the vlan filter for each slave when a
vlan is configured for the bonding master.
Signed-off-by: Eric Kinzie
---
drivers/net/bonding/rte_eth_bond_api.c | 68
From: Eric Kinzie <ekin...@brocade.com>
Copy all needed fields from the mode8023ad_private structure in
bond_mode_8023ad_conf_get(). This help ensure that a subsequent call
to rte_eth_bond_8023ad_setup() is not passed uninitialized data that
would result in either incorrect behavior or a
From: Eric Kinzie <ekin...@brocade.com>
Provide functions to allow an external 802.3ad state machine to transmit
and recieve LACPDUs and to set the collection/distribution flags on
slave interfaces.
Signed-off-by: Eric Kinzie
Signed-off-by: Stephen Hemminger
Acked-by: Declan D
From: Eric Kinzie <ekin...@brocade.com>
If the link state of a slave is "up" when added, it is added to the list
of active slaves but, even if it is the only slave, is not selected as
the primary interface. Generally, handling of link state interrupts
selects an interface to be p
From: Eric Kinzie <ekin...@brocade.com>
The bonding PMD in mode 4 puts all enslaved interfaces into promiscuous
mode in order to receive LACPDUs and must filter unwanted packets
after the traffic has been "collected". Allow broadcast and multicast
through so that ARP and IPv6 ne
This solves issues when an active device is added to a bond.
If a device to be enslaved already has transmit and/or receive queues
allocated, use those and then create any additional queues that are
necessary.
Signed-off-by: Eric Kinzie
Signed-off-by: Stephen Hemminger
Acked-by: Declan Doherty
From: Eric Kinzie <ekin...@brocade.com>
The current code for detecting link during slave addition can cause a
slave interface to be activated twice -- once during slave_configure()
and again at the end of __eth_bond_slave_add_lock_free(). This will
either cause the active slave
These are bug fixes and some small enhancements to allow bonding
to work with external control (teamd). Please consider integrating
these into DPDK 2.2
Changes in v2:
- remove "bond: handle slaves with fewer queues than bonding device"
- remove "bond: per-slave intermediate rx rin
This solves issues when an active device is added to a bond.
If a device to be enslaved already has transmit and/or receive queues
allocated, use those and then create any additional queues that are
necessary.
Fixes: 2efb58cbab6e ("bond: new link bonding library")
Signed-off-by: E
ter bond_ethdev_configure()
only slaves with max pktlen greater than that of the bond device
can be added. The bond device assumes the smallest of the slave max
pktlen values.
- reset bond device's max_rx_pktlen when last slave removed
Eric Kinzie (1):
bond: inherit maximum rx packet len
device
can be added.
If all slaves are removed, the bond device's pktlen is cleared.
Signed-off-by: Eric Kinzie
---
drivers/net/bonding/rte_eth_bond_api.c | 18 +-
drivers/net/bonding/rte_eth_bond_pmd.c | 6 +-
drivers/net/bonding/rte_eth_bond_private.h | 3 +++
3
70 matches
Mail list logo