From: Klaus Degner <kd@allegro-packets.com>
To: "Mcnamara, John" <john.mcnamara@intel.com>,
"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [PATCH v3] pcap: add support for rx and tx byte counters
Date: Mon, 13 Jul 2015 15:01:49 +0200 [thread overview]
Message-ID: <55A3B6BD.30205@allegro-packets.com> (raw)
In-Reply-To: <B27915DBBA3421428155699D51E4CFE2F6B581@IRSMSX103.ger.corp.intel.com>
Hi John,
Thank you again for your review. I will work on a v4 with your input.
Klaus
Am 13.07.15 um 14:56 schrieb Mcnamara, John:
>> -----Original Message-----
>> From: Klaus Degner [mailto:kd@allegro-packets.com]
>> Sent: Friday, July 10, 2015 8:13 PM
>> To: dev@dpdk.org
>> Cc: Mcnamara, John; Klaus Degner
>> Subject: [PATCH v3] pcap: add support for rx and tx byte counters
>>
>> add support for rx and tx byte counters in addition to existing rx and tx
>> packet counters, updated with new dpdk master branch
>> ---
>> drivers/net/pcap/rte_eth_pcap.c | 22 ++++++++++++++++++++--
>> 1 file changed, 20 insertions(+), 2 deletions(-)
> Hi Klaus,
>
> Thanks, getting better.
>
> Patches need to be signed off by doing --signoff/-s when committing. See the contributing guidelines here:
>
> http://dpdk.org/dev
>
> This and other issues could be picked up using Linux checkpatch utility:
>
> $ checkpatch.pl --ignore PREFER_KERNEL_TYPES,SPLIT_STRING,VOLATILE -q *.patch
>
> WARNING: Possible unwrapped commit description (prefer a maximum 75 chars per line)
> #11:
> add support for rx and tx byte counters in addition to existing rx and tx packet counters, updated with new dpdk master branch
>
> (Cut 2 warnings that don't apply to the patch.)
>
> ERROR: Missing Signed-off-by: line(s)
>
> total: 1 errors, 3 warnings, 0 checks, 103 lines checked
>
>
>> diff --git a/drivers/net/pcap/rte_eth_pcap.c
>> b/drivers/net/pcap/rte_eth_pcap.c index 682628f..0fd04b5 100644
>> --- a/drivers/net/pcap/rte_eth_pcap.c
>> +++ b/drivers/net/pcap/rte_eth_pcap.c
>> ...
>> if (unlikely(pcap_q->pcap == NULL || nb_pkts == 0))
>> return 0;
>> @@ -222,6 +225,7 @@ eth_pcap_rx(void *queue,
>> rte_memcpy(rte_pktmbuf_mtod(mbuf, void *), packet,
>> header.len);
>> mbuf->data_len = (uint16_t)header.len;
>> + bytes_rx += header.len;
> This looks like it should be outside the if() statement to calculate the RX bytes for both normal and (non-error) jumbo frames.
>
>
>> } else {
>> /* Try read jumbo frame into multi mbufs. */
>> if (unlikely(eth_pcap_rx_jumbo(pcap_q->mb_pool,
>> @@ -237,6 +241,7 @@ eth_pcap_rx(void *queue,
>> num_rx++;
>> }
>> pcap_q->rx_pkts += num_rx;
>> + pcap_q->rx_bytes += bytes_rx;
> Rename bytes_rx to rx_bytes for consistency with the existing member name.
>
>
>> /*
>> @@ -306,6 +313,7 @@ eth_pcap_tx_dumper(void *queue,
>> */
>> pcap_dump_flush(dumper_q->dumper);
>> dumper_q->tx_pkts += num_tx;
>> + dumper_q->tx_bytes += bytes_tx;
> Rename bytes_tx, same as previous comment.
>
> Also, this code needs to be added to eth_pcap_tx() as well. The is one RX code path but there are two TX code paths (for writing to a file and to an interface).
>
>
>> dumper_q->err_pkts += nb_pkts - num_tx;
>> return num_tx;
>> }
>> @@ -499,25 +507,32 @@ eth_stats_get(struct rte_eth_dev *dev,
>> struct rte_eth_stats *igb_stats)
>> {
>> unsigned i;
>> - unsigned long rx_total = 0, tx_total = 0, tx_err_total = 0;
>> + unsigned long rx_total = 0, rx_b_total = 0;
>> + unsigned long tx_total = 0, tx_err_total = 0, tx_b_total = 0;
> The rx_b_total and tx_b_total variable names aren't very clear. Call them rx_bytes_total and tx_bytes_total. In general try to keep the variable names consistent with the existing code.
>
> Also, this would be better to align the rx and tx variables:
>
> unsigned long rx_total = 0, rx_bytes_total = 0;
> unsigned long tx_total = 0, tx_bytes_total = 0, tx_err_total = 0;
>
> Also, it would probably be best to rename rx/tx_total to rx/tx_packets_total (and the tx_err_total) in this function since there are now two types of totals. That would make code like this clearer:
>
> - igb_stats->opackets = tx_total;
> - igb_stats->obytes = tx_b_total;
>
> + igb_stats->opackets = tx_packets_total;
> + igb_stats->obytes = tx_bytes_total;
>
> John.
> --
>
>
next prev parent reply other threads:[~2015-07-13 13:01 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-30 11:39 [PATCH] add rx and tx byte counter statistics for PCAP PMD Klaus Degner
2015-07-08 16:11 ` Mcnamara, John
2015-07-09 15:14 ` Klaus Degner
2015-07-10 13:00 ` [PATCH v2] pcap: add support for rx and tx byte counters Klaus Degner
2015-07-10 19:13 ` [PATCH v3] " Klaus Degner
2015-07-13 12:56 ` Mcnamara, John
2015-07-13 13:01 ` Klaus Degner [this message]
2015-07-13 13:51 ` [PATCH] " Klaus Degner
2015-07-13 14:54 ` [PATCH v5] " Klaus Degner
2015-07-13 15:40 ` Mcnamara, John
2015-07-13 17:33 ` Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=55A3B6BD.30205@allegro-packets.com \
--to=kd@allegro-packets.com \
--cc=dev@dpdk.org \
--cc=john.mcnamara@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.