* [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum errors
@ 2021-01-29 22:35 Lance Richardson
[not found] ` <MWHPR12MB16777B885F3E9A3B7803CD57A4B79@MWHPR12MB1677.namprd12.prod.outlook.com>
0 siblings, 1 reply; 7+ messages in thread
From: Lance Richardson @ 2021-01-29 22:35 UTC (permalink / raw)
To: Wenzhuo Lu, Xiaoyun Li, Bernard Iremonger
Cc: dev, Ajit Kumar Khaparde, Kalesh Anakkur Purayil
[-- Attachment #1: Type: text/plain, Size: 4817 bytes --]
Count and display outer IP checksum errors in the checksum
forwarder.
Example forwarder stats output:
RX-packets: 158 RX-dropped: 0 RX-total: 158
Bad-ipcsum: 48 Bad-l4csum: 48 Bad-outer-l4csum: 6
Bad-outer-ipcsum: 40
TX-packets: 0 TX-dropped: 0 TX-total: 0
Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
Reviewed-by: Ajit Kumar Khaparde <ajit.khaparde@broadcom.com>
Reviewed-by: Kalesh Anakkur Purayil <kalesh-anakkur.purayil@broadcom.com>
---
app/test-pmd/csumonly.c | 5 +++++
app/test-pmd/testpmd.c | 11 ++++++++++-
app/test-pmd/testpmd.h | 2 ++
3 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/app/test-pmd/csumonly.c b/app/test-pmd/csumonly.c
index d813d4fae0..37ed415cee 100644
--- a/app/test-pmd/csumonly.c
+++ b/app/test-pmd/csumonly.c
@@ -814,6 +814,7 @@ pkt_burst_checksum_forward(struct fwd_stream *fs)
uint32_t rx_bad_ip_csum;
uint32_t rx_bad_l4_csum;
uint32_t rx_bad_outer_l4_csum;
+ uint32_t rx_bad_outer_ip_csum;
struct testpmd_offload_info info;
uint16_t nb_segments = 0;
int ret;
@@ -833,6 +834,7 @@ pkt_burst_checksum_forward(struct fwd_stream *fs)
rx_bad_ip_csum = 0;
rx_bad_l4_csum = 0;
rx_bad_outer_l4_csum = 0;
+ rx_bad_outer_ip_csum = 0;
gro_enable = gro_ports[fs->rx_port].enable;
txp = &ports[fs->tx_port];
@@ -862,6 +864,8 @@ pkt_burst_checksum_forward(struct fwd_stream *fs)
rx_bad_l4_csum += 1;
if (rx_ol_flags & PKT_RX_OUTER_L4_CKSUM_BAD)
rx_bad_outer_l4_csum += 1;
+ if (rx_ol_flags & PKT_RX_EIP_CKSUM_BAD)
+ rx_bad_outer_ip_csum += 1;
/* step 1: dissect packet, parsing optional vlan, ip4/ip6, vxlan
* and inner headers */
@@ -1124,6 +1128,7 @@ pkt_burst_checksum_forward(struct fwd_stream *fs)
fs->rx_bad_ip_csum += rx_bad_ip_csum;
fs->rx_bad_l4_csum += rx_bad_l4_csum;
fs->rx_bad_outer_l4_csum += rx_bad_outer_l4_csum;
+ fs->rx_bad_outer_ip_csum += rx_bad_outer_ip_csum;
inc_tx_burst_stats(fs, nb_tx);
if (unlikely(nb_tx < nb_rx)) {
diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
index c256e719ae..67f60745a0 100644
--- a/app/test-pmd/testpmd.c
+++ b/app/test-pmd/testpmd.c
@@ -1805,6 +1805,8 @@ fwd_stream_stats_display(streamid_t stream_id)
" Rx- bad outer L4 checksum: %-14"PRIu64"\n",
fs->rx_bad_ip_csum, fs->rx_bad_l4_csum,
fs->rx_bad_outer_l4_csum);
+ printf(" RX- bad outer IP checksum: %-14"PRIu64"\n",
+ fs->rx_bad_outer_ip_csum);
} else {
printf("\n");
}
@@ -1827,6 +1829,7 @@ fwd_stats_display(void)
uint64_t rx_bad_ip_csum;
uint64_t rx_bad_l4_csum;
uint64_t rx_bad_outer_l4_csum;
+ uint64_t rx_bad_outer_ip_csum;
} ports_stats[RTE_MAX_ETHPORTS];
uint64_t total_rx_dropped = 0;
uint64_t total_tx_dropped = 0;
@@ -1859,6 +1862,8 @@ fwd_stats_display(void)
ports_stats[fs->rx_port].rx_bad_l4_csum += fs->rx_bad_l4_csum;
ports_stats[fs->rx_port].rx_bad_outer_l4_csum +=
fs->rx_bad_outer_l4_csum;
+ ports_stats[fs->rx_port].rx_bad_outer_ip_csum +=
+ fs->rx_bad_outer_ip_csum;
if (record_core_cycles)
fwd_cycles += fs->core_cycles;
@@ -1890,13 +1895,16 @@ fwd_stats_display(void)
"RX-total: %-"PRIu64"\n", stats.ipackets, stats.imissed,
stats.ipackets + stats.imissed);
- if (cur_fwd_eng == &csum_fwd_engine)
+ if (cur_fwd_eng == &csum_fwd_engine) {
printf(" Bad-ipcsum: %-14"PRIu64
" Bad-l4csum: %-14"PRIu64
"Bad-outer-l4csum: %-14"PRIu64"\n",
ports_stats[pt_id].rx_bad_ip_csum,
ports_stats[pt_id].rx_bad_l4_csum,
ports_stats[pt_id].rx_bad_outer_l4_csum);
+ printf(" Bad-outer-ipcsum: %-14"PRIu64"\n",
+ ports_stats[pt_id].rx_bad_outer_ip_csum);
+ }
if (stats.ierrors + stats.rx_nombuf > 0) {
printf(" RX-error: %-"PRIu64"\n", stats.ierrors);
printf(" RX-nombufs: %-14"PRIu64"\n", stats.rx_nombuf);
@@ -1974,6 +1982,7 @@ fwd_stats_reset(void)
fs->rx_bad_ip_csum = 0;
fs->rx_bad_l4_csum = 0;
fs->rx_bad_outer_l4_csum = 0;
+ fs->rx_bad_outer_ip_csum = 0;
memset(&fs->rx_burst_stats, 0, sizeof(fs->rx_burst_stats));
memset(&fs->tx_burst_stats, 0, sizeof(fs->tx_burst_stats));
diff --git a/app/test-pmd/testpmd.h b/app/test-pmd/testpmd.h
index 5f23162107..a034dae227 100644
--- a/app/test-pmd/testpmd.h
+++ b/app/test-pmd/testpmd.h
@@ -137,6 +137,8 @@ struct fwd_stream {
uint64_t rx_bad_l4_csum ; /**< received packets has bad l4 checksum */
uint64_t rx_bad_outer_l4_csum;
/**< received packets has bad outer l4 checksum */
+ uint64_t rx_bad_outer_ip_csum;
+ /**< received packets having bad outer ip checksum */
unsigned int gro_times; /**< GRO operation times */
uint64_t core_cycles; /**< used for RX and TX processing */
struct pkt_burst_stats rx_burst_stats;
--
2.25.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum errors
[not found] ` <MWHPR12MB16777B885F3E9A3B7803CD57A4B79@MWHPR12MB1677.namprd12.prod.outlook.com>
@ 2021-02-23 18:35 ` Ferruh Yigit
2021-02-23 18:39 ` Ajit Khaparde
0 siblings, 1 reply; 7+ messages in thread
From: Ferruh Yigit @ 2021-02-23 18:35 UTC (permalink / raw)
To: Wisam Monther, Lance Richardson, Wenzhuo Lu, Xiaoyun Li,
Bernard Iremonger, Olivier Matz, Andrew Rybchenko
Cc: dev, Ajit Kumar Khaparde, Kalesh Anakkur Purayil, Thomas Monjalon
On 1/31/2021 11:53 AM, Wisam Monther wrote:
> Hi,
>
>> -----Original Message-----
>> From: dev <dev-bounces@dpdk.org> On Behalf Of Lance Richardson
>> Sent: Saturday, January 30, 2021 12:36 AM
>> To: Wenzhuo Lu <wenzhuo.lu@intel.com>; Xiaoyun Li
>> <xiaoyun.li@intel.com>; Bernard Iremonger
>> <bernard.iremonger@intel.com>
>> Cc: dev@dpdk.org; Ajit Kumar Khaparde <ajit.khaparde@broadcom.com>;
>> Kalesh Anakkur Purayil <kalesh-anakkur.purayil@broadcom.com>
>> Subject: [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum
>> errors
>>
>> Count and display outer IP checksum errors in the checksum forwarder.
>>
>> Example forwarder stats output:
>> RX-packets: 158 RX-dropped: 0 RX-total: 158
>> Bad-ipcsum: 48 Bad-l4csum: 48 Bad-outer-l4csum: 6
>> Bad-outer-ipcsum: 40
>> TX-packets: 0 TX-dropped: 0 TX-total: 0
>>
>> Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
>> Reviewed-by: Ajit Kumar Khaparde <ajit.khaparde@broadcom.com>
>> Reviewed-by: Kalesh Anakkur Purayil <kalesh-
>> anakkur.purayil@broadcom.com>
>
> Acked-by: Wisam Jaddo <wisamm@nvidia.com>
>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Applied to dpdk-next-net/main, thanks.
'PKT_RX_EIP_CKSUM_BAD' is documented in mbuf header as:
"/** External IP header checksum error. */"
I think 'External' wording is confusing, as well as 'EIP' abbreviation, what do
you think to create another macro alias to existing one, and mark the old one as
deprecated?
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum errors
2021-02-23 18:35 ` Ferruh Yigit
@ 2021-02-23 18:39 ` Ajit Khaparde
2021-02-23 20:25 ` Thomas Monjalon
0 siblings, 1 reply; 7+ messages in thread
From: Ajit Khaparde @ 2021-02-23 18:39 UTC (permalink / raw)
To: Ferruh Yigit
Cc: Wisam Monther, Lance Richardson, Wenzhuo Lu, Xiaoyun Li,
Bernard Iremonger, Olivier Matz, Andrew Rybchenko, dev,
Kalesh Anakkur Purayil, Thomas Monjalon
[-- Attachment #1: Type: text/plain, Size: 1702 bytes --]
On Tue, Feb 23, 2021 at 10:36 AM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
>
> On 1/31/2021 11:53 AM, Wisam Monther wrote:
> > Hi,
> >
> >> -----Original Message-----
> >> From: dev <dev-bounces@dpdk.org> On Behalf Of Lance Richardson
> >> Sent: Saturday, January 30, 2021 12:36 AM
> >> To: Wenzhuo Lu <wenzhuo.lu@intel.com>; Xiaoyun Li
> >> <xiaoyun.li@intel.com>; Bernard Iremonger
> >> <bernard.iremonger@intel.com>
> >> Cc: dev@dpdk.org; Ajit Kumar Khaparde <ajit.khaparde@broadcom.com>;
> >> Kalesh Anakkur Purayil <kalesh-anakkur.purayil@broadcom.com>
> >> Subject: [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum
> >> errors
> >>
> >> Count and display outer IP checksum errors in the checksum forwarder.
> >>
> >> Example forwarder stats output:
> >> RX-packets: 158 RX-dropped: 0 RX-total: 158
> >> Bad-ipcsum: 48 Bad-l4csum: 48 Bad-outer-l4csum: 6
> >> Bad-outer-ipcsum: 40
> >> TX-packets: 0 TX-dropped: 0 TX-total: 0
> >>
> >> Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
> >> Reviewed-by: Ajit Kumar Khaparde <ajit.khaparde@broadcom.com>
> >> Reviewed-by: Kalesh Anakkur Purayil <kalesh-
> >> anakkur.purayil@broadcom.com>
> >
> > Acked-by: Wisam Jaddo <wisamm@nvidia.com>
> >
>
> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
> Applied to dpdk-next-net/main, thanks.
>
>
>
> 'PKT_RX_EIP_CKSUM_BAD' is documented in mbuf header as:
> "/** External IP header checksum error. */"
>
> I think 'External' wording is confusing, as well as 'EIP' abbreviation, what do
> you think to create another macro alias to existing one, and mark the old one as
> deprecated?
+1
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum errors
2021-02-23 18:39 ` Ajit Khaparde
@ 2021-02-23 20:25 ` Thomas Monjalon
2021-02-24 10:12 ` Ferruh Yigit
0 siblings, 1 reply; 7+ messages in thread
From: Thomas Monjalon @ 2021-02-23 20:25 UTC (permalink / raw)
To: Ferruh Yigit, Ajit Khaparde
Cc: Wisam Monther, Lance Richardson, Wenzhuo Lu, Xiaoyun Li,
Bernard Iremonger, Olivier Matz, Andrew Rybchenko, dev,
Kalesh Anakkur Purayil
23/02/2021 19:39, Ajit Khaparde:
> On Tue, Feb 23, 2021 at 10:36 AM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
> >
> > On 1/31/2021 11:53 AM, Wisam Monther wrote:
> > > Hi,
> > >
> > >> -----Original Message-----
> > >> From: dev <dev-bounces@dpdk.org> On Behalf Of Lance Richardson
> > >> Sent: Saturday, January 30, 2021 12:36 AM
> > >> To: Wenzhuo Lu <wenzhuo.lu@intel.com>; Xiaoyun Li
> > >> <xiaoyun.li@intel.com>; Bernard Iremonger
> > >> <bernard.iremonger@intel.com>
> > >> Cc: dev@dpdk.org; Ajit Kumar Khaparde <ajit.khaparde@broadcom.com>;
> > >> Kalesh Anakkur Purayil <kalesh-anakkur.purayil@broadcom.com>
> > >> Subject: [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum
> > >> errors
> > >>
> > >> Count and display outer IP checksum errors in the checksum forwarder.
> > >>
> > >> Example forwarder stats output:
> > >> RX-packets: 158 RX-dropped: 0 RX-total: 158
> > >> Bad-ipcsum: 48 Bad-l4csum: 48 Bad-outer-l4csum: 6
> > >> Bad-outer-ipcsum: 40
> > >> TX-packets: 0 TX-dropped: 0 TX-total: 0
> > >>
> > >> Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
> > >> Reviewed-by: Ajit Kumar Khaparde <ajit.khaparde@broadcom.com>
> > >> Reviewed-by: Kalesh Anakkur Purayil <kalesh-
> > >> anakkur.purayil@broadcom.com>
> > >
> > > Acked-by: Wisam Jaddo <wisamm@nvidia.com>
> > >
> >
> > Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
> > Applied to dpdk-next-net/main, thanks.
> >
> >
> >
> > 'PKT_RX_EIP_CKSUM_BAD' is documented in mbuf header as:
> > "/** External IP header checksum error. */"
> >
> > I think 'External' wording is confusing, as well as 'EIP' abbreviation, what do
> > you think to create another macro alias to existing one, and mark the old one as
> > deprecated?
> +1
+1
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum errors
2021-02-23 20:25 ` Thomas Monjalon
@ 2021-02-24 10:12 ` Ferruh Yigit
2021-02-24 15:16 ` Lance Richardson
0 siblings, 1 reply; 7+ messages in thread
From: Ferruh Yigit @ 2021-02-24 10:12 UTC (permalink / raw)
To: Thomas Monjalon, Ajit Khaparde
Cc: Wisam Monther, Lance Richardson, Wenzhuo Lu, Xiaoyun Li,
Bernard Iremonger, Olivier Matz, Andrew Rybchenko, dev,
Kalesh Anakkur Purayil
On 2/23/2021 8:25 PM, Thomas Monjalon wrote:
> 23/02/2021 19:39, Ajit Khaparde:
>> On Tue, Feb 23, 2021 at 10:36 AM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
>>>
>>> On 1/31/2021 11:53 AM, Wisam Monther wrote:
>>>> Hi,
>>>>
>>>>> -----Original Message-----
>>>>> From: dev <dev-bounces@dpdk.org> On Behalf Of Lance Richardson
>>>>> Sent: Saturday, January 30, 2021 12:36 AM
>>>>> To: Wenzhuo Lu <wenzhuo.lu@intel.com>; Xiaoyun Li
>>>>> <xiaoyun.li@intel.com>; Bernard Iremonger
>>>>> <bernard.iremonger@intel.com>
>>>>> Cc: dev@dpdk.org; Ajit Kumar Khaparde <ajit.khaparde@broadcom.com>;
>>>>> Kalesh Anakkur Purayil <kalesh-anakkur.purayil@broadcom.com>
>>>>> Subject: [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum
>>>>> errors
>>>>>
>>>>> Count and display outer IP checksum errors in the checksum forwarder.
>>>>>
>>>>> Example forwarder stats output:
>>>>> RX-packets: 158 RX-dropped: 0 RX-total: 158
>>>>> Bad-ipcsum: 48 Bad-l4csum: 48 Bad-outer-l4csum: 6
>>>>> Bad-outer-ipcsum: 40
>>>>> TX-packets: 0 TX-dropped: 0 TX-total: 0
>>>>>
>>>>> Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
>>>>> Reviewed-by: Ajit Kumar Khaparde <ajit.khaparde@broadcom.com>
>>>>> Reviewed-by: Kalesh Anakkur Purayil <kalesh-
>>>>> anakkur.purayil@broadcom.com>
>>>>
>>>> Acked-by: Wisam Jaddo <wisamm@nvidia.com>
>>>>
>>>
>>> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
>>> Applied to dpdk-next-net/main, thanks.
>>>
>>>
>>>
>>> 'PKT_RX_EIP_CKSUM_BAD' is documented in mbuf header as:
>>> "/** External IP header checksum error. */"
>>>
>>> I think 'External' wording is confusing, as well as 'EIP' abbreviation, what do
>>> you think to create another macro alias to existing one, and mark the old one as
>>> deprecated?
>> +1
>
> +1
>
Lance, can you spare some time to make the above mentioned patch?
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum errors
2021-02-24 10:12 ` Ferruh Yigit
@ 2021-02-24 15:16 ` Lance Richardson
2021-02-24 15:38 ` Ferruh Yigit
0 siblings, 1 reply; 7+ messages in thread
From: Lance Richardson @ 2021-02-24 15:16 UTC (permalink / raw)
To: Ferruh Yigit
Cc: Thomas Monjalon, Ajit Khaparde, Wisam Monther, Wenzhuo Lu,
Xiaoyun Li, Bernard Iremonger, Olivier Matz, Andrew Rybchenko,
dev, Kalesh Anakkur Purayil
[-- Attachment #1: Type: text/plain, Size: 565 bytes --]
> Lance, can you spare some time to make the above mentioned patch?
Sure. Are you looking for something like the changes below, or also including
a search and replace of the deprecated macro name with the new one?
- /** External IP header checksum error. */
+/**
+ * Deprecated.
+ * This flag has been renamed, use PKT_RX_OUTER_IP_CKSUM_BAD instead.
+ */
+#define PKT_RX_EIP_CKSUM_BAD (1ULL << 5)
+
+/**
+ * This flag is set when the outermost IP header checksum is detected as
+ * wrong by the hardware.
+ */
#define PKT_RX_OUTER_IP_CKSUM_BAD (1ULL << 5)
/**
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum errors
2021-02-24 15:16 ` Lance Richardson
@ 2021-02-24 15:38 ` Ferruh Yigit
0 siblings, 0 replies; 7+ messages in thread
From: Ferruh Yigit @ 2021-02-24 15:38 UTC (permalink / raw)
To: Lance Richardson
Cc: Thomas Monjalon, Ajit Khaparde, Wisam Monther, Wenzhuo Lu,
Xiaoyun Li, Bernard Iremonger, Olivier Matz, Andrew Rybchenko,
dev, Kalesh Anakkur Purayil
On 2/24/2021 3:16 PM, Lance Richardson wrote:
>> Lance, can you spare some time to make the above mentioned patch?
>
> Sure. Are you looking for something like the changes below, or also including
> a search and replace of the deprecated macro name with the new one?
>
Thank you.
Yes below looks good, and I think we should have the search & replace of the old
macro usage, the latest upstream code shouldn't have the deprecated macro.
> - /** External IP header checksum error. */
> +/**
> + * Deprecated.
> + * This flag has been renamed, use PKT_RX_OUTER_IP_CKSUM_BAD instead.
> + */
> +#define PKT_RX_EIP_CKSUM_BAD (1ULL << 5)
> +
> +/**
> + * This flag is set when the outermost IP header checksum is detected as
> + * wrong by the hardware.
> + */
> #define PKT_RX_OUTER_IP_CKSUM_BAD (1ULL << 5)
>
> /**
>
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-02-24 15:38 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-29 22:35 [dpdk-dev] [PATCH 21.05] app/testpmd: count outer IP checksum errors Lance Richardson
[not found] ` <MWHPR12MB16777B885F3E9A3B7803CD57A4B79@MWHPR12MB1677.namprd12.prod.outlook.com>
2021-02-23 18:35 ` Ferruh Yigit
2021-02-23 18:39 ` Ajit Khaparde
2021-02-23 20:25 ` Thomas Monjalon
2021-02-24 10:12 ` Ferruh Yigit
2021-02-24 15:16 ` Lance Richardson
2021-02-24 15:38 ` Ferruh Yigit
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.