!77 解决8台并发热迁移问题to2403

From: @l30022887 
Reviewed-by: @minknov 
Signed-off-by: @minknov
This commit is contained in:
openeuler-ci-bot 2024-10-22 01:47:52 +00:00 committed by Gitee
commit d7c8dbbf24
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 64 additions and 1 deletions

View File

@ -0,0 +1,59 @@
From e0ab70d68bcda40cd5cfd504f4da4d1d093d1996 Mon Sep 17 00:00:00 2001
From: l30022887 <liweiqiang24@huawei.com>
Date: Mon, 21 Oct 2024 19:51:38 +0800
Subject: [PATCH] resolve-migration-issues
---
qtfs/config/rexec/whitelist | 2 +-
qtfs/ipc/uds_main.c | 7 ++++++-
qtfs/rexec/rexec_sock.c | 2 +-
3 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/qtfs/config/rexec/whitelist b/qtfs/config/rexec/whitelist
index b7f34b5..6a959d6 100644
--- a/qtfs/config/rexec/whitelist
+++ b/qtfs/config/rexec/whitelist
@@ -1 +1 @@
-/usr/bin/qemu-kvm
+/usr/bin/qemu-kvm
diff --git a/qtfs/ipc/uds_main.c b/qtfs/ipc/uds_main.c
index 65468b8..4bc01a9 100644
--- a/qtfs/ipc/uds_main.c
+++ b/qtfs/ipc/uds_main.c
@@ -255,6 +255,8 @@ int uds_set_nonblock(int fd)
int uds_build_tcp_connection(struct uds_conn_arg *arg)
{
int family = AF_VSOCK;
+ int retry = 3;
+ int ret = 0;
if (arg->cs > UDS_SOCKET_SERVER) {
uds_err("cs type %d is error.", arg->cs);
return -1;
@@ -305,7 +307,10 @@ int uds_build_tcp_connection(struct uds_conn_arg *arg)
sock_addr.svm_port = p_uds_var->vsock.peerport;
sock_addr.svm_cid = p_uds_var->vsock.peercid;
#endif
- if (connect(arg->sockfd, (struct sockaddr *)&sock_addr, sizeof(sock_addr)) < 0) {
+ do {
+ ret = connect(arg->sockfd, (struct sockaddr *)&sock_addr, sizeof(sock_addr));
+ } while ((ret != 0) && (retry--));
+ if (ret < 0) {
goto close_and_return;
}
arg->connfd = sock_fd;
diff --git a/qtfs/rexec/rexec_sock.c b/qtfs/rexec/rexec_sock.c
index e8750c5..f7495e5 100644
--- a/qtfs/rexec/rexec_sock.c
+++ b/qtfs/rexec/rexec_sock.c
@@ -37,7 +37,7 @@
int rexec_build_unix_connection(struct rexec_conn_arg *arg)
{
- const int sock_max_conn = 5;
+ const int sock_max_conn = 32;
if (arg->cs > REXEC_SOCK_SERVER) {
rexec_err("cs type %d is error.", arg->cs);
return -1;
--
2.20.1

View File

@ -1,7 +1,7 @@
Name: dpu-utilities
Summary: openEuler dpu utilities
Version: 1.10
Release: 5
Release: 6
License: GPL-2.0
Source: https://gitee.com/openeuler/dpu-utilities/repository/archive/v%{version}.tar.gz
ExclusiveOS: linux
@ -17,6 +17,7 @@ Patch1: 0001-refactor-syscall-wrapper-for-aarch64-reduce-the-memo.patch
Patch2: 0002-fix-readdir-bug-in-devtmpfs.patch
Patch3: 0003-Change-the-maximum-number-of-qtfs-links-from-16-to-6.patch
Patch4: 0004-add-compile-option-of-EPOLL_PROXY-and-fix-some-probl.patch
Patch5: 0005-resolve-migration-issues.patch
%description
This package contains the software utilities on dpu.
@ -144,6 +145,9 @@ sed -i '/# product cut_conf/a\dpuos kiwi/minios/cfg_dpuos yes' /opt/imageT
sed -i '/<repository_rule>/a\dpuos 1 rpm-dir euler_base' /opt/imageTailor/repos/RepositoryRule.conf
%changelog
* Mon Oct 21 2024 l30022887 <liweiqiang24@huawei.com> 1.10-6
- resolve migration issues
* Tue Sep 10 2024 liqiang <liqiang64@huawei.com> 1.10-5
- Add compile option for epoll proxy thread