You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by GitBox <gi...@apache.org> on 2021/04/05 07:28:22 UTC

[GitHub] [incubator-nuttx] yamt opened a new pull request #3319: tcp_netpoll.c: Fix a performance issue with CONFIG_NET_TCP_WRITE_BUFFERS

yamt opened a new pull request #3319:
URL: https://github.com/apache/incubator-nuttx/pull/3319


   ## Summary
   tcp_netpoll.c: Fix a performance issue with CONFIG_NET_TCP_WRITE_BUFFERS
   
   ## Impact
   non blocking i/o with CONFIG_NET_TCP_WRITE_BUFFERS.
   
   ## Testing
   Tested with a modified version of webclient, which uses non-blocking i/o.
   The packet dumps look more reasonable with this change.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] xiaoxiang781216 merged pull request #3319: tcp_netpoll.c: Fix a performance issue with CONFIG_NET_TCP_WRITE_BUFFERS

Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 merged pull request #3319:
URL: https://github.com/apache/incubator-nuttx/pull/3319


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] xiaoxiang781216 commented on a change in pull request #3319: tcp_netpoll.c: Fix a performance issue with CONFIG_NET_TCP_WRITE_BUFFERS

Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 commented on a change in pull request #3319:
URL: https://github.com/apache/incubator-nuttx/pull/3319#discussion_r607039222



##########
File path: net/tcp/tcp_netpoll.c
##########
@@ -97,7 +97,18 @@ static uint16_t tcp_poll_eventhandler(FAR struct net_driver_s *dev,
 
       /* A poll is a sign that we are free to send data. */
 
-      else if (psock_tcp_cansend(info->psock) >= 0)
+      /* Wake up poll() speculatively on TCP_ACKDATA.
+       * Note: our event handler is usually executed before
+       * psock_send_eventhandler, which might free IOBs/WRBs on TCP_ACKDATA.
+       * Revisit: consider some kind of priority for devif callback to allow

Review comment:
       Yes, maybe we can order the flag value by priority.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org