Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp1946097pxu; Sun, 13 Dec 2020 08:24:49 -0800 (PST) X-Google-Smtp-Source: ABdhPJyLfAd9tmBYbui5N0YOZFO1OWAfkgiFaFHLhjegaUJTxj/9anCd1wSmwj8229DZt4NBttow X-Received: by 2002:a50:e848:: with SMTP id k8mr6746237edn.77.1607876688822; Sun, 13 Dec 2020 08:24:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607876688; cv=none; d=google.com; s=arc-20160816; b=n7KuyEWJzt4TSEHbo/3PfVz4sfCoMXBWEhQACOWErafW4D6v0iUxpJdWa0GO8dRKmH vwNrFiPjClRJrEex75eyza57h7P/qOr/ucqL2wU2rDsemUx9EoQRe4OZGKwAwF3x5aWS xEFewwmdm7dAFHdJ9MMDaR0rSPS/dpfwXZqQr3iX80tZYkqg5oq6Ze1CkjSaMQKQWYF6 AY0XHGGxaxOAVJuOxwsyEezqOMJEC4ze4mKrFWVdDYrSB1WhoQvB3cGp5yn+ta/owjes LCS1afmC6rFYFm/rUMvCOKagWc59IiZTwMwdMB8+HfS6Zj0d9Tr2eq0v1+1sQMa8NvbH gIvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:dkim-signature :date; bh=m7BfuIDjxGbOSW3ZUh7JZRWr4OEJE/TqPlVMbAVS/94=; b=R+ZObMLxBtdHp05efC5wT6yry+J2VyRu88fqeV9x1uSWZBpsHiOBovsma5QbUQWGCl OZpWL116RFzKBglZ2UuIjhe4n+W/l6NFqUxJl7D5XqyLdZNWTUf1ktfRC4YyyvajrcdX lD6xSEEO2Cieq3qxGe1K7m13vjwdZLpjzfH39ORwC4cfpAAOegmr6uK3+DjLNhqK+FVz Vro5HvCfxSN5nfZQWPbwduDZLZhO8UhpohW9fAEHbYvEC+jMkEJ7iAchNpD/qCMdSnZy bero/cHOyNTYDsGtlGanxYjsmQu8QmjH7BS9kntS/c3qSn0XLJ7Rzuch39yK2Sbde24f tMsQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=JEORhnkX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id i11si2831976edu.256.2020.12.13.08.24.26; Sun, 13 Dec 2020 08:24:48 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=JEORhnkX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2439254AbgLLRen (ORCPT + 99 others); Sat, 12 Dec 2020 12:34:43 -0500 Received: from mail.kernel.org ([198.145.29.99]:60920 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2392965AbgLLRem (ORCPT ); Sat, 12 Dec 2020 12:34:42 -0500 Date: Sat, 12 Dec 2020 09:34:01 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1607794442; bh=s22lqFRbBa65jJaAjvTu8tN3w73WuV7MZDeePGuYqro=; h=From:To:Cc:Subject:In-Reply-To:References:From; b=JEORhnkXeDnyqaStPv3PEXlIdkWzEH4gDXJPpfRAZM+adf7cbXaUeZz8n9Zyxc5ml 5VSns66qRzDv4H4aRgsLlLTUHosjnpD0kGEJHQyV906vMVtnfVvcgb+W7TOTG4LRrv NN5Szc6zzo8LZeEpdujYE+k0Hb++ohiPikOUA5JjQwlgLNq6Q6cQFKzTpFC/MmZIIL AFQJrFBgBHEP7Iu/IOrTcnEC7GqDp7pSD/KjZtdYv8b2uW/tXcE97srJAY+iD966zz q6smDDwH5MRUYubFUFlbPr+waApJwsg28/27cQcqZeyA90+PdGCaZLlzwNl2vjvYV1 /YNLhsj2fVaHw== From: Jakub Kicinski To: Oleksij Rempel Cc: Andrew Lunn , Vivien Didelot , Florian Fainelli , Vladimir Oltean , "David S. Miller" , Russell King , Pengutronix Kernel Team , netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mips@vger.kernel.org Subject: Re: [PATCH v5 2/2] net: dsa: qca: ar9331: export stats64 Message-ID: <20201212093401.07b0e528@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com> In-Reply-To: <20201211105322.7818-3-o.rempel@pengutronix.de> References: <20201211105322.7818-1-o.rempel@pengutronix.de> <20201211105322.7818-3-o.rempel@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 11 Dec 2020 11:53:22 +0100 Oleksij Rempel wrote: > Add stats support for the ar9331 switch. > > Signed-off-by: Oleksij Rempel > --- > drivers/net/dsa/qca/ar9331.c | 256 ++++++++++++++++++++++++++++++++++- > 1 file changed, 255 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/dsa/qca/ar9331.c b/drivers/net/dsa/qca/ar9331.c > index 4d49c5f2b790..5baef0ec6410 100644 > --- a/drivers/net/dsa/qca/ar9331.c > +++ b/drivers/net/dsa/qca/ar9331.c > @@ -101,6 +101,9 @@ > AR9331_SW_PORT_STATUS_RX_FLOW_EN | AR9331_SW_PORT_STATUS_TX_FLOW_EN | \ > AR9331_SW_PORT_STATUS_SPEED_M) > > +/* MIB registers */ > +#define AR9331_MIB_COUNTER(x) (0x20000 + ((x) * 0x100)) > + > /* Phy bypass mode > * ------------------------------------------------------------------------ > * Bit: | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |10 |11 |12 |13 |14 |15 | > @@ -154,6 +157,111 @@ > #define AR9331_SW_MDIO_POLL_SLEEP_US 1 > #define AR9331_SW_MDIO_POLL_TIMEOUT_US 20 > > +/* The interval should be small enough to avoid overflow of 32bit MIBs */ > +/* > + * FIXME: as long as we can't read MIBs from stats64 call directly, we should > + * poll stats more frequently then it is actually needed. In normal case > + * 100 sec interval should be OK. This comment is a little confusing, if you don't mind. Should it says something like: FIXME: until we can read MIBs from stats64 call directly (i.e. sleep there), we have to poll stats more frequently then it is actually needed. For overflow protection, normally, 100 sec interval should have been OK.