From patchwork Wed Nov 5 17:00:58 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Scott Mayhew X-Patchwork-Id: 5236251 Return-Path: X-Original-To: patchwork-linux-nfs@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id D936CC11AC for ; Wed, 5 Nov 2014 17:01:51 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 0311D200F0 for ; Wed, 5 Nov 2014 17:01:50 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 0E9A2200CF for ; Wed, 5 Nov 2014 17:01:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932269AbaKERBg (ORCPT ); Wed, 5 Nov 2014 12:01:36 -0500 Received: from mx1.redhat.com ([209.132.183.28]:54009 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932249AbaKERBO (ORCPT ); Wed, 5 Nov 2014 12:01:14 -0500 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id sA5H1D08004052 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Wed, 5 Nov 2014 12:01:14 -0500 Received: from tonberry.usersys.redhat.com (dhcp145-188.rdu.redhat.com [10.13.145.188]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id sA5H1Dtp027850 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO) for ; Wed, 5 Nov 2014 12:01:13 -0500 Received: from tonberry.usersys.redhat.com (localhost [127.0.0.1]) by tonberry.usersys.redhat.com (8.14.8/8.14.5) with ESMTP id sA5H1CwE000902 for ; Wed, 5 Nov 2014 12:01:12 -0500 Received: (from smayhew@localhost) by tonberry.usersys.redhat.com (8.14.8/8.14.8/Submit) id sA5H1C1r000901 for linux-nfs@vger.kernel.org; Wed, 5 Nov 2014 12:01:12 -0500 From: Scott Mayhew To: linux-nfs@vger.kernel.org Subject: [nfs-utils RFC PATCH 01/15] mountstats: Fix up NFS event counters Date: Wed, 5 Nov 2014 12:00:58 -0500 Message-Id: <1415206872-864-2-git-send-email-smayhew@redhat.com> In-Reply-To: <1415206872-864-1-git-send-email-smayhew@redhat.com> References: <1415206872-864-1-git-send-email-smayhew@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.23 Sender: linux-nfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org X-Spam-Status: No, score=-7.5 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The event counters in the mountstats program aren't in sync with the event counters in the kernel. Removed syncinodes and added vfsupdatepage, vfssetattr, congestionwait, pnfsreads, and pnfswrites. Signed-off-by: Scott Mayhew --- tools/mountstats/mountstats.py | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) mode change 100644 => 100755 tools/mountstats/mountstats.py diff --git a/tools/mountstats/mountstats.py b/tools/mountstats/mountstats.py old mode 100644 new mode 100755 index 9a6ec43..5770f2a --- a/tools/mountstats/mountstats.py +++ b/tools/mountstats/mountstats.py @@ -73,25 +73,29 @@ class DeviceData: self.__nfs_data['dentryrevalidates'] = int(words[2]) self.__nfs_data['datainvalidates'] = int(words[3]) self.__nfs_data['attrinvalidates'] = int(words[4]) - self.__nfs_data['syncinodes'] = int(words[5]) - self.__nfs_data['vfsopen'] = int(words[6]) - self.__nfs_data['vfslookup'] = int(words[7]) - self.__nfs_data['vfspermission'] = int(words[8]) + self.__nfs_data['vfsopen'] = int(words[5]) + self.__nfs_data['vfslookup'] = int(words[6]) + self.__nfs_data['vfspermission'] = int(words[7]) + self.__nfs_data['vfsupdatepage'] = int(words[8]) self.__nfs_data['vfsreadpage'] = int(words[9]) self.__nfs_data['vfsreadpages'] = int(words[10]) self.__nfs_data['vfswritepage'] = int(words[11]) self.__nfs_data['vfswritepages'] = int(words[12]) self.__nfs_data['vfsreaddir'] = int(words[13]) - self.__nfs_data['vfsflush'] = int(words[14]) - self.__nfs_data['vfsfsync'] = int(words[15]) - self.__nfs_data['vfslock'] = int(words[16]) - self.__nfs_data['vfsrelease'] = int(words[17]) - self.__nfs_data['setattrtrunc'] = int(words[18]) - self.__nfs_data['extendwrite'] = int(words[19]) - self.__nfs_data['sillyrenames'] = int(words[20]) - self.__nfs_data['shortreads'] = int(words[21]) - self.__nfs_data['shortwrites'] = int(words[22]) - self.__nfs_data['delay'] = int(words[23]) + self.__nfs_data['vfssetattr'] = int(words[14]) + self.__nfs_data['vfsflush'] = int(words[15]) + self.__nfs_data['vfsfsync'] = int(words[16]) + self.__nfs_data['vfslock'] = int(words[17]) + self.__nfs_data['vfsrelease'] = int(words[18]) + self.__nfs_data['congestionwait'] = int(words[19]) + self.__nfs_data['setattrtrunc'] = int(words[20]) + self.__nfs_data['extendwrite'] = int(words[21]) + self.__nfs_data['sillyrenames'] = int(words[22]) + self.__nfs_data['shortreads'] = int(words[23]) + self.__nfs_data['shortwrites'] = int(words[24]) + self.__nfs_data['delay'] = int(words[25]) + self.__nfs_data['pnfsreads'] = int(words[26]) + self.__nfs_data['pnfswrites'] = int(words[27]) elif words[0] == 'bytes:': self.__nfs_data['normalreadbytes'] = int(words[1]) self.__nfs_data['normalwritebytes'] = int(words[2]) @@ -201,7 +205,6 @@ class DeviceData: print('Cache events:') print(' data cache invalidated %d times' % self.__nfs_data['datainvalidates']) print(' attribute cache invalidated %d times' % self.__nfs_data['attrinvalidates']) - print(' inodes synced %d times' % self.__nfs_data['syncinodes']) print() print('VFS calls:') print(' VFS requested %d inode revalidations' % self.__nfs_data['inoderevalidates'])