Hi Jeremy, Thanks for working on this. Could you squash a few of these patches to get a smaller patchset? My suggestions: * Squash 01/30, 02/30 and 03/30, call this something like: "netfilter: add missing include guard". Just document that the chunk for the flowtable is fixing up a comment. * For 04/30, since this is about SPDX, I would suggest you leave this behind and we wait for someone to make a whole pass over the netfilter headers to check for missing SPDX tags? Not a deal breaker, you can keep it in this batch if you like. * Squash 05/30, 06/30 and 07/30, call this I'd suggest: "netfilter: fix coding style errors", document the stray semi-colons, the Kconfig missing indent and the trailing whitespaces. * Squash 09/30, 10/30, 11/30, 12/30 and 12/30. They all refer to #include updates, could you squash and document these updates? * 14/30, "netfilter: remove superfluous header" I'd suggest you rename this to "netfilter: remove nf_conntrack_icmpv6.h header". * 15/30 and 16/30 LGTM. * 17/30 I don't think struct nf_bridge_frag_data qualifies for the global netfilter.h header. * 19/30 LGTM. * With 20/30 gets more ifdef pollution to optimize a case where kernel is compiled without this trackers. I would prefer you keep this back. * Please, squash 21/30 and 22/30. * 24/30 nft_set_pktinfo_ipv6_validate() definition already deals with this in the right way. * 25/30 nf_conntrack_zones_common.h only makes sense if NF_CONNTRACK is enabled, I don't understand. * 27/30 identation is not correct, not using tabs. * 26/30 is adding more #ifdef CONFIG_NETFILTER to the netfilter.h header. They make sense to make this new infra to compile headers, but from developer perspective is confusing. * 30/30 very similar to 26/30... --- a/include/linux/netfilter/ipset/ip_set.h +++ b/include/linux/netfilter/ipset/ip_set.h @@ -7,6 +7,10 @@ #ifndef _IP_SET_H #define _IP_SET_H +#include <uapi/linux/netfilter/ipset/ip_set.h> + +#if IS_ENABLED(CONFIG_IP_SET) ... Shouldn't probably the CONFIG_HEADER_TEST infrastructure check if the Kconfig option is set on before blindy compiling headers?