ation of mbuf pool and rx/tx rings.
- Add support for enabling LACP short timeout, i.e., link partner can
use fast periodic time interval between transmits.
- Add LACP short timeout to tests.
- Include bond_8023ad and bond_alb in doxygen.
Robert Sanford (7):
net/bonding: fix typos and white
- Clean up minor typos in comments, strings, and private names.
- Fix whitespace in log messages and function formatting (open brace
after a new line).
- Move closing C++ wrapper to the end of rte_eth_bond_8023ad.h.
Signed-off-by: Robert Sanford
---
app/test-pmd/cmdline.c
- Replace directly overwriting of slave port's private rte_eth_conf
by copying it, and then updating it via rte_eth_dev_configure().
Signed-off-by: Robert Sanford
---
drivers/net/bonding/rte_eth_bond_pmd.c | 30 --
1 file changed, 16 insertions(+), 14 dele
- Turn off mbuf pool caching to avoid mbufs lingering in pool caches.
At most, we transmit one LACPDU per second, per port.
- Fix calculation of ring sizes, taking into account that a ring of
size N holds up to N-1 items.
Signed-off-by: Robert Sanford
---
drivers/net/bonding
- Add support for enabling LACP short timeout, i.e., link partner can
use fast periodic time interval between transmits.
Signed-off-by: Robert Sanford
---
drivers/net/bonding/eth_bond_8023ad_private.h | 3 ++-
drivers/net/bonding/rte_eth_bond_8023ad.c | 28
- Add "set bonding lacp timeout_ctrl on|off" to testpmd.
- Add "test_mode4_lacp_timeout_control" to app/test.
Signed-off-by: Robert Sanford
---
app/test-pmd/cmdline.c | 77 ++
app/test/test_link_
- Add bond_8023ad and bond_alb to API documentation.
Signed-off-by: Robert Sanford
---
doc/api/doxy-api-index.md | 2 ++
1 file changed, 2 insertions(+)
diff --git a/doc/api/doxy-api-index.md b/doc/api/doxy-api-index.md
index 4245b96..830235c 100644
--- a/doc/api/doxy-api-index.md
+++ b/doc
Signed-off-by: Robert Sanford
---
MAINTAINERS | 1 -
1 file changed, 1 deletion(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 18d9eda..32663b0 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1613,7 +1613,6 @@ F: examples/vm_power_manager/
F: doc/guides/sample_app_ug/vm_power_management.rst
ut to tests.
V2 changes:
- Additional typo and whitespace corrections.
- Minor changes to LACP private rings creation.
- Add net/ring API stubs patch.
- Insert extra "bond_handshake" to LACP short timeout autotest.
Robert Sanford (8):
net/bonding: fix typos and whitespace
net/bond
- Clean up minor typos in comments, strings, and private names.
- Fix whitespace in log messages and function formatting
(new line before open brace).
- Move closing C++ wrapper to the end of rte_eth_bond_8023ad.h.
Signed-off-by: Robert Sanford
---
app/test-pmd/cmdline.c
- Replace directly overwriting of slave port's private rte_eth_conf
by copying it, and then updating it via rte_eth_dev_configure().
Signed-off-by: Robert Sanford
---
drivers/net/bonding/rte_eth_bond_pmd.c | 30 --
1 file changed, 16 insertions(+), 14 dele
ACPDU per second, on average.
- Create rings with RING_F_EXACT_SZ flag, so that they are the desired
size, and not one less than requested.
Signed-off-by: Robert Sanford
---
drivers/net/bonding/rte_eth_bond_8023ad.c | 8 +++-
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a
- Add support for enabling LACP short timeout, i.e., link partner can
use fast periodic time interval between transmits.
Signed-off-by: Robert Sanford
---
drivers/net/bonding/eth_bond_8023ad_private.h | 3 ++-
drivers/net/bonding/rte_eth_bond_8023ad.c | 28
- Add bond_8023ad and bond_alb to API documentation.
Signed-off-by: Robert Sanford
---
doc/api/doxy-api-index.md | 2 ++
1 file changed, 2 insertions(+)
diff --git a/doc/api/doxy-api-index.md b/doc/api/doxy-api-index.md
index 4245b96..830235c 100644
--- a/doc/api/doxy-api-index.md
+++ b/doc
Remove self from Timers maintainers.
Signed-off-by: Robert Sanford
---
MAINTAINERS | 1 -
1 file changed, 1 deletion(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 18d9eda..32663b0 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1613,7 +1613,6 @@ F: examples/vm_power_manager/
F: doc/guides
Add promiscuous_enable, promiscuous_disable, allmulticast_enable,
and allmulticast_disable API stubs.
This helps clean up errors in dpdk-test link_bonding_mode4_autotest.
Signed-off-by: Robert Sanford
---
drivers/net/ring/rte_eth_ring.c | 28
1 file changed, 28
- Add "set bonding lacp timeout_ctrl on|off" to testpmd.
- Add "test_mode4_lacp_timeout_control" to dpdk-test.
- Remove call to rte_eth_dev_mac_addr_remove from add_slave,
as it always fails and prints an error.
Signed-off-by: Robert Sanford
---
app/test-pmd/cmdlin
- Add RING_F_EXACT_SZ description to rte_ring_init and
rte_ring_create param comments.
- Fix ring size comments.
Signed-off-by: Robert Sanford
---
lib/ring/rte_ring.h | 24
lib/ring/rte_ring_elem.h | 2 +-
2 files changed, 21 insertions(+), 5 deletions(-)
diff
Hi Pablo,
> Overall patch looks OK, but malloc unit tests fail on the last test
(test_multi_alloc_statistics).
> Apparently, the biggest free chunk size changes as it allocates some
memory, whereas in
> the previous implementation, this size did not change. I wonder if unit
test is wrong or if the
Comments on previous versions of this patch:
http://dpdk.org/ml/archives/dev/2014-May/002297.html
http://dpdk.org/ml/archives/dev/2014-June/003518.html
Additional changes from original to v3:
* Reduce the minimum-sized block that we put on a free list when
splitting a larger block, from 192 to 6
LIST macros, as defined in sys/queue.h and the QUEUE(3)
man page.
4. Change code to utilize small blocks of data size 64 and 128, when
splitting larger blocks.
Signed-off-by: Robert Sanford
---
lib/librte_eal/common/include/rte_malloc_heap.h |6 +-
lib/librte_malloc/malloc_e
Fix typos and false assumptions in malloc unit tests.
Without enhancements to lib rte_malloc, malloc autotest fails every
second (2nd) run. With enhancements, malloc autotest fails in
function test_multi_alloc_statistics, because we compare the wrong
sets of statistics.
Signed-off-by: Robert
dif
ifeq ($(CONFIG_RTE_LIBRTE_PMD_PCAP),y)
LIBPCAP_CFLAGS ?= $(shell pcap-config --cflags)
-$(if $(LIBPCAP_CFLAGS),,$(error LIBPCAP_CFLAGS is undefined))
EXTERNAL_LIB_CFLAGS += $(LIBPCAP_CFLAGS)
endif
--
1.7.1
Signed-off-by: Robert Sanford
Hi Bruce,
We also found buffer overflow problems with the pcap driver. 1) Frame may
be longer than mbuf. 2) Caplen may be less than original packet.
I've been meaning to submit a change, but I'm not familiar with the process.
Here is a diff of the relevant code in rte_eth_pcap.c:
if (un
Hi Dmitry,
The biggest drop-off seems to be from size 128K to 256K. Are you using 1GB
huge pages already (rather than 2MB)?
I would think that it would not use over 1GB until you ask for 512K mbufs
or more.
--
Regards,
Robert
On Thu, Sep 19, 2013 at 3:50 AM, Dmitry Vyal wrote:
> Good day ev
about this area, yet, but this looks
like a good starting place:
http://software.intel.com/en-us/articles/intel-performance-counter-monitor-a-better-way-to-measure-cpu-utilization
--
Regards,
Robert
On Fri, Sep 20, 2013 at 2:48 AM, Dmitry Vyal wrote:
> On 09/19/2013 11:39 PM, Robert
> On 09/19/2013 11:39 PM, Robert Sanford wrote:
>
>> Hi Dmitry,
>>
>> The biggest drop-off seems to be from size 128K to 256K. Are you using
>> 1GB huge pages already (rather than 2MB)?
>>
>> I would think that it would not use over 1GB until you ask for 512
This is what we came up with. It works for us. In our kernel headers'
linux/pci.h, pci_num_vf is enclosed within "#ifdef CONFIG_PCI_IOV/#endif";
pci_intx_mask_supported and pci_check_and_mask_intx are enclosed within
"#ifdef HAVE_PCI_SET_MWI/#endif".
What do you think?
--
Thanks,
Robert
---
li
Hi,
We would like your opinions on the following observations, regarding
the 82599 Flow Director support.
Issue #1:
Our reading of the 82599 data sheet leads us to believe that
Flow Director can simultaneously handle *both* IPv4 and IPv6 filters,
with separate filter rules, of course.
Thus, at
Hello Maxime,
Thank you for taking the time to research these flow director issues and a
more complete solution.
On Fri, Jan 10, 2014 at 8:36 AM, Maxime Leroy
wrote:
> But it will be nice to have a small test with ipv6 traffic to be sure
> about this point.
>
> Would you like to provide a patch
Hi Michael,
> What can I do to trace down this problem?
May I suggest that you try to be more selective in the core masks on the
command line. The test app may choose some cores from "other" CPU sockets.
Only enable cores of the one socket to which the NIC is attached.
> It seems very similar t
Hi Declan,
On Sun, Jun 29, 2014 at 1:49 PM, Declan Doherty
wrote:
> Initial release with support for
> Mode 0 - Round Robin
> Mode 1 - Active Backup
> Mode 2 - Balance -> Supports 3 transmit polices (layer 2, layer 2+3,
> layer 3+4)
> Mode 3 - Broadcast
>
> Signed-off-by: Declan Doherty
> -
Function rte_epoll_wait should return when underlying call
to epoll_wait times out.
Signed-off-by: Robert Sanford
---
lib/librte_eal/linuxapp/eal/eal_interrupts.c |3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/lib/librte_eal/linuxapp/eal/eal_interrupts.c
b/lib
Hi Olivier,
Thanks for reviewing this patch.
Please see my responses to your comments, below.
I also have one request for you. You probably use git almost every day. For
people who only use git maybe once per year, could you please show us the
exact sequence of commands that you run to prepare a
On Fri, Feb 6, 2015 at 10:47 AM, Olivier MATZ wrote:
> Hi,
>
> On 02/02/2015 03:02 AM, Cunming Liang wrote:
> > v4 changes:
> > new patch fixing strnlen() invalid return in 32bit icc [03/17]
> > update and add more comments on sched_yield() [16/17]
> >
> > v3 changes:
> > new patch adding sc
Changes in v2:
- split into multiple patches
- minor coding-style changes
Robert Sanford (3):
timer: fix return value of rte_timer_reset(),
insert rte_pause() into rte_timer_reset_sync() wait-loop
app/test: fix timer stress test to succeed on multiple runs,
display number of times
In rte_timer_reset_sync(), insert rte_pause() into loop that waits
for rte_timer_reset() to succeed.
Signed-off-by: Robert Sanford
---
lib/librte_timer/rte_timer.c |3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/lib/librte_timer/rte_timer.c b/lib/librte_timer
Fix timer stress test to succeed on multiple runs.
Signed-off-by: Robert Sanford
---
app/test/test_timer.c |7 +++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/app/test/test_timer.c b/app/test/test_timer.c
index 4b4800b..070437a 100644
--- a/app/test/test_timer.c
+++ b
test 2 to report how many timer reset
collisions occur, i.e., how many times rte_timer_reset() fails
due to a timer being in the CONFIG state.
Signed-off-by: Robert Sanford
---
app/test/test_timer.c| 19 ---
lib/librte_timer/rte_timer.c |4 +---
2 files changed, 17
AM, Thomas Monjalon
wrote:
> > > Changes in v2:
> > > - split into multiple patches
> > > - minor coding-style changes
> > >
> > > Robert Sanford (3):
> > >timer: fix return value of rte_timer_reset(),
> > > insert rte_pause() into
On Wed, Feb 25, 2015 at 6:16 AM, Bruce Richardson <
bruce.richardson at intel.com> wrote:
> On Wed, Feb 25, 2015 at 06:02:24AM -0500, Robert Sanford wrote:
>
> >
> > One question about lib rte_timer that's been troubling me for a while:
> How
> > are skip li
The implementation of rte_rand() returns only 62 bits of
pseudo-randomness, because the underlying calls to lrand48()
"return non-negative long integers uniformly distributed
between 0 and 2^31."
We have written a potential fix, but before we spend more
time testing and refining it, I wanted to c
Yes, applications have many choices for PRNGs. But, we still need one
internally for the following libs: PMDs (e1000, fm10k, i40e, ixgbe, virtio,
xenvirt), sched, and timer.
On Fri, Mar 27, 2015 at 8:03 PM, Stephen Hemminger <
stephen at networkplumber.org> wrote:
> I would argue remove rte_rand
h an
additional structure that is private to the application, and we borrow
librte_ring's MP/MC enqueue/dequeue logic.
Here is a patch for 1.8. We have only tested a 1.7.1 version. Please have a
look and let us know whether you think something like this would be useful.
--
Thanks,
Robert
larger than specified max
Robert Sanford (4):
app/test: enhance test_port_ring_writer
port: fix ring writer buffer overflow
port: fix full burst checks in f_tx_bulk ops
port: fix ethdev writer burst too big
app/test/test_table_ports.c | 27 +--
lib
Add code to send two 60-packet bursts to a ring port_out.
This tests a ring writer buffer overflow problem and fix
(in patch 2/4).
Signed-off-by: Robert Sanford
---
app/test/test_table_ports.c | 27 +--
1 files changed, 25 insertions(+), 2 deletions(-)
diff --git a
Ring writer tx_bulk functions may write past the end of tx_buf[].
Solution is to double the size of tx_buf[].
Signed-off-by: Robert Sanford
---
lib/librte_port/rte_port_ring.c |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/librte_port/rte_port_ring.c b/lib
interface.
We propose to effectively set bsz_mask = (1 << tx_burst_sz) - 1
(while avoiding truncation for tx_burst_sz=64), to cache the mask
value of a full burst, and then do a simple compare with pkts_mask
in each f_tx_bulk.
Signed-off-by: Robert Sanford
---
lib/librte_port/rte_port_et
this by moving the tx buffer flushing logic from
*after* the loop that puts all packets into the tx buffer, to *inside*
the loop, testing for a full burst when adding each packet.
Signed-off-by: Robert Sanford
---
lib/librte_port/rte_port_ethdev.c | 20 ++--
1 files changed, 10
=0 --auto-start \
--coremask=0x0554 --rxd=512 --txd=256 \
--burst=32 --mbcache=64 \
--nb-cores=2 --rxq=1 --txq=1
Example testpmd commands to reconfigure into bonding mode 4:
stop
port stop all
create bonded device 4 0
add bonding slave 2 4
add bonding slave 3 4
port st
forwarding loop, if port is an LACP master, in 1
out of N loops force an empty call to the tx burst API.
Signed-off-by: Robert Sanford
---
app/test-pmd/cmdline.c |9 +
app/test-pmd/testpmd.c | 37 +
app/test-pmd/testpmd.h |4
3 files ch
Rename macros that calculate a mempool cache flush threshold, and
move them from rte_mempool.c to rte_mempool.h, so that the bonding
driver can accurately calculate its mbuf requirements.
Signed-off-by: Robert Sanford
---
lib/librte_mempool/rte_mempool.c |8 ++--
lib/librte_mempool
rom a slave's private pool. It runs in the context of the interrupt
thread, and thus it has no mempool cache of its own.
Signed-off-by: Robert Sanford
---
drivers/net/bonding/rte_eth_bond_8023ad.c | 10 +++---
1 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/drivers/n
eth_conf, adjust
the LSC flag based on the slave, and then pass that rte_eth_conf to
rte_eth_dev_configure().
Also, remove code that directly pokes RSS data into the slave's
rte_eth_conf, as that is also contained in the proper rte_eth_conf
that we will pass to rte_eth_dev_configure().
Sign
54 matches
Mail list logo