aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBryan Venteicher <bryanv@FreeBSD.org>2021-01-19 04:55:26 +0000
committerBryan Venteicher <bryanv@FreeBSD.org>2021-01-19 04:55:26 +0000
commit2bfab357745256342fbf7cea952c534f6680b8bb (patch)
treeceed88a83203c4018ad3c260665b5bd5168f4686
parent475a60aec7e3126f7a8b93a9f0fdf23360804080 (diff)
downloadsrc-2bfab357745256342fbf7cea952c534f6680b8bb.tar.gz
src-2bfab357745256342fbf7cea952c534f6680b8bb.zip
if_vtnet: Add counter for received host LRO
Reviewed by: grehan (mentor) Differential Revision: https://reviews.freebsd.org/D27928
-rw-r--r--sys/dev/virtio/network/if_vtnet.c3
-rw-r--r--sys/dev/virtio/network/if_vtnetvar.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/sys/dev/virtio/network/if_vtnet.c b/sys/dev/virtio/network/if_vtnet.c
index 1ed149c3d1eb..ed3065b61283 100644
--- a/sys/dev/virtio/network/if_vtnet.c
+++ b/sys/dev/virtio/network/if_vtnet.c
@@ -2016,6 +2016,7 @@ vtnet_rxq_input(struct vtnet_rxq *rxq, struct mbuf *m,
case VIRTIO_NET_HDR_GSO_TCPV6:
m->m_pkthdr.lro_nsegs =
howmany(m->m_pkthdr.len, hdr->gso_size);
+ rxq->vtnrx_stats.vrxs_host_lro++;
break;
}
}
@@ -4074,6 +4075,8 @@ vtnet_setup_rxq_sysctl(struct sysctl_ctx_list *ctx,
&stats->vrxs_csum, "Receive checksum offloaded");
SYSCTL_ADD_UQUAD(ctx, list, OID_AUTO, "csum_failed", CTLFLAG_RD,
&stats->vrxs_csum_failed, "Receive checksum offload failed");
+ SYSCTL_ADD_UQUAD(ctx, list, OID_AUTO, "host_lro", CTLFLAG_RD,
+ &stats->vrxs_host_lro, "Receive host segmentation offloaded");
SYSCTL_ADD_UQUAD(ctx, list, OID_AUTO, "rescheduled", CTLFLAG_RD,
&stats->vrxs_rescheduled,
"Receive interrupt handler rescheduled");
diff --git a/sys/dev/virtio/network/if_vtnetvar.h b/sys/dev/virtio/network/if_vtnetvar.h
index f928b9bd9b38..d26f7240a67a 100644
--- a/sys/dev/virtio/network/if_vtnetvar.h
+++ b/sys/dev/virtio/network/if_vtnetvar.h
@@ -68,6 +68,7 @@ struct vtnet_rxq_stats {
uint64_t vrxs_ierrors; /* if_ierrors */
uint64_t vrxs_csum;
uint64_t vrxs_csum_failed;
+ uint64_t vrxs_host_lro;
uint64_t vrxs_rescheduled;
};