There are a number of consistency errors with the DQO Tx datapath, which
this series aims to address. These changes should make the driver much
more resilient against edge case and malformed packets overall.
Joshua Washington (7):
net/gve: send whole packet when mbuf is large
net/gve: clean
misinterpreted by the hardware if not fully cleared.
Fixes: 403c671a46b6 ("net/gve: support TSO in DQO RDA")
Cc: tathagat.d...@gmail.com
Cc: sta...@dpdk.org
Signed-off-by: Joshua Washington
Reviewed-by: Ankit Garg
---
drivers/net/gve/gve_tx_dqo.c | 3 +++
1 file changed, 3 insertions(+)
di
GVE_TX_MAX_DATA_DESCS-1 to ensure
that the hidden extra prepended descriptor added to the beginning of
each segment in the TSO case is accounted for.
Fixes: 403c671a46b6 ("net/gve: support TSO in DQO RDA")
Cc: tathagat.d...@gmail.com
Cc: sta...@dpdk.org
Signed-off-by: Joshua Washington
R
om
Cc: sta...@dpdk.org
Signed-off-by: Joshua Washington
Reviewed-by: Ankit Garg
---
drivers/net/gve/gve_ethdev.c | 1 +
drivers/net/gve/gve_ethdev.h | 1 +
drivers/net/gve/gve_tx_dqo.c | 6 ++
3 files changed, 8 insertions(+)
diff --git a/drivers/net/gve/gve_ethdev.c b/drivers/net/gve/gve_ethd
Writing zero-length descriptors to the hardware can cause the hardware
to reject that packet and stop transmitting altogether.
Fixes: 4022ff56 ("net/gve: support basic Tx data path for DQO")
Cc: junfeng@intel.com
Cc: sta...@dpdk.org
Signed-off-by: Joshua Washington
Reviewed
formed before processing.
Fixes: 4022ff56 ("net/gve: support basic Tx data path for DQO")
Cc: junfeng@intel.com
Cc: sta...@dpdk.org
Signed-off-by: Joshua Washington
Reviewed-by: Ankit Garg
---
drivers/net/gve/gve_tx_dqo.c | 9 -
1 file changed, 8 insertions(+), 1 deletio
increment drop counters.
Fixes: 4022ff56 ("net/gve: support basic Tx data path for DQO")
Cc: junfeng@intel.com
Cc: sta...@dpdk.org
Signed-off-by: Joshua Washington
Reviewed-by: Ankit Garg
---
drivers/net/gve/gve_tx_dqo.c | 27 +++
1 file changed, 19 insert
.@dpdk.org
Signed-off-by: Joshua Washington
Reviewed-by: Ankit Garg
---
.mailmap | 1 +
drivers/net/gve/gve_tx_dqo.c | 54
2 files changed, 38 insertions(+), 17 deletions(-)
diff --git a/.mailmap b/.mailmap
index 1ea4f9446d..758878bd8b 10
Acked-by: Joshua Washington
Patch doesn't apply to the main branch of dpdk-next-net:
https://mails.dpdk.org/archives/test-report/2025-May/877522.html
It seems like the diffbase patch only exists in the for-main branch.
When is for-main expected to be merged into main, and should we be
building against for-main or main? Simil
Commit 5feee68de99e ("pci: define more standard register offsets") adds
a generic offset macro for the PCI revision ID, among a number of other
standard PCI config fields. Update GVE to make use of these macros
instead of defining its own.
Signed-off-by: Joshua Washington
---
drive
Ah, thanks for adding that support. I can send a follow up patch which
takes this into account.
Best,
Josh
reset was triggered by writing 0 to the admin queue
PFN. Newer device reivisons set a status flag, instead.
Signed-off-by: Joshua Washington
Reviewed-by: Ziwei Xiao
---
.mailmap| 1 +
drivers/net/gve/base/gve.h | 4 ++
drivers/net/gve/base/gve_adminq.c
Signed-off-by: Joshua Washington
---
MAINTAINERS | 1 -
1 file changed, 1 deletion(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 167cc74a15..96e1d4e7a6 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -754,7 +754,6 @@ F: doc/guides/nics/features/enic.ini
Google Virtual Ethernet
M: Jeroen de
Hello,
I wish for this fix to be backported to stable release 22.11 and 23.11
for DPDK. However, the patch as it is does not apply cleanly to either
release. What is the recommended way to include this patch in older
releases of DPDK? Should I create separate stable backport patches
that apply cle
malloc exclusively
v3: Changed commit description to match updated code
v4: Add fixes tag to allow 2M hugepages to be used on older versions of
DPDK
Fixes: a46583cf43c8 ("net/gve: support Rx/Tx")
Cc: junfeng@intel.com
Cc: sta...@dpdk.org
Signed-off-by: Praveen Kaligineedi
Signed-off-
Kaligineedi
Signed-off-by: Joshua Washington
---
drivers/net/gve/gve_ethdev.c | 102 ---
drivers/net/gve/gve_ethdev.h | 5 +-
drivers/net/gve/gve_rx.c | 2 +-
3 files changed, 89 insertions(+), 20 deletions(-)
diff --git a/drivers/net/gve/gve_ethdev.c b/drivers
using memzone fails.
Use memzone based allocation for TX since TX queue requires IOVA
contiguous QPL memory.
Google-Bug-Id: 372857163
Signed-off-by: Praveen Kaligineedi
Reviewed-by: Joshua Washington
---
drivers/net/gve/gve_ethdev.c | 102 ---
drivers/net/gve
using memzone fails.
Signed-off-by: Praveen Kaligineedi
Reviewed-by: Joshua Washington
---
drivers/net/gve/gve_ethdev.c | 105
++
drivers/net/gve/gve_ethdev.h | 1 +
drivers/net/gve/gve_rx.c | 2 +-
3 files changed, 89 insertions(+), 19 deletions
using memzone fails.
Signed-off-by: Praveen Kaligineedi
Reviewed-by: Joshua Washington
---
drivers/net/gve/gve_ethdev.c | 105
++
drivers/net/gve/gve_ethdev.h | 1 +
drivers/net/gve/gve_rx.c | 2 +-
3 files changed, 89 insertions(+), 19 deletions
types are not defined already.
Fixes: c9ba2caf6302 ("net/gve/base: add OS-specific implementation")
Fixes: abf1242fbb84 ("net/gve: add struct members and typedefs for DQO")
Cc: junfeng@intel.com
Cc: sta...@dpdk.org
Signed-off-by: Joshua Washington
Suggested-by: David March
224s] |^~
> [ 224s] /usr/include/linux/types.h:35:25: note: previous declaration
> of ‘__le64’ with type ‘__le64’ {aka ‘long long unsigned
> int’}
> [ 224s]35 | typedef __u64 __bitwise __le64;
> [ 224s] | ^~
>
>
>
> --
> David Marchand
>
--
Joshua Washington | Software Engineer | joshw...@google.com | (414) 366-4423
tails because rte_write32 includes an
implicit write memory barrier.
Fixes: 4022ff56 ("net/gve: support basic Tx data path for DQO")
Fixes: 45da16b5b181 ("net/gve: support basic Rx data path for DQO")
Cc: junfeng@intel.com
Cc: sta...@dpdk.org
Signed-off-by: Joshua Was
e.
Fixes: 45da16b5b181 ("net/gve: support basic Rx data path for DQO")
Cc: junfeng@intel.com
Cc: sta...@dpdk.org
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Praveen Kaligineedi
---
drivers/net/gve/gve_rx_dqo.c | 62 ++--
t;net/gve: support queue start/stop")
Cc: sta...@dpdk.org
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Praveen Kaligineedi
---
drivers/net/gve/gve_rx_dqo.c | 16 +---
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/drivers/net/gve/gve_
")
Cc: sta...@dpdk.org
Signed-off-by: Joshua Washington
Reviewed-by: Praveen Kaligineedi
Reviewed-by: Rushil Gupta
---
.mailmap | 1 +
drivers/net/gve/gve_rx_dqo.c | 6 ++
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/.mailmap b/.mailmap
index d798a3f30f..d2
Signed-off-by: Joshua Washington
Reviewed-by: Praveen Kaligineedi
Reviewed-by: Rushil Gupta
---
.mailmap | 1 +
drivers/net/gve/gve_rx_dqo.c | 6 ++
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/.mailmap b/.mailmap
index 09fa253e12..2fc689a4de 100644
ptype from the descriptor. This helps with compatibility with programs
which rely on the packet type value stored in the mbuf.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
---
drivers/net/gve/gve_rx_dqo.c | 62 +---
1 file changed, 44 insertions(+), 18
Acked-by: Joshua Washington
Thanks!
Hi, can we try to serialize these patches? Let's fix the multidescriptor
packets issue present in the driver first (ensuring that the entire
descriptor is written each time). The TSO support is an entirely new
feature and should likely not be backported to stable releases.
On Wed, Jul 31, 2024, 09:37 Tathagat Priyadarshi
wrote:
>
> The EOP bit was not set for all the packets in mbuf chain
> causing packet transmission stalls for packets split across
> mbuf in chain.
>
> Signed-off-by: Tathagat Priyadarshi
> Signed-off-by: Varun Lakkur Ambaji Rao
>
> Fixes: 4022f99
Acked-by: Joshua Washington
My ack might have been a bit premature. This patch seems to have a
number of style errors, and does not seem to apply to HEAD of
dpdk-next-net. See http://dpdk.org/patch/142498 for more detail.
The code supplied in the patch does not seem to have any indentation.
Please note that DPDK uses tabs (a
Acked-by: Joshua Washington
Thanks!
ring size must be a power of two in size, and any other
value would fail.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Harshitha Ramamurthy
---
drivers/net/gve/base/gve_adminq.c | 6 ++
drivers/net/gve/gve_ethdev.c | 12
drivers/net/gve/gve_rx.c
device does not pass minimum ring sizes, they are set to
static values.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Harshitha Ramamurthy
---
drivers/net/gve/base/gve_adminq.c | 45 ---
drivers/net/gve/base/gve_adminq.h | 13 ++---
drivers
n a user modifies the ring size, this value would be useless,
as the ring size dictates the number of pages in the QPL, and each QPL
"knows" how many pages it holds.
tx_pages_per_qpl is unaffected by this because TX rings use a static
number of pages per QPL.
Signed-off-by: Josh
size of 4096.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Harshitha Ramamurthy
---
drivers/net/gve/base/gve_adminq.c | 57 ---
drivers/net/gve/base/gve_adminq.h | 11 ++
drivers/net/gve/gve_ethdev.h | 2 ++
3 files changed, 66
limits, the minimum ring size is fixed at 512
descriptors for RX and 256 descriptor for TX, while the maximum ring
size is fixed at 1024 for both RX and TX.
Limitations:
The ring size must be a power of two.
The DQ queue format should remain unaffected by this change.
Joshua Washington (4
Thank you for your contribution, Shreesh! Let's get this applied as a
stable fix so that it can be applied to 23.11 as well.
https://doc.dpdk.org/guides/contributing/patches.html, section "Patch
for Stable Releases" should have more detail for how this can be done.
> Bugzilla ID: 1441
Please add a
and de-registration/deallocation
with the queue creation and destruction processes, respectively. Before
this change, QPL structs part of gve_priv were allocated as part of
driver initialization, which similarly does not make sense.
Signed-off-by: Joshua Washington
Reviewed-by: Harshitha
-by: Joshua Washington
Reviewed-by: Harshitha Ramamurthy
Reviewed-by: Rushil Gupta
---
.mailmap | 2 +-
drivers/net/gve/gve_ethdev.c | 159 ---
drivers/net/gve/gve_ethdev.h | 9 +-
drivers/net/gve/gve_rx.c | 22 +++--
drivers/net/gve
-by: Joshua Washington
Reviewed-by: Harshitha Ramamurthy
Reviewed-by: Rushil Gupta
---
.mailmap | 2 +-
drivers/net/gve/gve_ethdev.c | 159 ---
drivers/net/gve/gve_ethdev.h | 9 +-
drivers/net/gve/gve_rx.c | 22 +++--
drivers/net/gve
redirection table is expected to be exactly 128 bytes.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
doc/guides/nics/features/gve.ini | 1 +
doc/guides/nics/gve.rst | 8 +++
drivers/net/gve/gve_ethdev.c | 95
.
The RSS key must be set before any other RSS configuration can happen.
As such, an attempt to set the hash types before the key is configured
will fail.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
doc/guides/nics/features/gve.ini | 1 +
doc
This change includes a number of helper functions to facilitate RSS
configuration on the GVE DPDK driver. These methods are declared in
gve_rss.h.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/base/gve_adminq.h | 10 +-
drivers
This change introduces admin queue changes that enable the configuration
of RSS parameters for the GVE driver.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/base/gve.h| 15
drivers/net/gve/base/gve_adminq.c | 58
This patch communicates that the GVE driver supports RSS, along with
the RSS offloads supported by the driver.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 4 +++-
drivers/net/gve/gve_ethdev.h | 8
2 files
relevant commits.
Joshua Washington (5):
net/gve: expose RSS offload support in dev info
net/gve: add RSS adminq command
net/gve: add gve RSS library
net/gve: add RSS configuration update support
net/gve: add RSS redirection table update support
doc/guides/nics/features/gve.ini | 2
This patch updates the GVE doc page to communicate that GVE now supports
RSS configuration and explains the limitations.
Signed-off-by: Joshua Washington
---
doc/guides/nics/gve.rst | 16 ++--
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/doc/guides/nics/gve.rst b
This patch updates the DPDK feature matrix to expose that the GVE driver
supports RSS hash, RSS key update, and RSS reta update.
Signed-off-by: Joshua Washington
---
doc/guides/nics/features/gve.ini | 3 +++
1 file changed, 3 insertions(+)
diff --git a/doc/guides/nics/features/gve.ini b/doc
redirection table is expected to be exactly 128 bytes.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 95
1 file changed, 95 insertions(+)
diff --git a/drivers/net/gve/gve_ethdev.c b
.
The RSS key must be set before any other RSS configuration can happen.
As such, an attempt to set the hash types before the key is configured
will fail.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 132
This change includes a number of helper functions to facilitate RSS
configuration on the GVE DPDK driver. These methods are declared in
gve_rss.h.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/base/gve_adminq.h | 10 +-
drivers
This patch communicates that the GVE driver supports RSS, along with
the RSS offloads supported by the driver.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 4 +++-
drivers/net/gve/gve_ethdev.h | 8
2 files
This change introduces admin queue changes that enable the configuration
of RSS parameters for the GVE driver.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/base/gve.h| 15
drivers/net/gve/base/gve_adminq.c | 58
This patch updates the GVE doc page to communicate that GVE now supports
RSS configuration and explains the limitations.
Signed-off-by: Joshua Washington
---
doc/guides/nics/gve.rst | 16 ++--
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/doc/guides/nics/gve.rst b
This patch updates the DPDK feature matrix to expose that the GVE driver
supports RSS hash, RSS key update, and RSS reta update.
Signed-off-by: Joshua Washington
---
doc/guides/nics/features/gve.ini | 3 +++
1 file changed, 3 insertions(+)
diff --git a/doc/guides/nics/features/gve.ini b/doc
redirection table is expected to be exactly 128 bytes.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 95
1 file changed, 95 insertions(+)
diff --git a/drivers/net/gve/gve_ethdev.c b
This change includes a number of helper functions to facilitate RSS
configuration on the GVE DPDK driver. These methods are declared in
gve_rss.h.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/base/gve_adminq.h | 10 +-
drivers
.
The RSS key must be set before any other RSS configuration can happen.
As such, an attempt to set the hash types before the key is configured
will fail.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 132
This change introduces admin queue changes that enable the configuration
of RSS parameters for the GVE driver.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/base/gve.h| 15
drivers/net/gve/base/gve_adminq.c | 58
This patch communicates that the GVE driver supports RSS, along with
the RSS offloads supported by the driver.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 4 +++-
drivers/net/gve/gve_ethdev.h | 8
2 files
: There is a warning about complex macros being parenthesized that
does not seem to be well-founded.
v3:
Fix build warnings that come up on certain distros.
Joshua Washington (7):
net/gve: fully expose RSS offload support in dev_info
net/gve: RSS adminq command changes
net/gve: add gve_rss
: There is a warning about complex macros being parenthesized that
does not seem to be well-founded.
v3:
Fix build warnings that come up on certain distros.
Joshua Washington (7):
net/gve: fully expose RSS offload support in dev_info
net/gve: RSS adminq command changes
net/gve: add gve_rss
: There is a warning about complex macros being parenthesized that
does not seem to be well-founded.
v3:
Fix build warnings that come up on certain distros.
Joshua Washington (7):
net/gve: fully expose RSS offload support in dev_info
net/gve: RSS adminq command changes
net/gve: add gve_rss
This patch updates the GVE doc page to communicate that GVE now supports
RSS configuration and explains the limitations.
Signed-off-by: Joshua Washington
---
doc/guides/nics/gve.rst | 16 ++--
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/doc/guides/nics/gve.rst b
This patch updates the DPDK feature matrix to expose that the GVE driver
supports RSS hash, RSS key update, and RSS reta update.
Signed-off-by: Joshua Washington
---
doc/guides/nics/features/gve.ini | 3 +++
1 file changed, 3 insertions(+)
diff --git a/doc/guides/nics/features/gve.ini b/doc
redirection table is expected to be exactly 128 bytes.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 95
1 file changed, 95 insertions(+)
diff --git a/drivers/net/gve/gve_ethdev.c b
.
The RSS key must be set before any other RSS configuration can happen.
As such, an attempt to set the hash types before the key is configured
will fail.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 132
This change includes a number of helper functions to facilitate RSS
configuration on the GVE DPDK driver. These methods are declared in
gve_rss.h.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/base/gve_adminq.h | 10 +-
drivers
This change introduces admin queue changes that enable the configuration
of RSS parameters for the GVE driver.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/base/gve.h| 15
drivers/net/gve/base/gve_adminq.c | 58
This patch communicates that the GVE driver supports RSS, along with
the RSS offloads supported by the driver.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 4 +++-
drivers/net/gve/gve_ethdev.h | 8
2 files
: There is a warning about complex macros being parenthesized that
does not seem to be well-founded.
v3:
Fix build warnings that come up on certain distros.
Joshua Washington (7):
net/gve: fully expose RSS offload support in dev_info
net/gve: RSS adminq command changes
net/gve: add gve_rss
This patch updates the GVE doc page to communicate that GVE now supports
RSS configuration and explains the limitations.
Signed-off-by: Joshua Washington
---
doc/guides/nics/gve.rst | 16 ++--
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/doc/guides/nics/gve.rst b
This patch updates the DPDK feature matrix to expose that the GVE driver
supports RSS hash, RSS key update, and RSS reta update.
Signed-off-by: Joshua Washington
---
doc/guides/nics/features/gve.ini | 3 +++
1 file changed, 3 insertions(+)
diff --git a/doc/guides/nics/features/gve.ini b/doc
redirection table is expected to be exactly 128 bytes.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 95
1 file changed, 95 insertions(+)
diff --git a/drivers/net/gve/gve_ethdev.c b
.
The RSS key must be set before any other RSS configuration can happen.
As such, an attempt to set the hash types before the key is configured
will fail.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 132
This change includes a number of helper functions to facilitate RSS
configuration on the GVE DPDK driver. These methods are declared in
gve_rss.h.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/base/gve_adminq.h | 10 +-
drivers
This change introduces admin queue changes that enable the configuration
of RSS parameters for the GVE driver.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/base/gve.h| 15
drivers/net/gve/base/gve_adminq.c | 59
This patch communicates that the GVE driver supports RSS, along with
the RSS offloads supported by the driver.
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
Reviewed-by: Jeroen de Borst
---
drivers/net/gve/gve_ethdev.c | 4 +++-
drivers/net/gve/gve_ethdev.h | 8
2 files
: There is a warning about complex macros being parenthesized that
does not seem to be well-founded.
Joshua Washington (7):
net/gve: fully expose RSS offload support in dev_info
net/gve: RSS adminq command changes
net/gve: add gve_rss library for handling RSS-related behaviors
net/gve: RSS
---
doc/guides/nics/gve.rst | 16 ++--
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/doc/guides/nics/gve.rst b/doc/guides/nics/gve.rst
index 1c3eaf03ef..80991e70cf 100644
--- a/doc/guides/nics/gve.rst
+++ b/doc/guides/nics/gve.rst
@@ -70,6 +70,8 @@ Supported features o
---
doc/guides/nics/features/gve.ini | 3 +++
1 file changed, 3 insertions(+)
diff --git a/doc/guides/nics/features/gve.ini b/doc/guides/nics/features/gve.ini
index 838edd456a..bc08648dbc 100644
--- a/doc/guides/nics/features/gve.ini
+++ b/doc/guides/nics/features/gve.ini
@@ -15,3 +15,6 @@ Linux
This patch introduces support for updating the RSS redirection table in
the GVE PMD through the implementation of rss_reta_update and
rss_reta_query.
Due to an infrastructure limitation, the RSS hash key must be manually
configured before the redirection table can be updated or queried. The
redire
This patch adds support for updating the RSS hash key and hash fields
in the GVE PMD through the implementation of rss_hash_update and
rss_hash_conf_get.
The RSS hash key for gVNIC is required to be 40 bytes. On initial
configuration of the RSS hash key, the RSS redirection table will be
set to a
This change includes a number of helper functions to facilitate RSS
configuration on the GVE DPDK driver. These methods are declared in
gve_rss.h.
---
drivers/net/gve/base/gve_adminq.h | 10 +-
drivers/net/gve/gve_ethdev.c | 2 +-
drivers/net/gve/gve_ethdev.h | 4 +-
drivers/net/gve
This change introduces admin queue changes that enable the configuration
of RSS parameters for the GVE driver.
---
drivers/net/gve/base/gve.h| 15
drivers/net/gve/base/gve_adminq.c | 59 +++
drivers/net/gve/base/gve_adminq.h | 29 +++
driver
---
drivers/net/gve/gve_ethdev.c | 4 +++-
drivers/net/gve/gve_ethdev.h | 8
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/drivers/net/gve/gve_ethdev.c b/drivers/net/gve/gve_ethdev.c
index d162fd3864..6acdb4e13b 100644
--- a/drivers/net/gve/gve_ethdev.c
+++ b/drivers/net/
queues, and the gVNIC device does not support anywhere near 64K
queues.
This series also updates the corresponding feature matrix ertries and
documentation as it pertains to RSS support in the GVE driver.
Joshua Washington (7):
net/gve: fully expose RSS offload support in dev_info
net/gve
_memzone_free(priv->stats_report_mem);
>> >
>>
>> What will happen if user asks stats/xstats after port stopped?
>>
> Good catch. I have added a null check so that the driver doesn't try to
> read stats from memory region that doesn't exist.
>
>>
>> <...>
>>
>> > gve_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats)
>> > {
>> > uint16_t i;
>> > + if (gve_is_gqi(dev->data->dev_private))
>> > + gve_get_imissed_from_nic(dev);
>> >
>>
>> This updates imissed in RxQ struct for all queues for basic stats, but
>> what if user only calls xstats, I guess in that case stat won't be
>> updated.
>>
>
> Yes; that is expected. Since imissed is a member of rte_eth_stats; calling
> gve_dev_stats_get is the right way to get this stat.
>
--
Joshua Washington | Software Engineer | joshw...@google.com | (414) 366-4423
The new max_rx_bufsize field in dev_info can be used to guide mbuf sizes
chosen by DPDK programs by ensuring that DPDK programs do not waste
memory by using an mbuf size too large for the maximum RX buffer size.
This patch adds support for this field in the GVE PMD.
Signed-off-by: Joshua
minimum and maximum supported buffer sizes.
Fixes: 4bec2d0b5572 ("net/gve: support queue operations")
Fixes: 1dc00f4fc74b ("net/gve: add Rx queue setup for DQO")
Cc: junfeng@intel.com
Cc: sta...@dpdk.org
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
ze to this patch, how would
that interact with backports? Is it possible to include only parts of a
patch in a backport?
On Fri, Nov 10, 2023 at 8:18 PM Ferruh Yigit wrote:
> On 11/11/2023 12:34 AM, Joshua Washington wrote:
> > In GVE, both queue formats have RX buffer size alignmen
dpdk.org
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
---
drivers/net/gve/gve_ethdev.c | 5 -
drivers/net/gve/gve_ethdev.h | 22 +-
drivers/net/gve/gve_rx.c | 10 +-
drivers/net/gve/gve_rx_dqo.c | 9 -
4 files changed, 42 insertions(+),
default DPDK MTU.
Fixes: 1bb4a528c4 ("ethdev: fix max Rx packet length")
Signed-off-by: Joshua Washington
Signed-off-by: Rushil Gupta
---
lib/ethdev/rte_ethdev.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/ethdev/rte_ethdev.c b/lib/ethdev/rte_ethdev.c
index
default DPDK MTU.
Fixes: 1bb4a528c4 ("ethdev: fix max Rx packet length")
Signed-off-by: Joshua Washington
Signed-off-by: Rushil Gupta
---
lib/ethdev/rte_ethdev.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/lib/ethdev/rte_ethdev.c b/lib/ethdev/rte_ethdev.c
index
(the default MTU on Google
Cloud VMs) causes testpmd to set the following:
mtu = 1460 - eth_overhead,
where eth_overhead = dev->max_rx_pktlen - dev->max_mtu = 65535 - 1460.
Thus, mtu = 1460 - 65535 + 1460 = 2921 due to underflow.
Signed-off-by: Joshua Washington
Fixes: 030025b74202 (&q
: Joshua Washington
---
drivers/net/gve/gve_ethdev.c | 5 +++--
drivers/net/gve/gve_ethdev.h | 3 ---
2 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/net/gve/gve_ethdev.c b/drivers/net/gve/gve_ethdev.c
index 9b25f3036b..b441f96623 100644
--- a/drivers/net/gve/gve_ethdev.c
+++ b
addresses.
The change can be tested with the following command:
dpdk-testpmd -- --forward-mode=txonly --txonly-multi-flow \
--tx-ip=,
Signed-off-by: Joshua Washington
Reviewed-by: Rushil Gupta
---
app/test-pmd/txonly.c | 38 ++
1 file changed, 22
1 - 100 of 112 matches
Mail list logo