Received: by 2002:a05:6a10:af89:0:0:0:0 with SMTP id iu9csp4886783pxb; Tue, 25 Jan 2022 23:09:53 -0800 (PST) X-Google-Smtp-Source: ABdhPJyz6WYUqdd6cDKbkWB+TRcHBnsh8o6hFDbCtqzew+nIafpxargNbgJBX2AuFYDSjjKGdXEg X-Received: by 2002:a62:1947:0:b0:4c7:f23e:1fd7 with SMTP id 68-20020a621947000000b004c7f23e1fd7mr16510024pfz.67.1643180993647; Tue, 25 Jan 2022 23:09:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643180993; cv=none; d=google.com; s=arc-20160816; b=syldbx4ZR8WQbwTn28g8Zz9+ukZYuRwjkqCrREG/Bd7qaSjPghazBzFUMgd+5W8AiW iD/ldS+7zcsjL1BCFfp/v/vXicL/P4l1VAFjSqEbD3Ixn5Fg2Wsf/xmr1Z0/2GsH0d6A GaRX6nTM7Jy62ULQRgH3rUBB3l7VkTZDV2pEtFnPPVaP2pmqqYsGv66W7yATbBURFWLp SccomBQ32DeEMFgPiR3G+t3cfrYOehygl3XfBSYElYATj4x4cfLzVRPGrDU3BzMNOnDw HHCPVieWMnuogjT+yAe06HLd2N/qJ/bLXRFp1Stryw3p66aksboT1FBqyM/+zi/rLRaL X3BQ== 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:date:subject:cc:to:from:sender :dkim-signature; bh=kw5JfT3YUES2j7F/cVOsfLAQzmbaJFRQxrMCwxFTydA=; b=VIl80bL5uxarycWtcy7HRzV9oo8t1IBxau1li6XH9BOSyG19bq6+kYLQMPo2kIKeFU e05HwbmHhsbG5IuCR0lDvcaT+9yfFlGHJ2S85nGghj5fwr9X7GbTHFRFahwhVTj7xwzF bFqm3JE/Y4e2pO58cbPX/M/P9iKn1Lx1A+WfZGhbvFxNI3ThH1CbY77RZ19pzP6Kf8j9 cgZsSvhFvEyOzzmWVMzIFMSKQ+DxROh+uE4irJtRXh/+XQFqF2bVKQKVDv7X1T792D3f y7OtlFgsD9oEX6/318VR5I/Yv4GpaW3oUbLquSSXZaijRCydSKPerZh5Fj9hNqD7XMdV iv/Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=BeAY+Kib; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id c11si16484993plh.322.2022.01.25.23.09.40; Tue, 25 Jan 2022 23:09:53 -0800 (PST) Received-SPF: pass (google.com: domain of linux-nfs-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=@gmail.com header.s=20210112 header.b=BeAY+Kib; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229582AbiAYTJw (ORCPT + 99 others); Tue, 25 Jan 2022 14:09:52 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46236 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229586AbiAYTJu (ORCPT ); Tue, 25 Jan 2022 14:09:50 -0500 Received: from mail-qv1-xf2b.google.com (mail-qv1-xf2b.google.com [IPv6:2607:f8b0:4864:20::f2b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 65AE7C06173D for ; Tue, 25 Jan 2022 11:09:49 -0800 (PST) Received: by mail-qv1-xf2b.google.com with SMTP id a7so26214786qvl.1 for ; Tue, 25 Jan 2022 11:09:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=kw5JfT3YUES2j7F/cVOsfLAQzmbaJFRQxrMCwxFTydA=; b=BeAY+Kibs1iqu695MqZej4L+vyS2TywF6tc9ZxaV50g/Q8xJqe3BRAVXnJZuWD97Mo K91lTUrqHQvZMOj1RTA0TLqFlx/z8468zUvl7s6zy6P274AZq9kGxttdTOdzQ1H/g1fD DvMdZKMFPnht5utoKm7IKcL5+Kjnu03nUchfmsoJs8xDnV+8/cawjUwClRFcbqxSAGVl ZkdSLXLXWH7n5+p7VqXwsjjk4fDRyW4KeLm9mXNqE+EukRdWBjH0vCbXReUqT3kiLp6q B7TP6WcQP6AwHktmnYxHR+j+cjnSXCzvlYJ+TzUEd0D5nG6Ovs8e/4DZJbrvmfapODAK EfQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=kw5JfT3YUES2j7F/cVOsfLAQzmbaJFRQxrMCwxFTydA=; b=n1JhE7FRwzZEKpqDXi+ixmjHH6suhtZ00yZ6rNFIRh3Msc2hH+WEiWTBAn2gA3MrlB HcoyFMe3zo3a5mpQ0TP5fhOYGpP9VY1oN+XpOcbuqKvLQKfcJM5EkKZ6veV2E4b7nazF lZDrtBszgrf0eEvNhMV6G3kr2qPBX/FBgQgy5Rve3xyfqAH/BoJkcUNg9N1lSFbvsRDR ufZBHTg8e1khMkcJzYavn3m+VSWlP9XFSR217W21XwFYi2QLdnvdWWu4xBJxj68pdDO/ cErq1p2rOS1isU3xTh+R70GnNioifZTCTuzrIdzysFj32S2EExsEjQcBLXKM7XFyh04K h6KA== X-Gm-Message-State: AOAM533NaSATCwRgFMbZN9WssdJHflrNTA5F92K+qPx/MoAkUf5e62V7 iK35psupjaJDyCNVKoYi9sMzP/ePpyw= X-Received: by 2002:a05:6214:d02:: with SMTP id 2mr19602215qvh.125.1643137788545; Tue, 25 Jan 2022 11:09:48 -0800 (PST) Received: from gouda.nowheycreamery.com ([2601:401:100:a3a:aa6d:aaff:fe2e:8a6a]) by smtp.gmail.com with ESMTPSA id n6sm34802qtx.23.2022.01.25.11.09.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Jan 2022 11:09:47 -0800 (PST) Sender: Anna Schumaker From: schumaker.anna@gmail.com X-Google-Original-From: Anna.Schumaker@Netapp.com To: steved@redhat.com, linux-nfs@vger.kernel.org Cc: Anna.Schumaker@Netapp.com Subject: [PATCH v6 1/9] rpcctl: Add a rpcctl.py tool Date: Tue, 25 Jan 2022 14:09:38 -0500 Message-Id: <20220125190946.23586-2-Anna.Schumaker@Netapp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220125190946.23586-1-Anna.Schumaker@Netapp.com> References: <20220125190946.23586-1-Anna.Schumaker@Netapp.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org From: Anna Schumaker This will be used to print and manipulate the sunrpc sysfs directory files. Running without arguments prints both usage information and the location of the sunrpc sysfs directory. Signed-off-by: Anna Schumaker -- v6: Combine files into a single Python script --- tools/rpcctl/rpcctl.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100755 tools/rpcctl/rpcctl.py diff --git a/tools/rpcctl/rpcctl.py b/tools/rpcctl/rpcctl.py new file mode 100755 index 000000000000..9851d2f5f9a6 --- /dev/null +++ b/tools/rpcctl/rpcctl.py @@ -0,0 +1,25 @@ +#!/usr/bin/python3 +import argparse +import pathlib +import sys + +with open("/proc/mounts", 'r') as f: + mount = [ line.split()[1] for line in f if line.startswith("sys ") ] + if len(mount) == 0: + print("ERROR: sysfs is not mounted") + sys.exit(1) + +sunrpc = pathlib.Path(mount[0]) / "kernel" / "sunrpc" +if not sunrpc.is_dir(): + print("ERROR: sysfs does not have sunrpc directory") + sys.exit(1) + +parser = argparse.ArgumentParser() + +def show_small_help(args): + parser.print_usage() + print("sunrpc dir:", sunrpc) +parser.set_defaults(func=show_small_help) + +args = parser.parse_args() +args.func(args) -- 2.34.1