]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
tools: ynl-gen: render rsp_parse() helpers if cmd has only dump op
authorJiri Pirko <jiri@nvidia.com>
Sat, 21 Oct 2023 11:27:04 +0000 (13:27 +0200)
committerJakub Kicinski <kuba@kernel.org>
Mon, 23 Oct 2023 23:12:46 +0000 (16:12 -0700)
Due to the check in RenderInfo class constructor, type_consistent
flag is set to False to avoid rendering the same response parsing
helper for do and dump ops. However, in case there is no do, the helper
needs to be rendered for dump op. So split check to achieve that.

Signed-off-by: Jiri Pirko <jiri@nvidia.com>
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Link: https://lore.kernel.org/r/20231021112711.660606-4-jiri@resnulli.us
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/net/ynl/ynl-gen-c.py

index 7d6c318397be9047bae3ab13529597d853df89a0..ed35a307c9600da1e4914e8dd3b45a2adbbe1c1c 100755 (executable)
@@ -1112,10 +1112,13 @@ class RenderInfo:
 
         # 'do' and 'dump' response parsing is identical
         self.type_consistent = True
-        if op_mode != 'do' and 'dump' in op and 'do' in op:
-            if ('reply' in op['do']) != ('reply' in op["dump"]):
-                self.type_consistent = False
-            elif 'reply' in op['do'] and op["do"]["reply"] != op["dump"]["reply"]:
+        if op_mode != 'do' and 'dump' in op:
+            if 'do' in op:
+                if ('reply' in op['do']) != ('reply' in op["dump"]):
+                    self.type_consistent = False
+                elif 'reply' in op['do'] and op["do"]["reply"] != op["dump"]["reply"]:
+                    self.type_consistent = False
+            else:
                 self.type_consistent = False
 
         self.attr_set = attr_set