]> www.infradead.org Git - nvme.git/commitdiff
tools: ynl: ethtool.py: Make tool invokable from any CWD
authorRahul Rameshbabu <rrameshbabu@nvidia.com>
Tue, 2 Apr 2024 20:39:52 +0000 (13:39 -0700)
committerJakub Kicinski <kuba@kernel.org>
Thu, 4 Apr 2024 02:34:08 +0000 (19:34 -0700)
ethtool.py depends on yml files in a specific location of the linux kernel
tree. Using relative lookup for those files means that ethtool.py would
need to be run under tools/net/ynl/. Lookup needed yml files without
depending on the current working directory that ethtool.py is invoked from.

Signed-off-by: Rahul Rameshbabu <rrameshbabu@nvidia.com>
Reviewed-by: Dragos Tatulea <dtatulea@nvidia.com>
Link: https://lore.kernel.org/r/20240402204000.115081-1-rrameshbabu@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/net/ynl/ethtool.py

index 6c9f7e31250cdbc2beeacab8c1a312a016d740ff..44ba3ba58ed938498abbcef4895f976103fa5a52 100755 (executable)
@@ -6,6 +6,7 @@ import json
 import pprint
 import sys
 import re
+import os
 
 from lib import YnlFamily
 
@@ -152,8 +153,11 @@ def main():
     global args
     args = parser.parse_args()
 
-    spec = '../../../Documentation/netlink/specs/ethtool.yaml'
-    schema = '../../../Documentation/netlink/genetlink-legacy.yaml'
+    script_abs_dir = os.path.dirname(os.path.abspath(sys.argv[0]))
+    spec = os.path.join(script_abs_dir,
+                        '../../../Documentation/netlink/specs/ethtool.yaml')
+    schema = os.path.join(script_abs_dir,
+                          '../../../Documentation/netlink/genetlink-legacy.yaml')
 
     ynl = YnlFamily(spec, schema)