diff mbox series

[RFC,v2,5/6] tools: ynl: ethtool.py: Make tool invokable from any CWD

Message ID 20240403212931.128541-7-rrameshbabu@nvidia.com (mailing list archive)
State RFC
Headers show
Series None | expand

Commit Message

Rahul Rameshbabu April 3, 2024, 9:28 p.m. UTC
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>
---
 tools/net/ynl/ethtool.py | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

Comments

Rahul Rameshbabu April 3, 2024, 9:34 p.m. UTC | #1
On Wed, 03 Apr, 2024 14:28:44 -0700 Rahul Rameshbabu <rrameshbabu@nvidia.com> wrote:
> 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>
> ---

This patch should be dropped. Accidentally had it in my mail queue.

Link: https://lore.kernel.org/netdev/20240402204000.115081-1-rrameshbabu@nvidia.com/
diff mbox series

Patch

diff --git a/tools/net/ynl/ethtool.py b/tools/net/ynl/ethtool.py
index 6c9f7e31250c..44ba3ba58ed9 100755
--- a/tools/net/ynl/ethtool.py
+++ b/tools/net/ynl/ethtool.py
@@ -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)