Test-Label: iol-testing Test-Status: WARNING http://dpdk.org/patch/102518 _apply patch failure_ Submitter: Satheesh Paul Date: Thursday, October 21 2021 05:11:15 Applied on: CommitID:3ac2dffae88e8eb5c374b1fdd40d605014526510 Apply patch set 102518-102519 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_meter *act_mtr; error: patch failed: drivers/common/cnxk/roc_npc.c:261 Hunk #2 succeeded at 407 (offset 52 lines). Checking patch drivers/common/cnxk/roc_npc.h... error: while searching for: ROC_NPC_ACTION_TYPE_VLAN_INSERT = (1 << 13), ROC_NPC_ACTION_TYPE_VLAN_ETHTYPE_INSERT = (1 << 14), ROC_NPC_ACTION_TYPE_VLAN_PCP_INSERT = (1 << 15), ROC_NPC_ACTION_TYPE_METER = (1 << 17), }; error: patch failed: drivers/common/cnxk/roc_npc.h:77 Hunk #2 succeeded at 94 (offset -2 lines). Hunk #3 succeeded at 240 (offset -7 lines). Checking patch drivers/common/cnxk/version.map... Hunk #1 succeeded at 286 (offset -16 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... Rejected hunk #1. Hunk #2 applied cleanly. Hunk #3 applied cleanly. 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) @@ -261,11 +261,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_meter *act_mtr; diff a/drivers/common/cnxk/roc_npc.h b/drivers/common/cnxk/roc_npc.h (rejected hunks) @@ -77,6 +77,7 @@ enum roc_npc_action_type { ROC_NPC_ACTION_TYPE_VLAN_INSERT = (1 << 13), ROC_NPC_ACTION_TYPE_VLAN_ETHTYPE_INSERT = (1 << 14), ROC_NPC_ACTION_TYPE_VLAN_PCP_INSERT = (1 << 15), + ROC_NPC_ACTION_TYPE_PORT_ID = (1 << 16), ROC_NPC_ACTION_TYPE_METER = (1 << 17), }; Checking patch doc/guides/nics/cnxk.rst... Hunk #1 succeeded at 304 (offset -1 lines). Checking patch doc/guides/nics/features/cnxk.ini... Hunk #1 succeeded at 84 (offset -1 lines). Checking patch drivers/net/cnxk/cnxk_rte_flow.c... error: while searching for: struct roc_npc_action in_actions[], uint32_t *flowkey_cfg) { struct cnxk_eth_dev *dev = cnxk_eth_pmd_priv(eth_dev); const struct rte_flow_action_queue *act_q; int i = 0, rc = 0; int rq; error: patch failed: drivers/net/cnxk/cnxk_rte_flow.c:110 Hunk #2 succeeded at 154 (offset 2 lines). Applied patch doc/guides/nics/cnxk.rst cleanly. Applied patch doc/guides/nics/features/cnxk.ini cleanly. Applying patch drivers/net/cnxk/cnxk_rte_flow.c with 1 reject... Rejected hunk #1. Hunk #2 applied cleanly. diff a/drivers/net/cnxk/cnxk_rte_flow.c b/drivers/net/cnxk/cnxk_rte_flow.c (rejected hunks) @@ -110,7 +110,13 @@ cnxk_map_actions(struct rte_eth_dev *eth_dev, const struct rte_flow_attr *attr, struct roc_npc_action in_actions[], uint32_t *flowkey_cfg) { struct cnxk_eth_dev *dev = cnxk_eth_pmd_priv(eth_dev); + const struct rte_flow_action_port_id *port_act; const struct rte_flow_action_queue *act_q; + struct roc_npc *roc_npc_src = &dev->npc; + struct rte_eth_dev *portid_eth_dev; + char if_name[RTE_ETH_NAME_MAX_LEN]; + struct cnxk_eth_dev *hw_dst; + struct roc_npc *roc_npc_dst; int i = 0, rc = 0; int rq; https://lab.dpdk.org/results/dashboard/patchsets/19605/ UNH-IOL DPDK Community Lab