Akihiko Odaki wrote: > The added tests confirm tun can perform RSS and hash reporting, and > reject invalid configurations for them. > > Signed-off-by: Akihiko Odaki <akihiko.odaki@xxxxxxxxxx> > --- > tools/testing/selftests/net/Makefile | 2 +- > tools/testing/selftests/net/tun.c | 558 ++++++++++++++++++++++++++++++++++- > 2 files changed, 551 insertions(+), 9 deletions(-) > > diff --git a/tools/testing/selftests/net/Makefile b/tools/testing/selftests/net/Makefile > index cb2fc601de66..92762ce3ebd4 100644 > --- a/tools/testing/selftests/net/Makefile > +++ b/tools/testing/selftests/net/Makefile > @@ -121,6 +121,6 @@ $(OUTPUT)/reuseport_bpf_numa: LDLIBS += -lnuma > $(OUTPUT)/tcp_mmap: LDLIBS += -lpthread -lcrypto > $(OUTPUT)/tcp_inq: LDLIBS += -lpthread > $(OUTPUT)/bind_bhash: LDLIBS += -lpthread > -$(OUTPUT)/io_uring_zerocopy_tx: CFLAGS += -I../../../include/ > +$(OUTPUT)/io_uring_zerocopy_tx $(OUTPUT)/tun: CFLAGS += -I../../../include/ > > include bpf.mk > diff --git a/tools/testing/selftests/net/tun.c b/tools/testing/selftests/net/tun.c > index 463dd98f2b80..9424d897e341 100644 > --- a/tools/testing/selftests/net/tun.c > +++ b/tools/testing/selftests/net/tun.c > @@ -2,21 +2,37 @@ > > #define _GNU_SOURCE > > +#include <endian.h> > #include <errno.h> > #include <fcntl.h> > +#include <stddef.h> > #include <stdio.h> > #include <stdlib.h> > #include <string.h> > #include <unistd.h> > -#include <linux/if.h> > +#include <net/if.h> > +#include <netinet/ip.h> > +#include <sys/ioctl.h> > +#include <sys/socket.h> > +#include <linux/compiler.h> > +#include <linux/icmp.h> > +#include <linux/if_arp.h> > #include <linux/if_tun.h> > +#include <linux/ipv6.h> > #include <linux/netlink.h> > #include <linux/rtnetlink.h> > -#include <sys/ioctl.h> > -#include <sys/socket.h> > +#include <linux/sockios.h> > +#include <linux/tcp.h> > +#include <linux/udp.h> > +#include <linux/virtio_net.h> Are all these include changes strictly needed? Iff so, might as well fix ordering to be alphabetical (lexicographic).