Test-Label: iol-testing Test-Status: WARNING http://dpdk.org/patch/102631 _apply patch failure_ Submitter: Xueming Li Date: Friday, October 22 2021 09:11:42 Applied on: CommitID:3ac2dffae88e8eb5c374b1fdd40d605014526510 Apply patch set 102631-102638 failed: Checking patch drivers/net/mlx5/linux/mlx5_os.c... Hunk #1 succeeded at 956 (offset 51 lines). Hunk #2 succeeded at 976 (offset 52 lines). error: while searching for: " old OFED/rdma-core version or firmware configuration"); #endif config->mpls_en = mpls_en; /* Check port status. */ err = mlx5_glue->query_port(sh->cdev->ctx, spawn->phys_port, &port_attr); if (err) { DRV_LOG(ERR, "port query failed: %s", strerror(err)); goto error; } if (port_attr.link_layer != IBV_LINK_LAYER_ETHERNET) { DRV_LOG(ERR, "port is not configured in Ethernet mode"); err = EINVAL; goto error; } if (port_attr.state != IBV_PORT_ACTIVE) DRV_LOG(DEBUG, "port is not active: \"%s\" (%d)", mlx5_glue->port_state_str(port_attr.state), port_attr.state); /* Allocate private eth device data. */ error: patch failed: drivers/net/mlx5/linux/mlx5_os.c:1121 Hunk #4 succeeded at 1199 (offset 32 lines). Hunk #5 succeeded at 1910 (offset 50 lines). Hunk #6 succeeded at 1933 (offset 50 lines). Applying patch drivers/net/mlx5/linux/mlx5_os.c with 1 reject... Hunk #1 applied cleanly. Hunk #2 applied cleanly. Rejected hunk #3. Hunk #4 applied cleanly. Hunk #5 applied cleanly. Hunk #6 applied cleanly. diff a/drivers/net/mlx5/linux/mlx5_os.c b/drivers/net/mlx5/linux/mlx5_os.c (rejected hunks) @@ -1121,20 +1122,35 @@ mlx5_dev_spawn(struct rte_device *dpdk_dev, " old OFED/rdma-core version or firmware configuration"); #endif config->mpls_en = mpls_en; + nl_rdma = mlx5_nl_init(NETLINK_RDMA); /* Check port status. */ - err = mlx5_glue->query_port(sh->cdev->ctx, spawn->phys_port, - &port_attr); - if (err) { - DRV_LOG(ERR, "port query failed: %s", strerror(err)); - goto error; - } - if (port_attr.link_layer != IBV_LINK_LAYER_ETHERNET) { - DRV_LOG(ERR, "port is not configured in Ethernet mode"); - err = EINVAL; - goto error; + if (spawn->phys_port <= UINT8_MAX) { + /* Legacy Verbs api only support u8 port number. */ + err = mlx5_glue->query_port(sh->cdev->ctx, spawn->phys_port, + &port_attr); + if (err) { + DRV_LOG(ERR, "port query failed: %s", strerror(err)); + goto error; + } + if (port_attr.link_layer != IBV_LINK_LAYER_ETHERNET) { + DRV_LOG(ERR, "port is not configured in Ethernet mode"); + err = EINVAL; + goto error; + } + } else if (nl_rdma >= 0) { + /* IB doesn't allow more than 255 ports, must be Ethernet. */ + err = mlx5_nl_port_state(nl_rdma, spawn->phys_dev_name, + spawn->phys_port); + if (err < 0) { + DRV_LOG(INFO, "Failed to get netlink port state: %s", + strerror(rte_errno)); + err = -rte_errno; + goto error; + } + port_attr.state = (enum ibv_port_state)err; } if (port_attr.state != IBV_PORT_ACTIVE) - DRV_LOG(DEBUG, "port is not active: \"%s\" (%d)", + DRV_LOG(INFO, "port is not active: \"%s\" (%d)", mlx5_glue->port_state_str(port_attr.state), port_attr.state); /* Allocate private eth device data. */ Checking patch drivers/net/mlx5/linux/mlx5_os.c... error: drivers/net/mlx5/linux/mlx5_os.c: does not match index Checking patch drivers/net/mlx5/mlx5.h... Hunk #1 succeeded at 1709 (offset 45 lines). Checking patch drivers/net/mlx5/mlx5_devx.c... Hunk #2 succeeded at 1118 (offset -3 lines). Hunk #3 succeeded at 1187 (offset -3 lines). Checking patch drivers/net/mlx5/mlx5_devx.h... Checking patch drivers/net/mlx5/mlx5_flow.c... Hunk #1 succeeded at 6573 (offset -23 lines). Checking patch drivers/net/mlx5/mlx5_trigger.c... Applied patch drivers/net/mlx5/mlx5.h cleanly. Applied patch drivers/net/mlx5/mlx5_devx.c cleanly. Applied patch drivers/net/mlx5/mlx5_devx.h cleanly. Applied patch drivers/net/mlx5/mlx5_flow.c cleanly. Applied patch drivers/net/mlx5/mlx5_trigger.c cleanly. Checking patch drivers/net/mlx5/linux/mlx5_os.c... error: drivers/net/mlx5/linux/mlx5_os.c: does not match index https://lab.dpdk.org/results/dashboard/patchsets/19642/ UNH-IOL DPDK Community Lab