From cdcb8a60bc5ae6aa9819be9b84d77a9f5c983e2f Mon Sep 17 00:00:00 2001 From: yinbin6 Date: Sat, 6 Jan 2024 20:12:20 +0800 Subject: [PATCH] sync replace with gz_addr_t (cherry picked from commit b1dee36821d111faeed250a0f29e65692a063fac) --- 0108-replace-with-gz_addr_t.patch | 224 ++++++++++++++++++ 0109-match_host_addr-func-support-ipv6.patch | 103 ++++++++ ...add-example-keep-alive-interval-para.patch | 27 +++ 0111-update-src-common-dpdk_common.c.patch | 68 ++++++ gazelle.spec | 14 +- 5 files changed, 434 insertions(+), 2 deletions(-) create mode 100644 0108-replace-with-gz_addr_t.patch create mode 100644 0109-match_host_addr-func-support-ipv6.patch create mode 100644 0110-add-example-keep-alive-interval-para.patch create mode 100644 0111-update-src-common-dpdk_common.c.patch diff --git a/0108-replace-with-gz_addr_t.patch b/0108-replace-with-gz_addr_t.patch new file mode 100644 index 0000000..b72791f --- /dev/null +++ b/0108-replace-with-gz_addr_t.patch @@ -0,0 +1,224 @@ +From fa28c2bf790466ab3a4cfc8fa39ed14764797e87 Mon Sep 17 00:00:00 2001 +From: zhengjiebing +Date: Tue, 2 Jan 2024 17:10:44 +0800 +Subject: [PATCH] replace with gz_addr_t + +--- + src/common/gazelle_opt.h | 5 +---- + src/lstack/core/lstack_control_plane.c | 6 +++--- + src/lstack/core/lstack_lwip.c | 3 +-- + src/lstack/netif/lstack_vdev.c | 16 +++++++++------- + src/ltran/ltran_forward.c | 10 +++++----- + src/ltran/ltran_stat.c | 4 ++-- + src/ltran/ltran_tcp_conn.c | 4 ++-- + src/ltran/ltran_tcp_sock.c | 4 ++-- + src/ltran/ltran_timer.c | 4 ++-- + 9 files changed, 27 insertions(+), 29 deletions(-) + +diff --git a/src/common/gazelle_opt.h b/src/common/gazelle_opt.h +index bb540f4..36915c6 100644 +--- a/src/common/gazelle_opt.h ++++ b/src/common/gazelle_opt.h +@@ -27,6 +27,7 @@ + #define KERNEL_EPOLL_MAX 512 + + #define ETHER_ADDR_LEN 6 ++#define IPV6_ADDR_LEN 16 + + #define DEFAULT_RING_SIZE (512) + #define DEFAULT_RING_MASK (511) +@@ -52,10 +53,6 @@ + #define STACK_THREAD_DEFAULT 4 + #define STACK_NIC_READ_DEFAULT 128 + +-/* same as define in lwip/ip_addr.h */ +-#define GZ_ADDR_TYPE_V4 0 +-#define GZ_ADDR_TYPE_V6 6 +- + #define MTU_DEFAULT_DATA_LEN 1460 + #define VLAN_HEAD_LEN 4 + #define IPV6_EXTRA_HEAD_LEN 20 +diff --git a/src/lstack/core/lstack_control_plane.c b/src/lstack/core/lstack_control_plane.c +index 668ff80..2d629c8 100644 +--- a/src/lstack/core/lstack_control_plane.c ++++ b/src/lstack/core/lstack_control_plane.c +@@ -361,12 +361,12 @@ static int32_t reg_conn(enum tcp_list_state table_state, enum reg_ring_type reg_ + continue; + } + qtuple.protocol = 0; +- qtuple.src_ip = conn->conn_list[i].lip.u_addr.ip4.addr; ++ qtuple.src_ip = conn->conn_list[i].lip; + qtuple.src_port = lwip_htons(conn->conn_list[i].l_port); +- qtuple.dst_ip = conn->conn_list[i].rip.u_addr.ip4.addr; ++ qtuple.dst_ip = conn->conn_list[i].rip; + qtuple.dst_port = lwip_htons(conn->conn_list[i].r_port); + +- if ((table_state == LISTEN_LIST) && (!match_host_addr(qtuple.src_ip))) { ++ if ((table_state == LISTEN_LIST) && (!match_host_addr(qtuple.src_ip.u_addr.ip4.addr))) { + continue; + } + +diff --git a/src/lstack/core/lstack_lwip.c b/src/lstack/core/lstack_lwip.c +index 4953f3d..87ec1f5 100644 +--- a/src/lstack/core/lstack_lwip.c ++++ b/src/lstack/core/lstack_lwip.c +@@ -446,8 +446,7 @@ static inline ssize_t app_buff_write(struct lwip_sock *sock, void *buf, size_t l + } else if (addr->sa_family == AF_INET6) { + struct sockaddr_in6 *saddr = (struct sockaddr_in6 *)addr; + for (int i = 0; i < write_num; i++) { +- memcpy_s(pbufs[i]->addr.u_addr.ip6.addr, sizeof(pbufs[i]->addr.u_addr.ip6.addr), +- saddr->sin6_addr.s6_addr, sizeof(saddr->sin6_addr.s6_addr)); ++ memcpy_s(pbufs[i]->addr.u_addr.ip6.addr, IPV6_ADDR_LEN, saddr->sin6_addr.s6_addr, IPV6_ADDR_LEN); + pbufs[i]->port = lwip_ntohs((saddr)->sin6_port); + IP_SET_TYPE(&pbufs[i]->addr, IPADDR_TYPE_V6); + } +diff --git a/src/lstack/netif/lstack_vdev.c b/src/lstack/netif/lstack_vdev.c +index ccf664a..9a79dc3 100644 +--- a/src/lstack/netif/lstack_vdev.c ++++ b/src/lstack/netif/lstack_vdev.c +@@ -185,10 +185,12 @@ int32_t vdev_reg_xmit(enum reg_ring_type type, struct gazelle_quintuple *qtuple) + delete_user_process_port(qtuple->src_port, PORT_CONNECT); + uint16_t queue_id = get_protocol_stack()->queue_id; + if (queue_id != 0) { +- transfer_delete_rule_info_to_process0(qtuple->dst_ip, qtuple->src_port, qtuple->dst_port); ++ transfer_delete_rule_info_to_process0(qtuple->dst_ip.u_addr.ip4.addr, ++ qtuple->src_port, qtuple->dst_port); + } + } else { +- transfer_delete_rule_info_to_process0(qtuple->dst_ip, qtuple->src_port, qtuple->dst_port); ++ transfer_delete_rule_info_to_process0(qtuple->dst_ip.u_addr.ip4.addr, ++ qtuple->src_port, qtuple->dst_port); + } + } + +@@ -197,12 +199,12 @@ int32_t vdev_reg_xmit(enum reg_ring_type type, struct gazelle_quintuple *qtuple) + if (get_global_cfg_params()->is_primary) { + add_user_process_port(qtuple->src_port, get_global_cfg_params()->process_idx, PORT_CONNECT); + if (queue_id != 0) { +- transfer_create_rule_info_to_process0(queue_id, qtuple->src_ip, qtuple->dst_ip, +- qtuple->src_port, qtuple->dst_port); ++ transfer_create_rule_info_to_process0(queue_id, qtuple->src_ip.u_addr.ip4.addr, ++ qtuple->dst_ip.u_addr.ip4.addr, qtuple->src_port, qtuple->dst_port); + } + } else { +- transfer_create_rule_info_to_process0(queue_id, qtuple->src_ip, qtuple->dst_ip, +- qtuple->src_port, qtuple->dst_port); ++ transfer_create_rule_info_to_process0(queue_id, qtuple->src_ip.u_addr.ip4.addr, ++ qtuple->dst_ip.u_addr.ip4.addr, qtuple->src_port, qtuple->dst_port); + } + } + +@@ -228,7 +230,7 @@ int32_t vdev_reg_xmit(enum reg_ring_type type, struct gazelle_quintuple *qtuple) + struct protocol_stack *stack = get_protocol_stack(); + + if (type == REG_RING_TCP_LISTEN || type == REG_RING_TCP_LISTEN_CLOSE) { +- if (!match_host_addr(qtuple->src_ip)) { ++ if (!match_host_addr(qtuple->src_ip.u_addr.ip4.addr)) { + LSTACK_LOG(INFO, LSTACK, "lstack ip not match in conf.\n"); + return 0; + } +diff --git a/src/ltran/ltran_forward.c b/src/ltran/ltran_forward.c +index a6f2d71..ee379b5 100644 +--- a/src/ltran/ltran_forward.c ++++ b/src/ltran/ltran_forward.c +@@ -246,8 +246,8 @@ static __rte_always_inline int32_t tcp_handle(struct rte_mbuf *m, const struct r + struct gazelle_tcp_sock *tcp_sock = NULL; + struct gazelle_quintuple quintuple; + +- quintuple.dst_ip = ipv4_hdr->dst_addr; +- quintuple.src_ip = ipv4_hdr->src_addr; ++ quintuple.dst_ip.u_addr.ip4.addr = ipv4_hdr->dst_addr; ++ quintuple.src_ip.u_addr.ip4.addr = ipv4_hdr->src_addr; + quintuple.dst_port = tcp_hdr->dst_port; + quintuple.src_port = tcp_hdr->src_port; + quintuple.protocol = 0; +@@ -260,7 +260,7 @@ static __rte_always_inline int32_t tcp_handle(struct rte_mbuf *m, const struct r + } + + tcp_sock = gazelle_sock_get_by_min_conn(gazelle_get_tcp_sock_htable(), +- quintuple.dst_ip, quintuple.dst_port); ++ quintuple.dst_ip.u_addr.ip4.addr, quintuple.dst_port); + if (unlikely(tcp_sock == NULL)) { + return GAZELLE_ERR; + } +@@ -494,7 +494,7 @@ static void tcp_hash_table_modify(struct gazelle_stack *stack, const struct reg_ + case REG_RING_TCP_LISTEN: + /* add sock htable */ + tcp_sock = gazelle_sock_add_by_ipporttid(gazelle_get_tcp_sock_htable(), +- transfer_qtuple.dst_ip, transfer_qtuple.dst_port, msg->tid); ++ transfer_qtuple.dst_ip.u_addr.ip4.addr, transfer_qtuple.dst_port, msg->tid); + if (tcp_sock == NULL) { + LTRAN_ERR("add tcp sock htable failed\n"); + break; +@@ -506,7 +506,7 @@ static void tcp_hash_table_modify(struct gazelle_stack *stack, const struct reg_ + case REG_RING_TCP_LISTEN_CLOSE: + /* del sock htable */ + gazelle_sock_del_by_ipporttid(gazelle_get_tcp_sock_htable(), +- transfer_qtuple.dst_ip, transfer_qtuple.dst_port, msg->tid); ++ transfer_qtuple.dst_ip.u_addr.ip4.addr, transfer_qtuple.dst_port, msg->tid); + break; + case REG_RING_TCP_CONNECT: + /* add conn htable */ +diff --git a/src/ltran/ltran_stat.c b/src/ltran/ltran_stat.c +index 2a0c03a..dfd5fc9 100644 +--- a/src/ltran/ltran_stat.c ++++ b/src/ltran/ltran_stat.c +@@ -267,8 +267,8 @@ void handle_resp_ltran_conn(int32_t fd) + if (index < GAZELLE_LSTACK_MAX_CONN) { + forward_table.conn_list[index].protocol = conn->quintuple.protocol; + forward_table.conn_list[index].tid = conn->tid; +- forward_table.conn_list[index].dst_ip = conn->quintuple.dst_ip; +- forward_table.conn_list[index].src_ip = conn->quintuple.src_ip; ++ forward_table.conn_list[index].dst_ip = conn->quintuple.dst_ip.u_addr.ip4.addr; ++ forward_table.conn_list[index].src_ip = conn->quintuple.src_ip.u_addr.ip4.addr; + forward_table.conn_list[index].dst_port = ntohs(conn->quintuple.dst_port); + forward_table.conn_list[index].src_port = ntohs(conn->quintuple.src_port); + } +diff --git a/src/ltran/ltran_tcp_conn.c b/src/ltran/ltran_tcp_conn.c +index e0ad562..026d22a 100644 +--- a/src/ltran/ltran_tcp_conn.c ++++ b/src/ltran/ltran_tcp_conn.c +@@ -78,8 +78,8 @@ struct gazelle_tcp_conn_hbucket *gazelle_conn_hbucket_get(struct gazelle_tcp_con + const struct gazelle_quintuple *quintuple) + { + uint32_t index; +- index = tuple_hash_fn(quintuple->src_ip, quintuple->src_port, quintuple->dst_ip, quintuple->dst_port) % +- GAZELLE_MAX_CONN_HTABLE_SIZE; ++ index = tuple_hash_fn(quintuple->src_ip.u_addr.ip4.addr, quintuple->src_port, quintuple->dst_ip.u_addr.ip4.addr, ++ quintuple->dst_port) % GAZELLE_MAX_CONN_HTABLE_SIZE; + return &conn_htable->array[index]; + } + +diff --git a/src/ltran/ltran_tcp_sock.c b/src/ltran/ltran_tcp_sock.c +index d6a0d17..940ded8 100644 +--- a/src/ltran/ltran_tcp_sock.c ++++ b/src/ltran/ltran_tcp_sock.c +@@ -104,8 +104,8 @@ static void recover_sock_info_from_conn(struct gazelle_tcp_sock *tcp_sock) + head = &conn_htable->array[i].chain; + + hlist_for_each_entry(conn, node, head, conn_node) { +- if ((conn->quintuple.dst_ip != tcp_sock->ip) || (conn->quintuple.dst_port != tcp_sock->port) || +- (conn->tid != tcp_sock->tid)) { ++ if ((conn->quintuple.dst_ip.u_addr.ip4.addr != tcp_sock->ip) || ++ (conn->quintuple.dst_port != tcp_sock->port) || (conn->tid != tcp_sock->tid)) { + continue; + } + count++; +diff --git a/src/ltran/ltran_timer.c b/src/ltran/ltran_timer.c +index 85ea324..96c622e 100644 +--- a/src/ltran/ltran_timer.c ++++ b/src/ltran/ltran_timer.c +@@ -103,8 +103,8 @@ void gazelle_detect_conn_logout(struct gazelle_tcp_conn_htable *conn_htable) + conn_htable->array[i].chain_size--; + LTRAN_DEBUG("delete the tcp conn htable: tid %u quintuple[%u %u %u %u %u]\n", + conn->tid, conn->quintuple.protocol, +- conn->quintuple.src_ip, (uint32_t)ntohs(conn->quintuple.src_port), +- conn->quintuple.dst_ip, (uint32_t)ntohs(conn->quintuple.dst_port)); ++ conn->quintuple.src_ip.u_addr.ip4.addr, (uint32_t)ntohs(conn->quintuple.src_port), ++ conn->quintuple.dst_ip.u_addr.ip4.addr, (uint32_t)ntohs(conn->quintuple.dst_port)); + rte_free(conn); + } + } +-- +2.33.0 + diff --git a/0109-match_host_addr-func-support-ipv6.patch b/0109-match_host_addr-func-support-ipv6.patch new file mode 100644 index 0000000..0e55ed2 --- /dev/null +++ b/0109-match_host_addr-func-support-ipv6.patch @@ -0,0 +1,103 @@ +From 2489b4b21632c9016f87c6fe963d27ef3e20951b Mon Sep 17 00:00:00 2001 +From: zhengjiebing +Date: Fri, 5 Jan 2024 14:32:48 +0800 +Subject: [PATCH] match_host_addr func support ipv6 + +--- + src/lstack/api/lstack_wrap.c | 12 +++++++++++- + src/lstack/core/lstack_cfg.c | 12 +++++++++--- + src/lstack/core/lstack_control_plane.c | 2 +- + src/lstack/include/lstack_cfg.h | 2 +- + src/lstack/netif/lstack_vdev.c | 2 +- + 5 files changed, 23 insertions(+), 7 deletions(-) + +diff --git a/src/lstack/api/lstack_wrap.c b/src/lstack/api/lstack_wrap.c +index 56f89b2..3db62c7 100644 +--- a/src/lstack/api/lstack_wrap.c ++++ b/src/lstack/api/lstack_wrap.c +@@ -217,7 +217,17 @@ static int32_t do_bind(int32_t s, const struct sockaddr *name, socklen_t namelen + return g_wrap_api->bind_fn(s, name, namelen); + } + +- if (match_host_addr(((struct sockaddr_in *)name)->sin_addr.s_addr)) { ++ ip_addr_t sock_addr = IPADDR_ANY_TYPE_INIT; ++ if (name->sa_family == AF_INET) { ++ sock_addr.type = IPADDR_TYPE_V4; ++ sock_addr.u_addr.ip4.addr = ((struct sockaddr_in *)name)->sin_addr.s_addr; ++ } else if (name->sa_family == AF_INET6) { ++ sock_addr.type = IPADDR_TYPE_V6; ++ memcpy_s(sock_addr.u_addr.ip6.addr, IPV6_ADDR_LEN, ++ ((struct sockaddr_in6 *)name)->sin6_addr.s6_addr, IPV6_ADDR_LEN); ++ } ++ ++ if (match_host_addr(&sock_addr)) { + /* maybe kni addr */ + if (posix_api->bind_fn(s, name, namelen) != 0) { + SET_CONN_TYPE_LIBOS(sock->conn); +diff --git a/src/lstack/core/lstack_cfg.c b/src/lstack/core/lstack_cfg.c +index d9c23fb..c1f5680 100644 +--- a/src/lstack/core/lstack_cfg.c ++++ b/src/lstack/core/lstack_cfg.c +@@ -253,11 +253,17 @@ static int32_t parse_host_addr6(void) + return 0; + } + +-int32_t match_host_addr(uint32_t addr) ++int32_t match_host_addr(ip_addr_t *addr) + { + /* network byte order */ +- if (addr == g_config_params.host_addr.addr || addr == INADDR_ANY) { +- return 1; ++ if (IP_IS_V4_VAL(*addr)) { ++ if (ip4_addr_cmp(&addr->u_addr.ip4, &g_config_params.host_addr) || ip4_addr_isany_val(addr->u_addr.ip4)) { ++ return 1; ++ } ++ } else if (IP_IS_V6_VAL(*addr)) { ++ if (ip6_addr_cmp(&addr->u_addr.ip6, &g_config_params.host_addr6) || ip6_addr_isany_val(addr->u_addr.ip6)) { ++ return 1; ++ } + } + return 0; + } +diff --git a/src/lstack/core/lstack_control_plane.c b/src/lstack/core/lstack_control_plane.c +index 2d629c8..a9a3814 100644 +--- a/src/lstack/core/lstack_control_plane.c ++++ b/src/lstack/core/lstack_control_plane.c +@@ -366,7 +366,7 @@ static int32_t reg_conn(enum tcp_list_state table_state, enum reg_ring_type reg_ + qtuple.dst_ip = conn->conn_list[i].rip; + qtuple.dst_port = lwip_htons(conn->conn_list[i].r_port); + +- if ((table_state == LISTEN_LIST) && (!match_host_addr(qtuple.src_ip.u_addr.ip4.addr))) { ++ if ((table_state == LISTEN_LIST) && (!match_host_addr((ip_addr_t *)&qtuple.src_ip))) { + continue; + } + +diff --git a/src/lstack/include/lstack_cfg.h b/src/lstack/include/lstack_cfg.h +index 82e96d8..c1074f8 100644 +--- a/src/lstack/include/lstack_cfg.h ++++ b/src/lstack/include/lstack_cfg.h +@@ -133,7 +133,7 @@ int gazelle_param_init(int *argc, char **argv); + int gazelle_copy_param(const char *param, bool is_double, + int *argc, char argv[][PATH_MAX]); + +-int match_host_addr(uint32_t ipv4); ++int match_host_addr(ip_addr_t *addr); + int32_t init_stack_numa_cpuset(struct protocol_stack *stack); + + #endif /* GAZELLE_NET_CFG_H */ +diff --git a/src/lstack/netif/lstack_vdev.c b/src/lstack/netif/lstack_vdev.c +index 9a79dc3..c845f7a 100644 +--- a/src/lstack/netif/lstack_vdev.c ++++ b/src/lstack/netif/lstack_vdev.c +@@ -230,7 +230,7 @@ int32_t vdev_reg_xmit(enum reg_ring_type type, struct gazelle_quintuple *qtuple) + struct protocol_stack *stack = get_protocol_stack(); + + if (type == REG_RING_TCP_LISTEN || type == REG_RING_TCP_LISTEN_CLOSE) { +- if (!match_host_addr(qtuple->src_ip.u_addr.ip4.addr)) { ++ if (!match_host_addr((ip_addr_t *)&qtuple->src_ip)) { + LSTACK_LOG(INFO, LSTACK, "lstack ip not match in conf.\n"); + return 0; + } +-- +2.33.0 + diff --git a/0110-add-example-keep-alive-interval-para.patch b/0110-add-example-keep-alive-interval-para.patch new file mode 100644 index 0000000..c97ee42 --- /dev/null +++ b/0110-add-example-keep-alive-interval-para.patch @@ -0,0 +1,27 @@ +From f2770a0dd75007d152bdb346e16009227a6d55fa Mon Sep 17 00:00:00 2001 +From: hantwofish +Date: Thu, 4 Jan 2024 16:08:02 +0800 +Subject: [PATCH] add example keep-alive interval para + +--- + src/ltran/ltran_dfx.c | 4 ++-- + 8 files changed, 47 insertions(+), 8 deletions(-) + +diff --git a/src/ltran/ltran_dfx.c b/src/ltran/ltran_dfx.c +index 08c9da3..5e22e20 100644 +--- a/src/ltran/ltran_dfx.c ++++ b/src/ltran/ltran_dfx.c +@@ -1002,8 +1002,8 @@ static void gazelle_keepalive_string(char* str, int buff_len, struct gazelle_sta + if (conn_info->keepalive == 0) { + return; + } +- int ret = sprintf_s(str, buff_len, "(%u,%u,%u)", conn_info->keep_idle, conn_info->keep_intvl, +- conn_info->keep_cnt); ++ int ret = sprintf_s(str, buff_len, "(%u,%u,%u)", (conn_info->keep_idle) / 1000, ++ (conn_info->keep_intvl) / 1000, conn_info->keep_cnt); + if (ret < 0) { + printf("gazelle_keepalive_string sprintf_s fail ret=%d\n", ret); + return; +-- +2.33.0 + diff --git a/0111-update-src-common-dpdk_common.c.patch b/0111-update-src-common-dpdk_common.c.patch new file mode 100644 index 0000000..a7aa72c --- /dev/null +++ b/0111-update-src-common-dpdk_common.c.patch @@ -0,0 +1,68 @@ +From c6a7e8224dd9faff9120be8814638fe939570908 Mon Sep 17 00:00:00 2001 +From: Caohongtao +Date: Thu, 4 Jan 2024 09:34:04 +0000 +Subject: [PATCH] update src/common/dpdk_common.c. + +Signed-off-by: Caohongtao +--- + src/common/dpdk_common.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/src/common/dpdk_common.c b/src/common/dpdk_common.c +index 50f0bf0..62278c2 100644 +--- a/src/common/dpdk_common.c ++++ b/src/common/dpdk_common.c +@@ -65,13 +65,13 @@ static int32_t kni_config_network_interface(uint16_t port_id, uint8_t if_up) + g_bond_dev_started = true; + } + } else { +- COMMON_INFO("trying to start a started dev. \n"); ++ COMMON_INFO("Trying to start a started dev. \n"); + } + } else { /* Configure network interface down */ + if (g_kni_started) { + g_kni_started = false; + } else { +- COMMON_INFO("trying to stop a stopped dev. \n"); ++ COMMON_INFO("Trying to stop a stopped dev. \n"); + } + } + +@@ -154,7 +154,7 @@ void eth_params_checksum(struct rte_eth_conf *conf, struct rte_eth_dev_info *dev + conf->rxmode.offloads = rx_ol; + conf->txmode.offloads = tx_ol; + +- COMMON_INFO("set checksum offloads\n"); ++ COMMON_INFO("Set checksum offloads\n"); + } + + int32_t dpdk_kni_init(uint16_t port, struct rte_mempool *pool) +@@ -179,14 +179,14 @@ int32_t dpdk_kni_init(uint16_t port, struct rte_mempool *pool) + + ret = snprintf_s(conf.name, RTE_KNI_NAMESIZE, RTE_KNI_NAMESIZE - 1, "%s", GAZELLE_KNI_NAME); + if (ret < 0) { +- COMMON_ERR("snprintf_s failed. ret=%d\n", ret); ++ COMMON_ERR("Snprintf_s failed. ret=%d\n", ret); + return -1; + } + conf.mbuf_size = GAZELLE_MAX_PKT_SZ; + conf.group_id = port; + + if (rte_eth_dev_info_get(port, &dev_info) != 0) { +- COMMON_ERR("Fail rte_eth_dev_info_get\n"); ++ COMMON_ERR("Failed rte_eth_dev_info_get\n"); + return -1; + } + +@@ -204,7 +204,7 @@ int32_t dpdk_kni_init(uint16_t port, struct rte_mempool *pool) + ops.port_id = port; + g_pkni = rte_kni_alloc(pool, &conf, &ops); + if (g_pkni == NULL) { +- COMMON_ERR("Fail to create kni for port: %hu \n", port); ++ COMMON_ERR("Failed to create kni for port: %hu \n", port); + return -1; + } + return 0; +-- +2.33.0 + diff --git a/gazelle.spec b/gazelle.spec index cf5d913..2050c39 100644 --- a/gazelle.spec +++ b/gazelle.spec @@ -2,7 +2,7 @@ Name: gazelle Version: 1.0.2 -Release: 23 +Release: 24 Summary: gazelle is a high performance user-mode stack License: MulanPSL-2.0 URL: https://gitee.com/openeuler/gazelle @@ -121,6 +121,10 @@ Patch9104: 0104-fix-stack_setup_thread-array-range.patch Patch9105: 0105-fix-func-separate_str_to_array-overflow-problem.patch Patch9106: 0106-fix-dpdk_alloc_pktmbuf-time-consuming.patch Patch9107: 0107-ltran-optimize-config-file-error-message.patch +Patch9108: 0108-replace-with-gz_addr_t.patch +Patch9109: 0109-match_host_addr-func-support-ipv6.patch +Patch9110: 0110-add-example-keep-alive-interval-para.patch +Patch9111: 0111-update-src-common-dpdk_common.c.patch %description %{name} is a high performance user-mode stack. @@ -162,7 +166,13 @@ install -Dpm 0640 %{_builddir}/%{name}-%{version}/src/ltran/ltran.conf %{b %config(noreplace) %{conf_path}/ltran.conf %changelog -* Sat Jan 27 2024 yinbin6 - 1.0.2-23 +* Sat Jan 06 2024 yinbin6 - 1.0.2-24 +- replace with gz_addr_t +- update src/common/dpdk_common.c +- match_host_addr func support ipv6 +- add example keep-alive interval para + +* Sat Jan 06 2024 yinbin6 - 1.0.2-23 - fix dpdk_alloc_pktmbuf time-consuming - ltran: optimize config file error message