Page MenuHomeFreeBSD

D41754.diff
No OneTemporary

D41754.diff

diff --git a/sys/dev/gve/gve.h b/sys/dev/gve/gve.h
--- a/sys/dev/gve/gve.h
+++ b/sys/dev/gve/gve.h
@@ -164,6 +164,7 @@
struct mbuf *mbuf_tail;
uint32_t total_size;
uint8_t frag_cnt;
+ bool is_tcp;
bool drop_pkt;
};
diff --git a/sys/dev/gve/gve_main.c b/sys/dev/gve/gve_main.c
--- a/sys/dev/gve/gve_main.c
+++ b/sys/dev/gve/gve_main.c
@@ -31,10 +31,10 @@
#include "gve.h"
#include "gve_adminq.h"
-#define GVE_DRIVER_VERSION "GVE-FBSD-1.0.0\n"
-#define GVE_VERSION_MAJOR 0
-#define GVE_VERSION_MINOR 9
-#define GVE_VERSION_SUB 0
+#define GVE_DRIVER_VERSION "GVE-FBSD-1.0.1\n"
+#define GVE_VERSION_MAJOR 1
+#define GVE_VERSION_MINOR 0
+#define GVE_VERSION_SUB 1
#define GVE_DEFAULT_RX_COPYBREAK 256
diff --git a/sys/dev/gve/gve_rx.c b/sys/dev/gve/gve_rx.c
--- a/sys/dev/gve/gve_rx.c
+++ b/sys/dev/gve/gve_rx.c
@@ -546,6 +546,7 @@
if (is_first_frag) {
mbuf->m_pkthdr.rcvif = priv->ifp;
+ ctx->is_tcp = desc->flags_seq & GVE_RXF_TCP;
if (gve_needs_rss(desc->flags_seq)) {
gve_set_rss_type(desc->flags_seq, mbuf);
@@ -567,7 +568,7 @@
do_if_input = true;
if (((if_getcapenable(priv->ifp) & IFCAP_LRO) != 0) && /* LRO is enabled */
- (desc->flags_seq & GVE_RXF_TCP) && /* pkt is a TCP pkt */
+ (ctx->is_tcp) && /* pkt is a TCP pkt */
((mbuf->m_pkthdr.csum_flags & CSUM_DATA_VALID) != 0) && /* NIC verified csum */
(rx->lro.lro_cnt != 0) && /* LRO resources exist */
(tcp_lro_rx(&rx->lro, mbuf, 0) == 0))

File Metadata

Mime Type
text/plain
Expires
Mon, Nov 18, 4:35 AM (21 h, 48 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14689891
Default Alt Text
D41754.diff (1 KB)

Event Timeline