On 1/9/20 2:48 AM, Lingpeng Chen wrote:
Right now in tcp_bpf_recvmsg, sock read data first from sk_receive_queue if not empty than psock->ingress_msg otherwise. If a FIN packet arrives and there's also some data in psock->ingress_msg, the data in psock->ingress_msg will be purged. It is always happen when request to a HTTP1.0 server like python SimpleHTTPServer since the server send FIN packet after data is sent out.
Fixes: 604326b41a6fb ("bpf, sockmap: convert to generic sk_msg interface") Reported-by: Arika Chen eaglesora@gmail.com Suggested-by: Arika Chen eaglesora@gmail.com Signed-off-by: Lingpeng Chen forrest0579@gmail.com Signed-off-by: John Fastabend john.fastabend@gmail.com Cc: stable@vger.kernel.org # v4.20+ Acked-by: Song Liu songliubraving@fb.com
Applied to bpf, thanks!