On Fri, 2015-07-24 at 18:19 +0200, Sabrina Dubroca wrote: > Currently, tcp_recvmsg enters a busy loop in sk_wait_data if called > with flags = MSG_WAITALL | MSG_PEEK. > > sk_wait_data waits for sk_receive_queue not empty, but in this case, > the receive queue is not empty, but does not contain any skb that we > can use. > > Add a "last skb seen on receive queue" argument to sk_wait_data, so > that it sleeps until the receive queue has new skbs. > > Link: https://bugzilla.kernel.org/show_bug.cgi?id=99461 > Link: https://sourceware.org/bugzilla/show_bug.cgi?id=18493 > Link: https://bugzilla.redhat.com/show_bug.cgi?id=1205258 > Reported-by: Enrico Scholz <[email protected]> > Reported-by: Dan Searle <[email protected]> > Signed-off-by: Sabrina Dubroca <[email protected]> > ---
Very nice ! Acked-by: Eric Dumazet <[email protected]> -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
