[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-devel] [patch #8882] Vector improvements
From: |
Joel Cunningham |
Subject: |
[lwip-devel] [patch #8882] Vector improvements |
Date: |
Tue, 08 Mar 2016 21:12:49 +0000 |
User-agent: |
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0 |
Follow-up Comment #9, patch #8882 (project lwip):
I agree the trade off is having lwip_netconn_do_writemore() perform a couple
of extra checks if there are additional vectors in the set and loop around to
send the additional vector. In netconn_write_partly, we would do a small
amount of extra work to setup a vector of 1.
In order to support an atomic write of vectors, the only other approach I see
is having a second implementation of lwip_netconn_do_writemore, handling the
vectors, unblocking of the caller, trying to send again during sent_tcp and
poll_tcp. Since the netconn is only setup to have a single set of callbacks,
which reference lwip_netconn_do_writemore(), we'd need to figure out how to
handle that.
In general, lwip_netconn_do_writemore() is really complex. I probably spent
3-4 hours going through all the execution paths in lwip_netconn_do_writemore()
making sure my change maintained the existing behavior for a single vector
versus a set of vectors. I'd like to avoid duplicating this level of complex
code if possible
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/patch/?8882>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/