43 lines
1.3 KiB
Diff
43 lines
1.3 KiB
Diff
From 81b3494fbb9a6b346560220bf4b4dc10ae8f9881 Mon Sep 17 00:00:00 2001
|
|
From: hkk <hankangkang5@huawei.com>
|
|
Date: Wed, 24 Jul 2024 15:30:48 +0800
|
|
Subject: [PATCH] fix issue: create virtio_user based on bond4 main network
|
|
card
|
|
|
|
---
|
|
src/lstack/core/lstack_dpdk.c | 11 +++++++++--
|
|
1 file changed, 9 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/src/lstack/core/lstack_dpdk.c b/src/lstack/core/lstack_dpdk.c
|
|
index e17242c..50fbdf6 100644
|
|
--- a/src/lstack/core/lstack_dpdk.c
|
|
+++ b/src/lstack/core/lstack_dpdk.c
|
|
@@ -798,6 +798,7 @@ int32_t init_dpdk_ethdev(void)
|
|
LSTACK_LOG(ERR, LSTACK, "bond device create failed, ret=%d\n", ret);
|
|
return -1;
|
|
}
|
|
+ port_id = rte_eth_bond_primary_get(get_protocol_stack_group()->port_id);
|
|
} else {
|
|
port_id = ethdev_port_id(cfg->mac_addr);
|
|
if (port_id < 0) {
|
|
@@ -818,8 +819,14 @@ int32_t init_dpdk_ethdev(void)
|
|
}
|
|
}
|
|
#endif
|
|
- if (get_global_cfg_params()->flow_bifurcation && virtio_port_create(port_id) != 0) {
|
|
- return -1;
|
|
+ if (cfg->flow_bifurcation) {
|
|
+ if (cfg->kni_switch) {
|
|
+ LSTACK_LOG(ERR, LSTACK, "flow_bifurcation and kni_switch cannot both be enabled, please check them\n");
|
|
+ return -1;
|
|
+ }
|
|
+ if (virtio_port_create(port_id) != 0) {
|
|
+ return -1;
|
|
+ }
|
|
}
|
|
|
|
return 0;
|
|
--
|
|
2.33.0
|
|
|