Missing file change for previous driver-based UDP backlog from Max Holtzberg
This commit is contained in:
parent
209946a055
commit
417f2006aa
@ -185,7 +185,7 @@ static inline void recvfrom_newtcpdata(FAR struct uip_driver_s *dev,
|
|||||||
* here. For example, what if up_datahandler() cannot buffer the
|
* here. For example, what if up_datahandler() cannot buffer the
|
||||||
* remainder of the packet? In that case, the data will be dropped but
|
* remainder of the packet? In that case, the data will be dropped but
|
||||||
* still ACKed. Therefore it would not be resent.
|
* still ACKed. Therefore it would not be resent.
|
||||||
*
|
*
|
||||||
* This is probably not an issue here because we only get here if the
|
* This is probably not an issue here because we only get here if the
|
||||||
* read-ahead buffers are empty and there would have to be something
|
* read-ahead buffers are empty and there would have to be something
|
||||||
* serioulsy wrong with the configuration not to be able to buffer a
|
* serioulsy wrong with the configuration not to be able to buffer a
|
||||||
@ -410,7 +410,7 @@ static int recvfrom_timeout(struct recvfrom_s *pstate)
|
|||||||
*
|
*
|
||||||
* Parameters:
|
* Parameters:
|
||||||
* dev - The device driver data structure
|
* dev - The device driver data structure
|
||||||
* pstate - the recvfrom state structure
|
* pstate - the recvfrom state structure
|
||||||
*
|
*
|
||||||
* Returned Value:
|
* Returned Value:
|
||||||
* None
|
* None
|
||||||
@ -509,7 +509,7 @@ static uint16_t recvfrom_tcpinterrupt(FAR struct uip_driver_s *dev,
|
|||||||
* bit to determine if more data will be received. You might
|
* bit to determine if more data will be received. You might
|
||||||
* do this if read-ahead buffereing is disabled and we want to
|
* do this if read-ahead buffereing is disabled and we want to
|
||||||
* minimize the loss of back-to-back packets. In this case,
|
* minimize the loss of back-to-back packets. In this case,
|
||||||
* the transfer is complete when either a) the entire user buffer
|
* the transfer is complete when either a) the entire user buffer
|
||||||
* is full or 2) when the receive timeout occurs (below).
|
* is full or 2) when the receive timeout occurs (below).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -620,7 +620,7 @@ static uint16_t recvfrom_tcpinterrupt(FAR struct uip_driver_s *dev,
|
|||||||
pstate->rf_cb->priv = NULL;
|
pstate->rf_cb->priv = NULL;
|
||||||
pstate->rf_cb->event = NULL;
|
pstate->rf_cb->event = NULL;
|
||||||
|
|
||||||
/* Report an error only if no data has been received. (If
|
/* Report an error only if no data has been received. (If
|
||||||
* CONFIG_NET_TCP_RECVDELAY then rf_recvlen should always be
|
* CONFIG_NET_TCP_RECVDELAY then rf_recvlen should always be
|
||||||
* zero).
|
* zero).
|
||||||
*/
|
*/
|
||||||
@ -655,7 +655,7 @@ static uint16_t recvfrom_tcpinterrupt(FAR struct uip_driver_s *dev,
|
|||||||
*
|
*
|
||||||
* Parameters:
|
* Parameters:
|
||||||
* dev - The device driver data structure
|
* dev - The device driver data structure
|
||||||
* pstate - the recvfrom state structure
|
* pstate - the recvfrom state structure
|
||||||
*
|
*
|
||||||
* Returned Value:
|
* Returned Value:
|
||||||
* None
|
* None
|
||||||
@ -953,6 +953,10 @@ static ssize_t udp_recvfrom(FAR struct socket *psock, FAR void *buf, size_t len,
|
|||||||
|
|
||||||
uip_udpenable(conn);
|
uip_udpenable(conn);
|
||||||
|
|
||||||
|
/* Notify the device driver of the receive call */
|
||||||
|
|
||||||
|
netdev_rxnotify(&conn->ripaddr);
|
||||||
|
|
||||||
/* Wait for either the receive to complete or for an error/timeout to occur.
|
/* Wait for either the receive to complete or for an error/timeout to occur.
|
||||||
* NOTES: (1) uip_lockedwait will also terminate if a signal is received, (2)
|
* NOTES: (1) uip_lockedwait will also terminate if a signal is received, (2)
|
||||||
* interrupts are disabled! They will be re-enabled while the task sleeps
|
* interrupts are disabled! They will be re-enabled while the task sleeps
|
||||||
@ -1033,7 +1037,7 @@ static ssize_t tcp_recvfrom(FAR struct socket *psock, FAR void *buf, size_t len,
|
|||||||
* or if the user request was completely satisfied with data from the readahead
|
* or if the user request was completely satisfied with data from the readahead
|
||||||
* buffers.
|
* buffers.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ret = state.rf_recvlen;
|
ret = state.rf_recvlen;
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
Loading…
x
Reference in New Issue
Block a user