]> git.itanic.dy.fi Git - linux-stable/commitdiff
net/mlx5: DR, Fix dumping of legacy modify_hdr in debug dump
authorYevgeny Kliteynik <kliteyn@nvidia.com>
Sat, 31 Dec 2022 22:20:53 +0000 (00:20 +0200)
committerSaeed Mahameed <saeedm@nvidia.com>
Fri, 21 Apr 2023 01:35:48 +0000 (18:35 -0700)
The steering dump parser expects to see 0 as rewrite num of actions
in case pattern/args aren't supported - parsing of legacy modify header
is based on this assumption.
Fix this to align to parser's expectation.

Signed-off-by: Yevgeny Kliteynik <kliteyn@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
drivers/net/ethernet/mellanox/mlx5/core/steering/dr_dbg.c

index 1ff8bde90e1ed5f1f674f61e7a4c9e5ab7909c3c..ea9f27db4c741e3075223cf46c44790f90706313 100644 (file)
@@ -153,13 +153,15 @@ dr_dump_rule_action_mem(struct seq_file *file, const u64 rule_id,
                           DR_DUMP_REC_TYPE_ACTION_MODIFY_HDR, action_id,
                           rule_id, action->rewrite->index,
                           action->rewrite->single_action_opt,
-                          action->rewrite->num_of_actions,
+                          ptrn_arg ? action->rewrite->num_of_actions : 0,
                           ptrn_arg ? ptrn->index : 0,
                           ptrn_arg ? mlx5dr_arg_get_obj_id(arg) : 0);
 
-               for (i = 0; i < action->rewrite->num_of_actions; i++) {
-                       seq_printf(file, ",0x%016llx",
-                                  be64_to_cpu(((__be64 *)rewrite_data)[i]));
+               if (ptrn_arg) {
+                       for (i = 0; i < action->rewrite->num_of_actions; i++) {
+                               seq_printf(file, ",0x%016llx",
+                                          be64_to_cpu(((__be64 *)rewrite_data)[i]));
+                       }
                }
 
                seq_puts(file, "\n");