mirror of
https://github.com/apache/nuttx.git
synced 2026-05-29 20:56:47 +08:00
net: replace net_sem*wait with conn_dev_sem*wait to simplify code logic
optimize the current code format according to the previous net_xxx_wait implementation to reduce multiple calls of similar code Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
This commit is contained in:
committed by
Alan C. Assis
parent
aee7ea0d7d
commit
8f41613374
@@ -374,14 +374,13 @@ ssize_t icmp_recvmsg(FAR struct socket *psock, FAR struct msghdr *msg,
|
||||
state.recv_cb->event = recvfrom_eventhandler;
|
||||
|
||||
/* Wait for either the response to be received or for timeout to
|
||||
* occur. net_sem_timedwait will also terminate if a signal is
|
||||
* occur. conn_dev_sem_timedwait will also terminate if a signal is
|
||||
* received.
|
||||
*/
|
||||
|
||||
conn_dev_unlock(&conn->sconn, dev);
|
||||
ret = net_sem_timedwait(&state.recv_sem,
|
||||
_SO_TIMEOUT(conn->sconn.s_rcvtimeo));
|
||||
conn_dev_lock(&conn->sconn, dev);
|
||||
ret = conn_dev_sem_timedwait(&state.recv_sem, true,
|
||||
_SO_TIMEOUT(conn->sconn.s_rcvtimeo),
|
||||
&conn->sconn, dev);
|
||||
if (ret < 0)
|
||||
{
|
||||
state.recv_result = ret;
|
||||
|
||||
@@ -406,13 +406,12 @@ ssize_t icmp_sendmsg(FAR struct socket *psock, FAR struct msghdr *msg,
|
||||
netdev_txnotify_dev(dev, ICMP_POLL);
|
||||
|
||||
/* Wait for either the send to complete or for timeout to occur.
|
||||
* net_sem_timedwait will also terminate if a signal is received.
|
||||
* conn_dev_sem_timedwait will also terminate if a signal is received.
|
||||
*/
|
||||
|
||||
conn_dev_unlock(&conn->sconn, dev);
|
||||
ret = net_sem_timedwait(&state.snd_sem,
|
||||
_SO_TIMEOUT(conn->sconn.s_sndtimeo));
|
||||
conn_dev_lock(&conn->sconn, dev);
|
||||
ret = conn_dev_sem_timedwait(&state.snd_sem, true,
|
||||
_SO_TIMEOUT(conn->sconn.s_sndtimeo),
|
||||
&conn->sconn, dev);
|
||||
if (ret < 0)
|
||||
{
|
||||
if (ret == -ETIMEDOUT)
|
||||
|
||||
Reference in New Issue
Block a user