!231 [sync] PR-228: 重复初始化支持根据参数返回成功

From: @openeuler-sync-bot 
Reviewed-by: @wu-changsheng 
Signed-off-by: @wu-changsheng
This commit is contained in:
openeuler-ci-bot 2022-10-06 09:48:19 +00:00 committed by Gitee
commit 28de807d4a
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 45 additions and 1 deletions

View File

@ -0,0 +1,40 @@
From 12a22b874a4852996dcec56ae30c7a17551bfeeb Mon Sep 17 00:00:00 2001
From: wuchangsheng <wuchangsheng2@huawei.com>
Date: Thu, 6 Oct 2022 16:35:16 +0800
Subject: [PATCH] reinit support return ok
---
lib/eal/linux/eal.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/lib/eal/linux/eal.c b/lib/eal/linux/eal.c
index 7ca8bb2..fc2a7fd 100644
--- a/lib/eal/linux/eal.c
+++ b/lib/eal/linux/eal.c
@@ -1055,6 +1055,7 @@ rte_eal_init(int argc, char **argv)
int i, fctret, ret;
pthread_t thread_id;
static uint32_t run_once;
+ static uint32_t reinit_ok = 0;
uint32_t has_run = 0;
const char *p;
static char logid[PATH_MAX];
@@ -1072,8 +1073,15 @@ rte_eal_init(int argc, char **argv)
return -1;
}
+ if (argc > 1 && !strncmp(argv[1], "reinit-ok", strlen("reinit-ok"))) {
+ reinit_ok = 1;
+ }
+
if (!__atomic_compare_exchange_n(&run_once, &has_run, 1, 0,
__ATOMIC_RELAXED, __ATOMIC_RELAXED)) {
+ if (reinit_ok) {
+ return 0;
+ }
rte_eal_init_alert("already called initialization.");
rte_errno = EALREADY;
return -1;
--
2.27.0

View File

@ -1,6 +1,6 @@
Name: dpdk
Version: 21.11
Release: 17
Release: 18
Packager: packaging@6wind.com
URL: http://dpdk.org
%global source_version 21.11
@ -129,6 +129,7 @@ Patch9120: 0120-app-testpmd-add-help-messages-for-multi-process.patch
Patch9121: 0121-app-testpmd-fix-use-of-indirect-action-after-port-cl.patch
Patch9122: 0122-app-testpmd-fix-bonding-slave-devices-not-released.patch
Patch9123: 0123-secure-complilation-options-rpath.patch
Patch9124: 0124-reinit-support-return-ok.patch
Patch6001: CVE-2021-3839.patch
Patch6002: CVE-2022-0669.patch
@ -263,6 +264,9 @@ strip -g $RPM_BUILD_ROOT/lib/modules/%{kern_devel_ver}/extra/dpdk/igb_uio.ko
/usr/sbin/depmod
%changelog
* Thu Oct 6 2022 wuchangsheng <wuchangsheng2@huawei.com> - 21.11-18
- reinit support return ok
* Tue Sep 13 2022 jiangheng <jiangheng14@huawei.com> - 21.11-17
- remove secure compilation options rpath