From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Hutchings Subject: Re: [PATCH net-next v5 07/10] forcedeth: implement ndo_get_stats64() API Date: Wed, 16 Nov 2011 17:14:54 +0000 Message-ID: <1321463694.2709.1.camel@bwh-desktop> References: <20111116085533.0982001e@s6510.linuxnetplumber.net> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Cc: David Decotigny , , , "David S. Miller" , Ian Campbell , Eric Dumazet , Jeff Kirsher , Jiri Pirko , Joe Perches , Szymon Janc , Richard Jones , Ayaz Abdulla To: Stephen Hemminger Return-path: In-Reply-To: <20111116085533.0982001e@s6510.linuxnetplumber.net> Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org On Wed, 2011-11-16 at 08:55 -0800, Stephen Hemminger wrote: > On Tue, 15 Nov 2011 21:15:55 -0800 > David Decotigny wrote: > > > This commit implements the ndo_get_stats64() API for forcedeth. Since > > these stats are being updated from different contexts (process and > > timer), this commit adds protection (locking + atomic variables). > > > > Tested: > > - 16-way SMP x86_64 -> > > RX bytes:7244556582 (7.2 GB) TX bytes:181904254 (181.9 MB) > > - pktgen + loopback: identical rx_bytes/tx_bytes and rx_packets/tx_packets > > Rather than adding additional locking why not use a percpu structure > to hold statistics. See loopback, macvlan, veth, xen-netfront. percpu is stupid for a single-queue driver. > Or realize that the Tx side is single threaded by dev->xmit_lock already > and the Rx side is single threaded by NAPI. Right. Ben. -- Ben Hutchings, Staff Engineer, Solarflare Not speaking for my employer; that's the marketing department's job. They asked us to note that Solarflare product names are trademarked.