diff --git a/qtfs/qtfs_common/socket.c b/qtfs/qtfs_common/socket.c index c7e8d8feaf474c3c80b3409062ab3a3e70fc04ee..e51bc5baa4c245fd42e04a3737c03e77d071b770 100644 --- a/qtfs/qtfs_common/socket.c +++ b/qtfs/qtfs_common/socket.c @@ -170,7 +170,7 @@ static int qtfs_conn_sock_server_accept(void *connvar, qtfs_conn_type_e type) mutex_unlock(&qtfs_server_main_sock[type].lock); return -EINVAL; } - ret = kernel_accept(sock, &sockvar->client_sock, SOCK_NONBLOCK); + ret = kernel_accept(sock, &sockvar->client_sock, 0); if (ret < 0) { mutex_unlock(&qtfs_server_main_sock[type].lock); return ret; diff --git a/qtfs/qtfs_server/qtfs-server.c b/qtfs/qtfs_server/qtfs-server.c index 12d2ed0952b478e4eeea81f03640e8b44a1de053..f4e201c63efb75958f791ad1945903550e23594b 100644 --- a/qtfs/qtfs_server/qtfs-server.c +++ b/qtfs/qtfs_server/qtfs-server.c @@ -73,7 +73,7 @@ long qtfs_server_epoll_thread(struct qtfs_conn_var_s *pvar) qtfs_err("qtfs epoll wait error, epfd is invalid."); return QTERROR; } - if (false == pvar->conn_ops->conn_connected(&pvar->conn_var)) { + if (pvar->state == QTCONN_ACTIVE && false == pvar->conn_ops->conn_connected(&pvar->conn_var)) { qtfs_warn("qtfs epoll thread disconnected, now try to reconnect."); ret = qtfs_sm_reconnect(pvar); } else {