Test-Label: iol-testing Test-Status: WARNING http://dpdk.org/patch/100485 _apply patch failure_ Submitter: Satheesh Paul Date: Tuesday, October 05 2021 03:30:26 Applied on: CommitID:086d426406bd3f6fac96a15bbd871c7fe714bc2d Apply patch set 100485-100486 failed: Checking patch drivers/common/cnxk/roc_npc.c... error: while searching for: return 0; } static int npc_parse_actions(struct roc_npc *roc_npc, const struct roc_npc_attr *attr, const struct roc_npc_action actions[], struct roc_npc_flow *flow) { struct npc *npc = roc_npc_to_npc_priv(roc_npc); const struct roc_npc_action_mark *act_mark; const struct roc_npc_action_queue *act_q; error: patch failed: drivers/common/cnxk/roc_npc.c:341 Hunk #2 succeeded at 404 (offset -30 lines). Checking patch drivers/common/cnxk/roc_npc.h... error: while searching for: uint32_t count); int __roc_api roc_npc_mcam_merge_base_steering_rule(struct roc_npc *roc_npc, struct roc_npc_flow *flow); #endif /* _ROC_NPC_H_ */ error: patch failed: drivers/common/cnxk/roc_npc.h:234 Checking patch drivers/common/cnxk/version.map... Hunk #1 succeeded at 242 (offset -44 lines). Applying patch drivers/common/cnxk/roc_npc.c with 1 reject... Rejected hunk #1. Hunk #2 applied cleanly. Applying patch drivers/common/cnxk/roc_npc.h with 1 reject... Hunk #1 applied cleanly. Hunk #2 applied cleanly. Hunk #3 applied cleanly. Rejected hunk #4. Applied patch drivers/common/cnxk/version.map cleanly. diff a/drivers/common/cnxk/roc_npc.c b/drivers/common/cnxk/roc_npc.c (rejected hunks) @@ -341,11 +341,38 @@ roc_npc_fini(struct roc_npc *roc_npc) return 0; } +int +roc_npc_validate_portid_action(struct roc_npc *roc_npc_src, + struct roc_npc *roc_npc_dst) +{ + struct roc_nix *roc_nix_src = roc_npc_src->roc_nix; + struct nix *nix_src = roc_nix_to_nix_priv(roc_nix_src); + struct roc_nix *roc_nix_dst = roc_npc_dst->roc_nix; + struct nix *nix_dst = roc_nix_to_nix_priv(roc_nix_dst); + + if (roc_nix_is_pf(roc_npc_dst->roc_nix)) { + plt_err("Output port should be VF"); + return -EINVAL; + } + + if (nix_dst->dev.vf >= nix_src->dev.maxvf) { + plt_err("Invalid VF for output port"); + return -EINVAL; + } + + if (nix_src->dev.pf != nix_dst->dev.pf) { + plt_err("Output port should be VF of ingress PF"); + return -EINVAL; + } + return 0; +} + static int npc_parse_actions(struct roc_npc *roc_npc, const struct roc_npc_attr *attr, const struct roc_npc_action actions[], struct roc_npc_flow *flow) { + const struct roc_npc_action_port_id *act_portid; struct npc *npc = roc_npc_to_npc_priv(roc_npc); const struct roc_npc_action_mark *act_mark; const struct roc_npc_action_queue *act_q; diff a/drivers/common/cnxk/roc_npc.h b/drivers/common/cnxk/roc_npc.h (rejected hunks) @@ -234,4 +241,6 @@ int __roc_api roc_npc_vtag_actions_sub_return(struct roc_npc *roc_npc, uint32_t count); int __roc_api roc_npc_mcam_merge_base_steering_rule(struct roc_npc *roc_npc, struct roc_npc_flow *flow); +int __roc_api roc_npc_validate_portid_action(struct roc_npc *roc_npc_src, + struct roc_npc *roc_npc_dst); #endif /* _ROC_NPC_H_ */ https://lab.dpdk.org/results/dashboard/patchsets/19165/ UNH-IOL DPDK Community Lab