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@xxxxxxxxx> Suggested-by: Arika Chen <eaglesora@xxxxxxxxx> Signed-off-by: Lingpeng Chen <forrest0579@xxxxxxxxx> Signed-off-by: John Fastabend <john.fastabend@xxxxxxxxx> Cc: stable@xxxxxxxxxxxxxxx # v4.20+ Acked-by: Song Liu <songliubraving@xxxxxx>
Applied to bpf, thanks!