tools: ynl-gen: re-raise the exception instead of printing
authorJakub Kicinski <kuba@kernel.org>
Thu, 23 Feb 2023 18:31:40 +0000 (10:31 -0800)
committerJakub Kicinski <kuba@kernel.org>
Fri, 24 Feb 2023 19:55:47 +0000 (11:55 -0800)
traceback.print_exception() seems tricky to call, we're missing
some argument, so re-raise instead.

Reported-by: Chuck Lever III <chuck.lever@oracle.com>
Fixes: 3aacf8281336 ("tools: ynl: add an object hierarchy to represent parsed spec")
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/net/ynl/lib/nlspec.py

index e204679..71da568 100644 (file)
@@ -3,7 +3,6 @@
 import collections
 import importlib
 import os
-import traceback
 import yaml
 
 
@@ -234,8 +233,7 @@ class SpecFamily(SpecElement):
                 resolved.append(elem)
 
             if len(resolved) == 0:
-                traceback.print_exception(last_exception)
-                raise Exception("Could not resolve any spec element, infinite loop?")
+                raise last_exception
 
     def new_attr_set(self, elem):
         return SpecAttrSet(self, elem)