From 8e63b6dd2b51514618af5f0b29496cb7faa0fbb6 Mon Sep 17 00:00:00 2001 From: Alina Sklarevich Date: Tue, 26 Jan 2021 15:55:12 +0200 Subject: [PATCH] UCS/UCT/JENKINS: Enable the loopback IP as a tcp and testing resource use CM fallback on rdmacm route_resolve error. --- contrib/test_jenkins.sh | 18 ++++++++++++------ src/ucs/sys/sock.c | 2 +- src/uct/ib/rdmacm/rdmacm_cm.c | 4 ++-- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/contrib/test_jenkins.sh b/contrib/test_jenkins.sh index 967a371aeb3..9468f97c318 100755 --- a/contrib/test_jenkins.sh +++ b/contrib/test_jenkins.sh @@ -789,7 +789,7 @@ rename_files() { } run_client_server_app() { - test_name=$1 + test_exe=$1 test_args=$2 server_addr_arg=$3 kill_server=$4 @@ -801,7 +801,7 @@ run_client_server_app() { affinity_server=$(slice_affinity 0) affinity_client=$(slice_affinity 1) - taskset -c $affinity_server ${test_name} ${test_args} ${server_port_arg} & + taskset -c $affinity_server ${test_exe} ${test_args} ${server_port_arg} & server_pid=$! sleep 15 @@ -811,7 +811,7 @@ run_client_server_app() { set +Ee fi - taskset -c $affinity_client ${test_name} ${test_args} ${server_addr_arg} ${server_port_arg} & + taskset -c $affinity_client ${test_exe} ${test_args} ${server_addr_arg} ${server_port_arg} & client_pid=$! wait ${client_pid} @@ -959,8 +959,10 @@ run_ucp_client_server() { } run_io_demo() { - server_ip=$(get_rdma_device_ip_addr) - if [ "$server_ip" == "" ] + server_rdma_addr=$(get_rdma_device_ip_addr) + server_loopback_addr="127.0.0.1" + + if [ "$server_rdma_addr" == "" ] then return fi @@ -976,7 +978,11 @@ run_io_demo() { fi export UCX_SOCKADDR_CM_ENABLE=y - run_client_server_app "./test/apps/iodemo/${test_name}" "${test_args}" "${server_ip}" 1 0 + + for server_ip in $server_rdma_addr $server_loopback_addr + do + run_client_server_app "./test/apps/iodemo/${test_name}" "${test_args}" "${server_ip}" 1 0 + done unset UCX_SOCKADDR_CM_ENABLE make_clean diff --git a/src/ucs/sys/sock.c b/src/ucs/sys/sock.c index 2aa937eb0b9..adc8e4227d9 100644 --- a/src/ucs/sys/sock.c +++ b/src/ucs/sys/sock.c @@ -66,7 +66,7 @@ void ucs_close_fd(int *fd_p) int ucs_netif_flags_is_active(unsigned int flags) { - return (flags & IFF_UP) && (flags & IFF_RUNNING) && !(flags & IFF_LOOPBACK); + return (flags & IFF_UP) && (flags & IFF_RUNNING); } ucs_status_t ucs_netif_ioctl(const char *if_name, unsigned long request, diff --git a/src/uct/ib/rdmacm/rdmacm_cm.c b/src/uct/ib/rdmacm/rdmacm_cm.c index 558208f9772..f55d3675ecf 100644 --- a/src/uct/ib/rdmacm/rdmacm_cm.c +++ b/src/uct/ib/rdmacm/rdmacm_cm.c @@ -138,10 +138,10 @@ static void uct_rdmacm_cm_handle_event_addr_resolved(struct rdma_cm_event *event event->id); if (rdma_resolve_route(event->id, 1000 /* TODO */)) { - ucs_error("%s: rdma_resolve_route failed: %m", + ucs_diag("%s: rdma_resolve_route failed: %m", uct_rdmacm_cm_ep_str(cep, ep_str, UCT_RDMACM_EP_STRING_LEN)); remote_data.field_mask = 0; - uct_rdmacm_cm_ep_set_failed(cep, &remote_data, UCS_ERR_IO_ERROR); + uct_rdmacm_cm_ep_set_failed(cep, &remote_data, UCS_ERR_UNREACHABLE); } }