gazelle/0217-cleancode-refactor-posix-type-and-get_socket.patch
yinbin6 101431f1d0 sync cleancode: refactor sys_now and lwip_ioctl
(cherry picked from commit 70e830bfafc64b7d2764ab0b54c3f75c5db92853)
2024-08-13 10:57:54 +08:00

1048 lines
41 KiB
Diff

From dcfb07a30a3e4f8eece68d1ad8c17cb8c2a58945 Mon Sep 17 00:00:00 2001
From: Lemmy Huang <huangliming5@huawei.com>
Date: Wed, 10 Jul 2024 16:37:01 +0800
Subject: [PATCH] cleancode: refactor posix type and get_socket
Changed:
get_socket_by_fd -> lwip_get_socket
get_socket
SET_CONN_TYPE_LIBOS_OR_HOST -> POSIX_SET_TYPE
SET_CONN_TYPE_LIBOS
SET_CONN_TYPE_HOST
CONN_TYPE_IS_LIBOS -> POSIX_IS_TYPE
CONN_TYPE_IS_HOST
CONN_TYPE_HAS_LIBOS_AND_HOST -> POSIX_HAS_TYPE
CONN_TYPE_HAS_LIBOS
CONN_TYPE_HAS_HOST
Signed-off-by: Lemmy Huang <huangliming5@huawei.com>
---
src/lstack/api/lstack_epoll.c | 34 ++++----
src/lstack/api/lstack_rtc_api.c | 6 +-
src/lstack/api/lstack_rtw_api.c | 14 ++--
src/lstack/api/lstack_wrap.c | 104 ++++++++++++------------
src/lstack/core/lstack_lwip.c | 22 ++---
src/lstack/core/lstack_preload.c | 44 +++++-----
src/lstack/core/lstack_protocol_stack.c | 40 ++++-----
src/lstack/core/lstack_stack_stat.c | 2 +-
src/lstack/core/lstack_thread_rpc.c | 4 +-
src/lstack/include/lstack_preload.h | 10 +--
10 files changed, 137 insertions(+), 143 deletions(-)
diff --git a/src/lstack/api/lstack_epoll.c b/src/lstack/api/lstack_epoll.c
index 7d00de7..8146b4f 100644
--- a/src/lstack/api/lstack_epoll.c
+++ b/src/lstack/api/lstack_epoll.c
@@ -164,7 +164,7 @@ static uint32_t update_events(struct lwip_sock *sock)
if ((sock->epoll_events & EPOLLOUT) && NETCONN_IS_OUTIDLE(sock)) {
/* lwip_netconn_do_connected set LIBOS FLAGS when connected */
- if (sock->conn && CONN_TYPE_IS_LIBOS(sock->conn)) {
+ if (sock->conn && POSIX_IS_TYPE(sock, POSIX_LWIP)) {
event |= EPOLLOUT;
}
}
@@ -190,7 +190,7 @@ static void rtc_raise_pending_events(struct wakeup_poll *wakeup, struct lwip_soc
if (sock->sendevent) {
/* lwip_netconn_do_connected set LIBOS FLAGS when connected */
- if (sock->conn && CONN_TYPE_IS_LIBOS(sock->conn)) {
+ if (sock->conn && POSIX_IS_TYPE(sock, POSIX_LWIP)) {
event |= EPOLLOUT;
}
}
@@ -219,7 +219,7 @@ static void raise_pending_events(struct wakeup_poll *wakeup, struct lwip_sock *s
pthread_spin_lock(&wakeup->event_list_lock);
if (NETCONN_IS_OUTIDLE(sock)) {
/* lwip_netconn_do_connected set LIBOS FLAGS when connected */
- if (sock->conn && CONN_TYPE_IS_LIBOS(sock->conn)) {
+ if (sock->conn && POSIX_IS_TYPE(sock, POSIX_LWIP)) {
event |= EPOLLOUT;
}
}
@@ -240,7 +240,7 @@ int32_t lstack_do_epoll_create(int32_t fd)
return fd;
}
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock == NULL) {
LSTACK_LOG(ERR, LSTACK, "fd=%d sock is NULL errno=%d\n", fd, errno);
posix_api->close_fn(fd);
@@ -307,7 +307,7 @@ int32_t lstack_epoll_create(int32_t flags)
int32_t lstack_epoll_close(int32_t fd)
{
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock == NULL) {
LSTACK_LOG(ERR, LSTACK, "fd=%d sock is NULL errno=%d\n", fd, errno);
GAZELLE_RETURN(EINVAL);
@@ -391,14 +391,14 @@ int32_t lstack_rtc_epoll_ctl(int32_t epfd, int32_t op, int32_t fd, struct epoll_
GAZELLE_RETURN(EINVAL);
}
- struct lwip_sock *epoll_sock = get_socket_by_fd(epfd);
+ struct lwip_sock *epoll_sock = lwip_get_socket(epfd);
if (epoll_sock == NULL || epoll_sock->wakeup == NULL) {
return posix_api->epoll_ctl_fn(epfd, op, fd, event);
}
struct wakeup_poll *wakeup = epoll_sock->wakeup;
- struct lwip_sock *sock = get_socket(fd);
- if (sock == NULL) {
+ struct lwip_sock *sock = lwip_get_socket(fd);
+ if (sock == NULL || sock->conn == NULL) {
return posix_api->epoll_ctl_fn(epfd, op, fd, event);
}
@@ -431,18 +431,18 @@ int32_t lstack_rtw_epoll_ctl(int32_t epfd, int32_t op, int32_t fd, struct epoll_
GAZELLE_RETURN(EINVAL);
}
- struct lwip_sock *epoll_sock = get_socket_by_fd(epfd);
+ struct lwip_sock *epoll_sock = lwip_get_socket(epfd);
if (epoll_sock == NULL || epoll_sock->wakeup == NULL) {
return posix_api->epoll_ctl_fn(epfd, op, fd, event);
}
struct wakeup_poll *wakeup = epoll_sock->wakeup;
- struct lwip_sock *sock = get_socket(fd);
- if (sock == NULL) {
+ struct lwip_sock *sock = lwip_get_socket(fd);
+ if (sock == NULL || sock->conn == NULL) {
return posix_api->epoll_ctl_fn(epfd, op, fd, event);
}
- if (CONN_TYPE_HAS_HOST(sock->conn)) {
+ if (POSIX_HAS_TYPE(sock, POSIX_KERNEL)) {
int32_t ret = posix_api->epoll_ctl_fn(epfd, op, fd, event);
if (ret < 0) {
LSTACK_LOG(ERR, LSTACK, "fd=%d epfd=%d op=%d errno=%d\n", fd, epfd, op, errno);
@@ -535,7 +535,7 @@ static int32_t poll_lwip_event(struct pollfd *fds, nfds_t nfds)
for (uint32_t i = 0; i < nfds; i++) {
/* sock->listen_next pointerto next stack listen */
int32_t fd = fds[i].fd;
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
while (sock && sock->conn) {
uint32_t events = update_events(sock);
if (events) {
@@ -624,7 +624,7 @@ int32_t lstack_block_wait(struct wakeup_poll *wakeup, int32_t timeout)
int32_t lstack_rtc_epoll_wait(int32_t epfd, struct epoll_event* events, int32_t maxevents, int32_t timeout)
{
- struct lwip_sock *sock = get_socket_by_fd(epfd);
+ struct lwip_sock *sock = lwip_get_socket(epfd);
if (sock == NULL || sock->wakeup == NULL) {
return posix_api->epoll_wait_fn(epfd, events, maxevents, timeout);
@@ -673,7 +673,7 @@ int32_t lstack_rtc_epoll_wait(int32_t epfd, struct epoll_event* events, int32_t
int32_t lstack_rtw_epoll_wait(int32_t epfd, struct epoll_event* events, int32_t maxevents, int32_t timeout)
{
- struct lwip_sock *sock = get_socket_by_fd(epfd);
+ struct lwip_sock *sock = lwip_get_socket(epfd);
if (sock == NULL || sock->wakeup == NULL) {
return posix_api->epoll_wait_fn(epfd, events, maxevents, timeout);
}
@@ -829,7 +829,7 @@ static void poll_init(struct wakeup_poll *wakeup, struct pollfd *fds, nfds_t nfd
for (uint32_t i = 0; i < nfds; i++) {
int32_t fd = fds[i].fd;
fds[i].revents = 0;
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (fd == wakeup->last_fds[i].fd && fds[i].events == wakeup->last_fds[i].events) {
/* fd close then socket may get same fd. */
@@ -838,7 +838,7 @@ static void poll_init(struct wakeup_poll *wakeup, struct pollfd *fds, nfds_t nfd
}
}
- if (sock == NULL || sock->conn == NULL || CONN_TYPE_HAS_HOST(sock->conn)) {
+ if (sock == NULL || sock->conn == NULL || POSIX_HAS_TYPE(sock, POSIX_KERNEL)) {
update_kernel_poll(wakeup, i, fds + i);
}
diff --git a/src/lstack/api/lstack_rtc_api.c b/src/lstack/api/lstack_rtc_api.c
index 57ff89f..97623b3 100644
--- a/src/lstack/api/lstack_rtc_api.c
+++ b/src/lstack/api/lstack_rtc_api.c
@@ -50,8 +50,8 @@ int rtc_socket(int domain, int type, int protocol)
/* need call stack thread init function */
ret = lwip_socket(domain, type, protocol);
- struct lwip_sock *sock = get_socket(ret);
- if (sock != NULL) {
+ if (ret >= 0) {
+ struct lwip_sock *sock = lwip_get_socket(ret);
sock->stack = get_protocol_stack();
sock->epoll_events = 0;
sock->events = 0;
@@ -63,7 +63,7 @@ int rtc_socket(int domain, int type, int protocol)
int rtc_close(int s)
{
- struct lwip_sock *sock = get_socket(s);
+ struct lwip_sock *sock = lwip_get_socket(s);
if (sock != NULL && sock->wakeup != NULL && sock->wakeup->epollfd == s) {
return lstack_epoll_close(s);
}
diff --git a/src/lstack/api/lstack_rtw_api.c b/src/lstack/api/lstack_rtw_api.c
index 0f23ffd..f59b0cd 100644
--- a/src/lstack/api/lstack_rtw_api.c
+++ b/src/lstack/api/lstack_rtw_api.c
@@ -47,7 +47,7 @@ int rtw_accept4(int s, struct sockaddr *addr, socklen_t *addrlen, int flags)
int rtw_bind(int s, const struct sockaddr *name, socklen_t namelen)
{
- struct lwip_sock *sock = get_socket_by_fd(s);
+ struct lwip_sock *sock = lwip_get_socket(s);
if (NETCONN_IS_UDP(sock) && get_global_cfg_params()->listen_shadow) {
return stack_broadcast_bind(s, name, namelen);
@@ -137,7 +137,7 @@ ssize_t rtw_write(int s, const void *mem, size_t size)
ssize_t rtw_writev(int s, const struct iovec *iov, int iovcnt)
{
- struct lwip_sock *sock = get_socket_by_fd(s);
+ struct lwip_sock *sock = lwip_get_socket(s);
struct msghdr msg;
msg.msg_name = NULL;
@@ -167,14 +167,14 @@ ssize_t rtw_recvmsg(int s, const struct msghdr *message, int flags)
ssize_t rtw_sendmsg(int s, const struct msghdr *message, int flags)
{
- struct lwip_sock *sock = get_socket_by_fd(s);
+ struct lwip_sock *sock = lwip_get_socket(s);
return do_lwip_sendmsg_to_stack(sock, s, message, flags);
}
static ssize_t rtw_udp_recvfrom(int sockfd, void *buf, size_t len, int flags,
struct sockaddr *addr, socklen_t *addrlen)
{
- struct lwip_sock *sock = get_socket_by_fd(sockfd);
+ struct lwip_sock *sock = lwip_get_socket(sockfd);
int ret;
while (1) {
@@ -210,7 +210,7 @@ static inline ssize_t rtw_tcp_recvfrom(int sockfd, void *buf, size_t len, int fl
ssize_t rtw_recvfrom(int sockfd, void *buf, size_t len, int flags,
struct sockaddr *addr, socklen_t *addrlen)
{
- struct lwip_sock *sock = get_socket_by_fd(sockfd);
+ struct lwip_sock *sock = lwip_get_socket(sockfd);
if (NETCONN_IS_UDP(sock)) {
return rtw_udp_recvfrom(sockfd, buf, len, flags, addr, addrlen);
} else {
@@ -241,7 +241,7 @@ int rtw_select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, s
int rtw_close(int s)
{
- struct lwip_sock *sock = get_socket(s);
+ struct lwip_sock *sock = lwip_get_socket(s);
if (sock && sock->wakeup && sock->wakeup->epollfd == s) {
return lstack_epoll_close(s);
}
@@ -250,7 +250,7 @@ int rtw_close(int s)
int rtw_shutdown(int fd, int how)
{
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock && sock->wakeup && sock->wakeup->epollfd == fd) {
GAZELLE_RETURN(ENOTSOCK);
}
diff --git a/src/lstack/api/lstack_wrap.c b/src/lstack/api/lstack_wrap.c
index 16fc876..d3e1027 100644
--- a/src/lstack/api/lstack_wrap.c
+++ b/src/lstack/api/lstack_wrap.c
@@ -125,7 +125,7 @@ void wrap_api_set_dummy(void)
static inline int32_t do_epoll_create1(int32_t flags)
{
- if (select_posix_path() == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL) {
return posix_api->epoll_create1_fn(flags);
}
@@ -134,7 +134,7 @@ static inline int32_t do_epoll_create1(int32_t flags)
static inline int32_t do_epoll_create(int32_t size)
{
- if (select_posix_path() == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL) {
return posix_api->epoll_create_fn(size);
}
@@ -143,7 +143,7 @@ static inline int32_t do_epoll_create(int32_t size)
static inline int32_t do_epoll_ctl(int32_t epfd, int32_t op, int32_t fd, struct epoll_event* event)
{
- if (select_posix_path() == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL) {
return posix_api->epoll_ctl_fn(epfd, op, fd, event);
}
@@ -152,7 +152,7 @@ static inline int32_t do_epoll_ctl(int32_t epfd, int32_t op, int32_t fd, struct
static inline int32_t do_epoll_wait(int32_t epfd, struct epoll_event* events, int32_t maxevents, int32_t timeout)
{
- if (select_posix_path() == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL) {
return posix_api->epoll_wait_fn(epfd, events, maxevents, timeout);
}
@@ -169,14 +169,14 @@ static inline int32_t do_epoll_wait(int32_t epfd, struct epoll_event* events, in
static inline int32_t do_accept(int32_t s, struct sockaddr *addr, socklen_t *addrlen)
{
- if (select_fd_posix_path(s, NULL) == PATH_KERNEL) {
+ if (select_fd_posix_path(s, NULL) == POSIX_KERNEL) {
return posix_api->accept_fn(s, addr, addrlen);
}
int32_t fd = g_wrap_api->accept_fn(s, addr, addrlen);
if (fd >= 0) {
- struct lwip_sock *sock = get_socket(fd);
- SET_CONN_TYPE_LIBOS(sock->conn);
+ struct lwip_sock *sock = lwip_get_socket(fd);
+ POSIX_SET_TYPE(sock, POSIX_LWIP);
return fd;
}
@@ -189,14 +189,14 @@ static int32_t do_accept4(int32_t s, struct sockaddr *addr, socklen_t *addrlen,
GAZELLE_RETURN(EINVAL);
}
- if (select_fd_posix_path(s, NULL) == PATH_KERNEL) {
+ if (select_fd_posix_path(s, NULL) == POSIX_KERNEL) {
return posix_api->accept4_fn(s, addr, addrlen, flags);
}
int32_t fd = g_wrap_api->accept4_fn(s, addr, addrlen, flags);
if (fd >= 0) {
- struct lwip_sock *sock = get_socket(fd);
- SET_CONN_TYPE_LIBOS(sock->conn);
+ struct lwip_sock *sock = lwip_get_socket(fd);
+ POSIX_SET_TYPE(sock, POSIX_LWIP);
return fd;
}
@@ -210,13 +210,13 @@ static int32_t do_bind(int32_t s, const struct sockaddr *name, socklen_t namelen
}
struct lwip_sock *sock = NULL;
- if (select_fd_posix_path(s, &sock) == PATH_KERNEL) {
+ if (select_fd_posix_path(s, &sock) == POSIX_KERNEL) {
return posix_api->bind_fn(s, name, namelen);
}
/* select user path when udp enable and ip addr is multicast */
if (IN_MULTICAST(ntohl(((struct sockaddr_in *)name)->sin_addr.s_addr))) {
- SET_CONN_TYPE_LIBOS(sock->conn);
+ POSIX_SET_TYPE(sock, POSIX_LWIP);
return g_wrap_api->bind_fn(s, name, namelen);
}
@@ -233,7 +233,7 @@ static int32_t do_bind(int32_t s, const struct sockaddr *name, socklen_t namelen
if (match_host_addr(&sock_addr)) {
/* maybe kni addr */
if (posix_api->bind_fn(s, name, namelen) != 0) {
- SET_CONN_TYPE_LIBOS(sock->conn);
+ POSIX_SET_TYPE(sock, POSIX_LWIP);
} else {
/* reuse the port allocated by kernel when port == 0 */
if (((struct sockaddr_in *)name)->sin_port == 0) {
@@ -248,7 +248,7 @@ static int32_t do_bind(int32_t s, const struct sockaddr *name, socklen_t namelen
}
return g_wrap_api->bind_fn(s, name, namelen);
} else {
- SET_CONN_TYPE_HOST(sock->conn);
+ POSIX_SET_TYPE(sock, POSIX_KERNEL);
return posix_api->bind_fn(s, name, namelen);
}
}
@@ -303,11 +303,11 @@ static int32_t do_connect(int32_t s, const struct sockaddr *name, socklen_t name
}
struct lwip_sock *sock = NULL;
- if (select_fd_posix_path(s, &sock) == PATH_KERNEL) {
+ if (select_fd_posix_path(s, &sock) == POSIX_KERNEL) {
return posix_api->connect_fn(s, name, namelen);
}
- sock = get_socket(s);
+ sock = lwip_get_socket(s);
if (sock == NULL) {
return posix_api->connect_fn(s, name, namelen);
}
@@ -323,10 +323,10 @@ static int32_t do_connect(int32_t s, const struct sockaddr *name, socklen_t name
"listen_rx_ring_%d", remote_port);
if (is_local && rte_ring_lookup(listen_ring_name) == NULL) {
ret = posix_api->connect_fn(s, name, namelen);
- SET_CONN_TYPE_HOST(sock->conn);
+ POSIX_SET_TYPE(sock, POSIX_KERNEL);
} else {
ret = g_wrap_api->connect_fn(s, name, namelen);
- SET_CONN_TYPE_LIBOS(sock->conn);
+ POSIX_SET_TYPE(sock, POSIX_LWIP);
}
return ret;
@@ -334,7 +334,7 @@ static int32_t do_connect(int32_t s, const struct sockaddr *name, socklen_t name
static inline int32_t do_listen(int32_t s, int32_t backlog)
{
- if (select_fd_posix_path(s, NULL) == PATH_KERNEL) {
+ if (select_fd_posix_path(s, NULL) == POSIX_KERNEL) {
return posix_api->listen_fn(s, backlog);
}
@@ -352,7 +352,7 @@ static inline int32_t do_getpeername(int32_t s, struct sockaddr *name, socklen_t
GAZELLE_RETURN(EINVAL);
}
- if (select_fd_posix_path(s, NULL) == PATH_LWIP) {
+ if (select_fd_posix_path(s, NULL) == POSIX_LWIP) {
return g_wrap_api->getpeername_fn(s, name, namelen);
}
@@ -365,7 +365,7 @@ static inline int32_t do_getsockname(int32_t s, struct sockaddr *name, socklen_t
GAZELLE_RETURN(EINVAL);
}
- if (select_fd_posix_path(s, NULL) == PATH_LWIP) {
+ if (select_fd_posix_path(s, NULL) == POSIX_LWIP) {
return g_wrap_api->getsockname_fn(s, name, namelen);
}
@@ -422,7 +422,7 @@ static bool unsupport_optname(int32_t level, int32_t optname)
static inline int32_t do_getsockopt(int32_t s, int32_t level, int32_t optname, void *optval, socklen_t *optlen)
{
- if (select_fd_posix_path(s, NULL) == PATH_LWIP && !unsupport_optname(level, optname)) {
+ if (select_fd_posix_path(s, NULL) == POSIX_LWIP && !unsupport_optname(level, optname)) {
return g_wrap_api->getsockopt_fn(s, level, optname, optval, optlen);
}
@@ -431,7 +431,7 @@ static inline int32_t do_getsockopt(int32_t s, int32_t level, int32_t optname, v
static inline int32_t do_setsockopt(int32_t s, int32_t level, int32_t optname, const void *optval, socklen_t optlen)
{
- if (select_fd_posix_path(s, NULL) == PATH_KERNEL || unsupport_optname(level, optname)) {
+ if (select_fd_posix_path(s, NULL) == POSIX_KERNEL || unsupport_optname(level, optname)) {
return posix_api->setsockopt_fn(s, level, optname, optval, optlen);
}
@@ -445,7 +445,7 @@ static inline int32_t do_socket(int32_t domain, int32_t type, int32_t protocol)
{
int32_t ret;
/* process not init completed or not hajacking thread */
- if (select_posix_path() == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL) {
return posix_api->socket_fn(domain, type, protocol);
}
@@ -457,11 +457,11 @@ static inline int32_t do_socket(int32_t domain, int32_t type, int32_t protocol)
ret = g_wrap_api->socket_fn(domain, type, protocol);
if (ret >= 0) {
- struct lwip_sock *sock = get_socket(ret);
- SET_CONN_TYPE_LIBOS_OR_HOST(sock->conn);
+ struct lwip_sock *sock = lwip_get_socket(ret);
+ POSIX_SET_TYPE(sock, POSIX_LWIP | POSIX_KERNEL);
/* if udp_enable = 1 in lstack.conf, udp protocol must be in user path currently */
if (type & SOCK_DGRAM) {
- SET_CONN_TYPE_LIBOS(sock->conn);
+ POSIX_SET_TYPE(sock, POSIX_LWIP);
}
}
@@ -478,8 +478,8 @@ static inline ssize_t do_recv(int32_t sockfd, void *buf, size_t len, int32_t fla
return 0;
}
- if (select_posix_path() == PATH_KERNEL || // maybe fd is created by open before posix_api_init called
- select_fd_posix_path(sockfd, NULL) == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL || // maybe fd is created by open before posix_api_init called
+ select_fd_posix_path(sockfd, NULL) == POSIX_KERNEL) {
return posix_api->recv_fn(sockfd, buf, len, flags);
}
@@ -496,8 +496,8 @@ static inline ssize_t do_read(int32_t s, void *mem, size_t len)
return 0;
}
- if (select_posix_path() == PATH_KERNEL ||
- select_fd_posix_path(s, NULL) == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL ||
+ select_fd_posix_path(s, NULL) == POSIX_KERNEL) {
return posix_api->read_fn(s, mem, len);
}
@@ -506,8 +506,8 @@ static inline ssize_t do_read(int32_t s, void *mem, size_t len)
static inline ssize_t do_readv(int32_t s, const struct iovec *iov, int iovcnt)
{
- if (select_posix_path() == PATH_KERNEL ||
- select_fd_posix_path(s, NULL) == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL ||
+ select_fd_posix_path(s, NULL) == POSIX_KERNEL) {
return posix_api->readv_fn(s, iov, iovcnt);
}
@@ -516,8 +516,8 @@ static inline ssize_t do_readv(int32_t s, const struct iovec *iov, int iovcnt)
static inline ssize_t do_send(int32_t sockfd, const void *buf, size_t len, int32_t flags)
{
- if (select_posix_path() == PATH_KERNEL ||
- select_fd_posix_path(sockfd, NULL) == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL ||
+ select_fd_posix_path(sockfd, NULL) == POSIX_KERNEL) {
return posix_api->send_fn(sockfd, buf, len, flags);
}
@@ -526,8 +526,8 @@ static inline ssize_t do_send(int32_t sockfd, const void *buf, size_t len, int32
static inline ssize_t do_write(int32_t s, const void *mem, size_t size)
{
- if (select_posix_path() == PATH_KERNEL ||
- select_fd_posix_path(s, NULL) == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL ||
+ select_fd_posix_path(s, NULL) == POSIX_KERNEL) {
return posix_api->write_fn(s, mem, size);
}
@@ -537,8 +537,8 @@ static inline ssize_t do_write(int32_t s, const void *mem, size_t size)
static inline ssize_t do_writev(int32_t s, const struct iovec *iov, int iovcnt)
{
struct lwip_sock *sock;
- if (select_posix_path() == PATH_KERNEL ||
- select_fd_posix_path(s, &sock) == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL ||
+ select_fd_posix_path(s, &sock) == POSIX_KERNEL) {
return posix_api->writev_fn(s, iov, iovcnt);
}
@@ -551,8 +551,8 @@ static inline ssize_t do_recvmsg(int32_t s, struct msghdr *message, int32_t flag
GAZELLE_RETURN(EINVAL);
}
- if (select_posix_path() == PATH_KERNEL ||
- select_fd_posix_path(s, NULL) == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL ||
+ select_fd_posix_path(s, NULL) == POSIX_KERNEL) {
return posix_api->recv_msg(s, message, flags);
}
@@ -566,8 +566,8 @@ static inline ssize_t do_sendmsg(int32_t s, const struct msghdr *message, int32_
}
struct lwip_sock *sock;
- if (select_posix_path() == PATH_KERNEL ||
- select_fd_posix_path(s, &sock) == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL ||
+ select_fd_posix_path(s, &sock) == POSIX_KERNEL) {
return posix_api->send_msg(s, message, flags);
}
@@ -586,7 +586,7 @@ static inline ssize_t do_recvfrom(int32_t sockfd, void *buf, size_t len, int32_t
}
struct lwip_sock *sock = NULL;
- if (select_fd_posix_path(sockfd, &sock) == PATH_LWIP) {
+ if (select_fd_posix_path(sockfd, &sock) == POSIX_LWIP) {
return g_wrap_api->recv_from(sockfd, buf, len, flags, addr, addrlen);
}
@@ -597,7 +597,7 @@ static inline ssize_t do_sendto(int32_t sockfd, const void *buf, size_t len, int
const struct sockaddr *addr, socklen_t addrlen)
{
struct lwip_sock *sock = NULL;
- if (select_fd_posix_path(sockfd, &sock) != PATH_LWIP) {
+ if (select_fd_posix_path(sockfd, &sock) != POSIX_LWIP) {
return posix_api->send_to(sockfd, buf, len, flags, addr, addrlen);
}
@@ -607,8 +607,8 @@ static inline ssize_t do_sendto(int32_t sockfd, const void *buf, size_t len, int
static inline int32_t do_close(int32_t s)
{
struct lwip_sock *sock = NULL;
- if (select_posix_path() == PATH_KERNEL ||
- select_fd_posix_path(s, &sock) == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL ||
+ select_fd_posix_path(s, &sock) == POSIX_KERNEL) {
/* we called lwip_socket, even if kernel fd */
if (posix_api != NULL && !posix_api->ues_posix &&
/* contain posix_api->close_fn if success */
@@ -624,7 +624,7 @@ static inline int32_t do_close(int32_t s)
static int32_t do_shutdown(int fd, int how)
{
struct lwip_sock *sock = NULL;
- if (select_posix_path() == PATH_KERNEL || select_fd_posix_path(fd, &sock) == PATH_KERNEL) {
+ if (select_posix_path() == POSIX_KERNEL || select_fd_posix_path(fd, &sock) == POSIX_KERNEL) {
if (posix_api != NULL && !posix_api->ues_posix && g_wrap_api->shutdown_fn(fd, how) == 0) {
return 0;
} else {
@@ -637,7 +637,7 @@ static int32_t do_shutdown(int fd, int how)
static int32_t do_poll(struct pollfd *fds, nfds_t nfds, int32_t timeout)
{
- if ((select_posix_path() == PATH_KERNEL) || fds == NULL || nfds == 0) {
+ if ((select_posix_path() == POSIX_KERNEL) || fds == NULL || nfds == 0) {
return posix_api->poll_fn(fds, nfds, timeout);
}
@@ -676,7 +676,7 @@ static int32_t do_sigaction(int32_t signum, const struct sigaction *act, struct
static int32_t do_select(int32_t nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout)
{
- if ((select_posix_path() == PATH_KERNEL) || !(readfds || writefds || exceptfds) || nfds == 0) {
+ if ((select_posix_path() == POSIX_KERNEL) || !(readfds || writefds || exceptfds) || nfds == 0) {
return posix_api->select_fn(nfds, readfds, writefds, exceptfds, timeout);
}
@@ -691,8 +691,8 @@ static int32_t do_select(int32_t nfds, fd_set *readfds, fd_set *writefds, fd_set
val = va_arg(ap, typeof(val)); \
va_end(ap); \
struct lwip_sock *sock = NULL; \
- if (select_posix_path() == PATH_KERNEL || \
- select_fd_posix_path(_fd, &sock) == PATH_KERNEL) \
+ if (select_posix_path() == POSIX_KERNEL || \
+ select_fd_posix_path(_fd, &sock) == POSIX_KERNEL) \
return _fcntl_fn(_fd, _cmd, val); \
int32_t ret1 = _fcntl_fn(_fd, _cmd, val); \
if (ret1 == -1) { \
diff --git a/src/lstack/core/lstack_lwip.c b/src/lstack/core/lstack_lwip.c
index 6fe4055..84ef782 100644
--- a/src/lstack/core/lstack_lwip.c
+++ b/src/lstack/core/lstack_lwip.c
@@ -147,7 +147,7 @@ static bool replenish_send_idlembuf(struct protocol_stack *stack, struct lwip_so
int do_lwip_init_sock(int32_t fd)
{
struct protocol_stack *stack = get_protocol_stack();
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock == NULL) {
return -1;
}
@@ -179,7 +179,7 @@ int do_lwip_init_sock(int32_t fd)
void do_lwip_clean_sock(int fd)
{
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock == NULL || sock->stack == NULL) {
return;
}
@@ -819,7 +819,7 @@ ssize_t do_lwip_send_to_stack(int32_t fd, const void *buf, size_t len, int32_t f
GAZELLE_RETURN(EINVAL);
}
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (len == 0 && !NETCONN_IS_UDP(sock)) {
return 0;
}
@@ -1059,7 +1059,7 @@ ssize_t do_lwip_read_from_stack(int32_t fd, void *buf, size_t len, int32_t flags
struct sockaddr *addr, socklen_t *addrlen)
{
ssize_t recvd = 0;
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
bool noblock = (flags & MSG_DONTWAIT) || netconn_is_nonblocking(sock->conn);
if (recv_break_for_err(sock)) {
@@ -1095,7 +1095,7 @@ ssize_t do_lwip_read_from_stack(int32_t fd, void *buf, size_t len, int32_t flags
void do_lwip_add_recvlist(int32_t fd)
{
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock && sock->stack && list_is_null(&sock->recv_list)) {
list_add_node(&sock->stack->recv_list, &sock->recv_list);
@@ -1166,7 +1166,7 @@ void do_lwip_connected_callback(struct netconn *conn)
}
int32_t fd = conn->callback_arg.socket;
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock == NULL || sock->conn == NULL) {
return;
}
@@ -1177,7 +1177,7 @@ void do_lwip_connected_callback(struct netconn *conn)
posix_api->shutdown_fn(fd, SHUT_RDWR);
- SET_CONN_TYPE_LIBOS(conn);
+ POSIX_SET_TYPE(sock, POSIX_LWIP);
add_sock_event(sock, EPOLLOUT);
}
@@ -1207,8 +1207,8 @@ static void copy_pcb_to_conn(struct gazelle_stat_lstack_conn_info *conn, const s
if (netconn != NULL) {
conn->fd = netconn->callback_arg.socket;
conn->recv_cnt = (netconn->recvmbox == NULL) ? 0 : rte_ring_count(netconn->recvmbox->ring);
- struct lwip_sock *sock = get_socket(netconn->callback_arg.socket);
- if (sock != NULL) {
+ struct lwip_sock *sock = lwip_get_socket(netconn->callback_arg.socket);
+ if (sock != NULL && sock->conn != NULL) {
conn->recv_ring_cnt = (sock->recv_ring == NULL) ? 0 : gazelle_ring_readable_count(sock->recv_ring);
conn->recv_ring_cnt += (sock->recv_lastdata) ? 1 : 0;
conn->send_ring_cnt = (sock->send_ring == NULL) ? 0 : gazelle_ring_readover_count(sock->send_ring);
@@ -1473,7 +1473,7 @@ err_t same_node_ring_create(struct rte_ring **ring, int size, int port, char *na
static void init_same_node_ring(struct tcp_pcb *pcb)
{
struct netconn *netconn = (struct netconn *)pcb->callback_arg;
- struct lwip_sock *sock = get_socket(netconn->callback_arg.socket);
+ struct lwip_sock *sock = lwip_get_socket(netconn->callback_arg.socket);
pcb->client_rx_ring = NULL;
pcb->client_tx_ring = NULL;
@@ -1488,7 +1488,7 @@ static void init_same_node_ring(struct tcp_pcb *pcb)
err_t create_same_node_ring(struct tcp_pcb *pcb)
{
struct netconn *netconn = (struct netconn *)pcb->callback_arg;
- struct lwip_sock *sock = get_socket(netconn->callback_arg.socket);
+ struct lwip_sock *sock = lwip_get_socket(netconn->callback_arg.socket);
if (same_node_ring_create(&pcb->client_rx_ring, CLIENT_RING_SIZE, pcb->local_port, "client", "rx") != 0) {
goto END;
diff --git a/src/lstack/core/lstack_preload.c b/src/lstack/core/lstack_preload.c
index 0974e9e..8cf4657 100644
--- a/src/lstack/core/lstack_preload.c
+++ b/src/lstack/core/lstack_preload.c
@@ -30,7 +30,7 @@
#define EXCLUDE_THRD_CNT 1
const static char *g_exclude_thread[EXCLUDE_THRD_CNT] = {"eal-intr-thread"};
-static PER_THREAD enum KERNEL_LWIP_PATH g_preload_thrdpath = PATH_UNKNOW;
+static PER_THREAD enum posix_type g_preload_thrdpath = POSIX_ALL;
struct lstack_preload {
int32_t preload_switch;
@@ -79,27 +79,27 @@ static void preload_get_thrdname(void)
LSTACK_PRE_LOG(LSTACK_INFO, "thread name=%s ok\n", g_preload_info.env_thrdname);
}
-enum KERNEL_LWIP_PATH select_fd_posix_path(int32_t fd, struct lwip_sock **socket)
+enum posix_type select_fd_posix_path(int32_t fd, struct lwip_sock **socket)
{
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
/* AF_UNIX case */
- if (!sock || !sock->conn || CONN_TYPE_IS_HOST(sock->conn)) {
- return PATH_KERNEL;
+ if (!sock || !sock->conn || POSIX_IS_TYPE(sock, POSIX_KERNEL)) {
+ return POSIX_KERNEL;
}
if (socket) {
*socket = sock;
}
- if (likely(CONN_TYPE_IS_LIBOS(sock->conn))) {
- return PATH_LWIP;
+ if (likely(POSIX_IS_TYPE(sock, POSIX_LWIP))) {
+ return POSIX_LWIP;
}
- return PATH_UNKNOW;
+ return POSIX_ALL;
}
-enum KERNEL_LWIP_PATH select_posix_path(void)
+enum posix_type select_posix_path(void)
{
if (unlikely(posix_api == NULL)) {
/*
@@ -109,14 +109,14 @@ enum KERNEL_LWIP_PATH select_posix_path(void)
if (posix_api_init() != 0) {
LSTACK_PRE_LOG(LSTACK_ERR, "posix_api_init failed\n");
}
- return PATH_KERNEL;
+ return POSIX_KERNEL;
}
if (unlikely(posix_api->ues_posix)) {
- return PATH_KERNEL;
+ return POSIX_KERNEL;
}
- if (g_preload_thrdpath != PATH_UNKNOW) {
+ if (g_preload_thrdpath != POSIX_ALL) {
return g_preload_thrdpath;
}
@@ -126,31 +126,31 @@ enum KERNEL_LWIP_PATH select_posix_path(void)
char thread_name[PATH_MAX] = {0};
if (pthread_getname_np(pthread_self(), thread_name, PATH_MAX) != 0) {
- g_preload_thrdpath = PATH_KERNEL;
- return PATH_KERNEL;
+ g_preload_thrdpath = POSIX_KERNEL;
+ return POSIX_KERNEL;
}
/* exclude dpdk thread */
for (int i = 0; i < EXCLUDE_THRD_CNT; i++) {
if (strstr(thread_name, g_exclude_thread[i]) != NULL) {
- g_preload_thrdpath = PATH_KERNEL;
- return PATH_KERNEL;
+ g_preload_thrdpath = POSIX_KERNEL;
+ return POSIX_KERNEL;
}
}
/* not set GAZELLE_THREAD_NAME, select all thread */
if (g_preload_info.env_thrdname[0] == '\0') {
- g_preload_thrdpath = PATH_LWIP;
- return PATH_LWIP;
+ g_preload_thrdpath = POSIX_LWIP;
+ return POSIX_LWIP;
}
if (strstr(thread_name, g_preload_info.env_thrdname) == NULL) {
- g_preload_thrdpath = PATH_KERNEL;
- return PATH_KERNEL;
+ g_preload_thrdpath = POSIX_KERNEL;
+ return POSIX_KERNEL;
}
- g_preload_thrdpath = PATH_LWIP;
- return PATH_LWIP;
+ g_preload_thrdpath = POSIX_LWIP;
+ return POSIX_LWIP;
}
int preload_info_init(void)
diff --git a/src/lstack/core/lstack_protocol_stack.c b/src/lstack/core/lstack_protocol_stack.c
index c6075d5..d17cb67 100644
--- a/src/lstack/core/lstack_protocol_stack.c
+++ b/src/lstack/core/lstack_protocol_stack.c
@@ -126,8 +126,8 @@ struct protocol_stack *get_protocol_stack(void)
struct protocol_stack *get_protocol_stack_by_fd(int32_t fd)
{
- struct lwip_sock *sock = get_socket(fd);
- if (sock == NULL) {
+ struct lwip_sock *sock = lwip_get_socket(fd);
+ if (sock == NULL || sock->conn == NULL) {
return NULL;
}
@@ -719,7 +719,7 @@ void stack_close(struct rpc_msg *msg)
{
int32_t fd = msg->args[MSG_ARG_0].i;
struct protocol_stack *stack = get_protocol_stack_by_fd(fd);
- struct lwip_sock *sock = get_socket(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock && __atomic_load_n(&sock->call_num, __ATOMIC_ACQUIRE) > 0) {
msg->recall_flag = 1;
@@ -738,7 +738,7 @@ void stack_shutdown(struct rpc_msg *msg)
int fd = msg->args[MSG_ARG_0].i;
int how = msg->args[MSG_ARG_1].i;
struct protocol_stack *stack = get_protocol_stack_by_fd(fd);
- struct lwip_sock *sock = get_socket(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock && __atomic_load_n(&sock->call_num, __ATOMIC_ACQUIRE) > 0) {
msg->recall_flag = 1;
@@ -767,7 +767,7 @@ void stack_listen(struct rpc_msg *msg)
int32_t fd = msg->args[MSG_ARG_0].i;
int32_t backlog = msg->args[MSG_ARG_1].i;
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock == NULL) {
msg->result = -1;
return;
@@ -793,7 +793,7 @@ void stack_accept(struct rpc_msg *msg)
return;
}
- struct lwip_sock *sock = get_socket(accept_fd);
+ struct lwip_sock *sock = lwip_get_socket(accept_fd);
if (sock == NULL || sock->stack == NULL) {
lwip_close(accept_fd);
LSTACK_LOG(ERR, LSTACK, "fd %d ret %d\n", fd, accept_fd);
@@ -880,7 +880,7 @@ void stack_tcp_send(struct rpc_msg *msg)
struct protocol_stack *stack = get_protocol_stack();
int replenish_again;
- struct lwip_sock *sock = get_socket(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock == NULL) {
msg->result = -1;
LSTACK_LOG(ERR, LSTACK, "get sock error! fd=%d, len=%ld\n", fd, len);
@@ -917,7 +917,7 @@ void stack_udp_send(struct rpc_msg *msg)
int replenish_again;
uint32_t call_num;
- struct lwip_sock *sock = get_socket(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock == NULL) {
msg->result = -1;
LSTACK_LOG(ERR, LSTACK, "get sock error! fd=%d, len=%ld\n", fd, len);
@@ -1030,7 +1030,7 @@ void stack_create_shadow_fd(struct rpc_msg *msg)
socklen_t addr_len = msg->args[MSG_ARG_2].socklen;
int32_t clone_fd = 0;
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock == NULL) {
LSTACK_LOG(ERR, LSTACK, "get sock null fd=%d\n", fd);
msg->result = -1;
@@ -1046,7 +1046,7 @@ void stack_create_shadow_fd(struct rpc_msg *msg)
return;
}
- struct lwip_sock *clone_sock = get_socket_by_fd(clone_fd);
+ struct lwip_sock *clone_sock = lwip_get_socket(clone_fd);
if (clone_sock == NULL) {
LSTACK_LOG(ERR, LSTACK, "get sock null fd=%d clone_fd=%d\n", fd, clone_fd);
msg->result = -1;
@@ -1114,7 +1114,7 @@ void stack_recvlist_count(struct rpc_msg *msg)
int32_t stack_broadcast_close(int32_t fd)
{
int32_t ret = 0;
- struct lwip_sock *sock = get_socket(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
struct protocol_stack *stack = get_protocol_stack_by_fd(fd);
if (sock == NULL) {
GAZELLE_RETURN(EBADF);
@@ -1139,7 +1139,7 @@ int32_t stack_broadcast_close(int32_t fd)
int stack_broadcast_shutdown(int fd, int how)
{
int32_t ret = 0;
- struct lwip_sock *sock = get_socket(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
struct protocol_stack *stack = get_protocol_stack_by_fd(fd);
if (sock == NULL) {
GAZELLE_RETURN(EBADF);
@@ -1186,7 +1186,7 @@ int32_t stack_broadcast_listen(int32_t fd, int32_t backlog)
socklen_t addr_len = sizeof(addr);
int32_t ret, clone_fd;
- struct lwip_sock *sock = get_socket(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock == NULL || cur_stack == NULL) {
LSTACK_LOG(ERR, LSTACK, "tid %ld, %d get sock null or stack null\n", get_stack_tid(), fd);
GAZELLE_RETURN(EBADF);
@@ -1216,9 +1216,9 @@ int32_t stack_broadcast_listen(int32_t fd, int32_t backlog)
}
if (min_conn_stk_idx == i) {
- get_socket_by_fd(clone_fd)->conn->is_master_fd = 1;
+ lwip_get_socket(clone_fd)->conn->is_master_fd = 1;
} else {
- get_socket_by_fd(clone_fd)->conn->is_master_fd = 0;
+ lwip_get_socket(clone_fd)->conn->is_master_fd = 0;
}
ret = rpc_call_listen(&stack->rpc_queue, clone_fd, backlog);
@@ -1232,7 +1232,7 @@ int32_t stack_broadcast_listen(int32_t fd, int32_t backlog)
static struct lwip_sock *get_min_accept_sock(int32_t fd)
{
- struct lwip_sock *sock = get_socket(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
struct lwip_sock *min_sock = NULL;
while (sock) {
@@ -1282,7 +1282,7 @@ int32_t stack_broadcast_bind(int32_t fd, const struct sockaddr *name, socklen_t
struct protocol_stack *stack = NULL;
int32_t ret, clone_fd;
- struct lwip_sock *sock = get_socket(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (sock == NULL || cur_stack == NULL) {
LSTACK_LOG(ERR, LSTACK, "tid %ld, %d get sock null or stack null\n", get_stack_tid(), fd);
GAZELLE_RETURN(EBADF);
@@ -1313,7 +1313,7 @@ int32_t stack_broadcast_accept4(int32_t fd, struct sockaddr *addr, socklen_t *ad
{
int32_t ret = -1;
struct lwip_sock *min_sock = NULL;
- struct lwip_sock *sock = get_socket(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
struct protocol_stack *stack = NULL;
if (sock == NULL) {
GAZELLE_RETURN(EBADF);
@@ -1356,8 +1356,8 @@ int32_t stack_broadcast_accept(int32_t fd, struct sockaddr *addr, socklen_t *add
static void stack_all_fds_close(void)
{
for (int i = 3; i < GAZELLE_MAX_CLIENTS + GAZELLE_RESERVED_CLIENTS; i++) {
- struct lwip_sock *sock = get_socket(i);
- if (sock && sock->stack == get_protocol_stack()) {
+ struct lwip_sock *sock = lwip_get_socket(i);
+ if (sock && sock->conn && sock->stack == get_protocol_stack()) {
lwip_close(i);
}
}
diff --git a/src/lstack/core/lstack_stack_stat.c b/src/lstack/core/lstack_stack_stat.c
index e77f21a..e42efde 100644
--- a/src/lstack/core/lstack_stack_stat.c
+++ b/src/lstack/core/lstack_stack_stat.c
@@ -81,7 +81,7 @@ void time_stamp_into_recvmbox(struct lwip_sock *sock)
void time_stamp_record(int fd, struct pbuf *pbuf)
{
- struct lwip_sock *sock = get_socket_by_fd(fd);
+ struct lwip_sock *sock = lwip_get_socket(fd);
if (get_protocol_stack_group()->latency_start && sock && pbuf) {
calculate_lstack_latency(&sock->stack->latency, pbuf, GAZELLE_LATENCY_INTO_MBOX, 0);
diff --git a/src/lstack/core/lstack_thread_rpc.c b/src/lstack/core/lstack_thread_rpc.c
index a6d2dbf..8ac06cb 100644
--- a/src/lstack/core/lstack_thread_rpc.c
+++ b/src/lstack/core/lstack_thread_rpc.c
@@ -474,7 +474,7 @@ int32_t rpc_call_tcp_send(rpc_queue *queue, int fd, size_t len, int flags)
}
if (get_protocol_stack_group()->latency_start) {
- time_stamp_into_rpcmsg(get_socket_by_fd(fd));
+ time_stamp_into_rpcmsg(lwip_get_socket(fd));
}
msg->args[MSG_ARG_0].i = fd;
@@ -495,7 +495,7 @@ int32_t rpc_call_udp_send(rpc_queue *queue, int fd, size_t len, int flags)
}
if (get_protocol_stack_group()->latency_start) {
- time_stamp_into_rpcmsg(get_socket_by_fd(fd));
+ time_stamp_into_rpcmsg(lwip_get_socket(fd));
}
msg->args[MSG_ARG_0].i = fd;
diff --git a/src/lstack/include/lstack_preload.h b/src/lstack/include/lstack_preload.h
index 0ad7877..c30736a 100644
--- a/src/lstack/include/lstack_preload.h
+++ b/src/lstack/include/lstack_preload.h
@@ -13,13 +13,7 @@
#define __LSTACK_PRELOAD_H__
#include <stdbool.h>
-enum KERNEL_LWIP_PATH {
- PATH_KERNEL = 0,
- PATH_LWIP,
- PATH_UNKNOW,
-};
-
-enum KERNEL_LWIP_PATH select_posix_path(void);
-enum KERNEL_LWIP_PATH select_fd_posix_path(int32_t fd, struct lwip_sock **socket);
+enum posix_type select_posix_path(void);
+enum posix_type select_fd_posix_path(int32_t fd, struct lwip_sock **socket);
int preload_info_init(void);
#endif
--
2.33.0