On Tue, 2016-10-25 at 15:43 -0400, Willem de Bruijn wrote: > On Sun, Oct 23, 2016 at 9:03 PM, Eric Dumazet <eric.duma...@gmail.com> wrote: > > From: Eric Dumazet <eduma...@google.com> > > > > First bug was added in commit ad6f939ab193 ("ip: Add offset parameter to > > ip_cmsg_recv") : Tom missed that ipv4 udp messages could be received on > > AF_INET6 socket. ip_cmsg_recv(msg, skb) should have been replaced by > > ip_cmsg_recv_offset(msg, skb, sizeof(struct udphdr)); > > > > Then commit e6afc8ace6dd ("udp: remove headers from UDP packets before > > queueing") forgot to adjust the offsets now UDP headers are pulled > > before skb are put in receive queue. > > > > Fixes: ad6f939ab193 ("ip: Add offset parameter to ip_cmsg_recv") > > Fixes: e6afc8ace6dd ("udp: remove headers from UDP packets before queueing") > > Signed-off-by: Eric Dumazet <eduma...@google.com> > > Cc: Sam Kumar <samanthaku...@google.com> > > Cc: Willem de Bruijn <will...@google.com> > > --- > > Tom, I would appreciate your feedback on this patch, I presume > > you have tests to verify IP_CHECKSUM feature ? Thanks ! > > > > Tested-by: Willem de Bruijn <will...@google.com> > > Thanks for fixing, Eric. > > Tested with > https://github.com/wdebruij/kerneltools/blob/master/tests/recv_cmsg_ipchecksum.c
Thanks a lot Willem for cooking this test !