DPDK patches and discussions
 help / color / mirror / Atom feed
From: Klaus Degner <kd@allegro-packets.com>
To: "Mcnamara, John" <john.mcnamara@intel.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [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.
> -- 
>
>

  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 [dpdk-dev] [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 ` [dpdk-dev] [PATCH v2] pcap: add support for rx and tx byte counters Klaus Degner
2015-07-10 19:13 ` [dpdk-dev] [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 ` [dpdk-dev] [PATCH] " Klaus Degner
2015-07-13 14:54 ` [dpdk-dev] [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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).