net: Don't include filter.h from net/sock.h
authorJakub Kicinski <kuba@kernel.org>
Wed, 29 Dec 2021 00:49:13 +0000 (16:49 -0800)
committerAlexei Starovoitov <ast@kernel.org>
Wed, 29 Dec 2021 16:48:14 +0000 (08:48 -0800)
sock.h is pretty heavily used (5k objects rebuilt on x86 after
it's touched). We can drop the include of filter.h from it and
add a forward declaration of struct sk_filter instead.
This decreases the number of rebuilt objects when bpf.h
is touched from ~5k to ~1k.

There's a lot of missing includes this was masking. Primarily
in networking tho, this time.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Marc Kleine-Budde <mkl@pengutronix.de>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Nikolay Aleksandrov <nikolay@nvidia.com>
Acked-by: Stefano Garzarella <sgarzare@redhat.com>
Link: https://lore.kernel.org/bpf/20211229004913.513372-1-kuba@kernel.org
70 files changed:
drivers/bluetooth/btqca.c
drivers/infiniband/core/cache.c
drivers/infiniband/hw/irdma/ctrl.c
drivers/infiniband/hw/irdma/uda.c
drivers/infiniband/hw/mlx5/doorbell.c
drivers/infiniband/hw/mlx5/qp.c
drivers/net/amt.c
drivers/net/appletalk/ipddp.c
drivers/net/bonding/bond_main.c
drivers/net/can/usb/peak_usb/pcan_usb.c
drivers/net/dsa/microchip/ksz8795.c
drivers/net/dsa/xrs700x/xrs700x.c
drivers/net/ethernet/broadcom/bnxt/bnxt_devlink.c
drivers/net/ethernet/huawei/hinic/hinic_tx.c
drivers/net/ethernet/intel/ice/ice_devlink.c
drivers/net/ethernet/intel/ice/ice_txrx_lib.c
drivers/net/ethernet/intel/igc/igc_xdp.c
drivers/net/ethernet/mellanox/mlx4/en_netdev.c
drivers/net/ethernet/mellanox/mlx5/core/en/qos.c
drivers/net/ethernet/sfc/efx.c
drivers/net/ethernet/sfc/efx_channels.c
drivers/net/ethernet/sfc/efx_common.c
drivers/net/hamradio/hdlcdrv.c
drivers/net/hamradio/scc.c
drivers/net/loopback.c
drivers/net/vrf.c
drivers/net/wireless/ath/ath11k/debugfs.c
drivers/net/wireless/realtek/rtw89/debug.c
fs/nfs/dir.c
fs/nfs/fs_context.c
fs/select.c
include/linux/bpf_local_storage.h
include/linux/dsa/loop.h
include/net/ipv6.h
include/net/route.h
include/net/sock.h
include/net/xdp_sock.h
kernel/sysctl.c
net/bluetooth/bnep/sock.c
net/bluetooth/eir.h
net/bluetooth/hidp/sock.c
net/bluetooth/l2cap_sock.c
net/bridge/br_ioctl.c
net/caif/caif_socket.c
net/core/devlink.c
net/core/flow_dissector.c
net/core/lwt_bpf.c
net/core/sock_diag.c
net/core/sysctl_net_core.c
net/decnet/dn_nsp_in.c
net/dsa/dsa_priv.h
net/ethtool/ioctl.c
net/ipv4/nexthop.c
net/ipv6/ip6_fib.c
net/ipv6/seg6_local.c
net/iucv/af_iucv.c
net/kcm/kcmsock.c
net/netfilter/nfnetlink_hook.c
net/netfilter/nft_reject_netdev.c
net/netlink/af_netlink.c
net/packet/af_packet.c
net/rose/rose_in.c
net/sched/sch_frag.c
net/smc/smc_ib.c
net/smc/smc_ism.c
net/unix/af_unix.c
net/vmw_vsock/af_vsock.c
net/xdp/xskmap.c
net/xfrm/xfrm_state.c
net/xfrm/xfrm_user.c

index be04d74037d203deac365aa3dce7f85775620df5..f7bf311d79102048ddecdedc23e9725d744cb3fb 100644 (file)
@@ -6,6 +6,7 @@
  */
 #include <linux/module.h>
 #include <linux/firmware.h>
+#include <linux/vmalloc.h>
 
 #include <net/bluetooth/bluetooth.h>
 #include <net/bluetooth/hci_core.h>
index 0c98dd3dee67832b33383bf5782ada595643dbee..b79f816a7203a6a740ce1bc9405921d31e1313b0 100644 (file)
@@ -33,6 +33,7 @@
  * SOFTWARE.
  */
 
+#include <linux/if_vlan.h>
 #include <linux/module.h>
 #include <linux/errno.h>
 #include <linux/slab.h>
index 7264f8c2f7d5792820033742f511799f6e9124a0..3141a9c85de5a48f4e78d4324ef7e270bfa4286a 100644 (file)
@@ -1,5 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0 or Linux-OpenIB
 /* Copyright (c) 2015 - 2021 Intel Corporation */
+#include <linux/etherdevice.h>
+
 #include "osdep.h"
 #include "status.h"
 #include "hmc.h"
index f5b1b6150cdc2a5cf4f4f23fedbb2350511cef7b..7a9988ddbd0130c24f1c8242c3af74bdfc0635b0 100644 (file)
@@ -1,5 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0 or Linux-OpenIB
 /* Copyright (c) 2016 - 2021 Intel Corporation */
+#include <linux/etherdevice.h>
+
 #include "osdep.h"
 #include "status.h"
 #include "hmc.h"
index 6398e2f4857925923c6cd8dd776878d7d07f7166..e32111117a5ea681516bb0e91e963bbac3e8e8e7 100644 (file)
@@ -32,6 +32,7 @@
 
 #include <linux/kref.h>
 #include <linux/slab.h>
+#include <linux/sched/mm.h>
 #include <rdma/ib_umem.h>
 
 #include "mlx5_ib.h"
index e5abbcfc1d5748abf6716c46fce1b8fb466b42db..29475cf8c7c3571ce7b2515a9d6a9312dc1f79ac 100644 (file)
@@ -30,6 +30,7 @@
  * SOFTWARE.
  */
 
+#include <linux/etherdevice.h>
 #include <linux/module.h>
 #include <rdma/ib_umem.h>
 #include <rdma/ib_cache.h>
index b732ee9a50ef948bd4fe30a32f9870ceb2ba0517..a1c7a8acd9c88f82ca6d2372183f5ecd80e9bf2d 100644 (file)
@@ -11,6 +11,7 @@
 #include <linux/net.h>
 #include <linux/igmp.h>
 #include <linux/workqueue.h>
+#include <net/sch_generic.h>
 #include <net/net_namespace.h>
 #include <net/ip.h>
 #include <net/udp.h>
index 5566daefbff4cdcf3af3b781d50e12724388d3fc..d558535390f9805f58aacc7222994946ca3d9d2b 100644 (file)
@@ -23,6 +23,7 @@
  *      of the GNU General Public License, incorporated herein by reference.
  */
 
+#include <linux/compat.h>
 #include <linux/module.h>
 #include <linux/kernel.h>
 #include <linux/init.h>
index 0f39ad2af81c2e5717d2392eeb50a759ccfdbd97..d483f1102a9e9495ef2c78729cf6bc5fce0aaf84 100644 (file)
@@ -35,6 +35,7 @@
 #include <linux/module.h>
 #include <linux/types.h>
 #include <linux/fcntl.h>
+#include <linux/filter.h>
 #include <linux/interrupt.h>
 #include <linux/ptrace.h>
 #include <linux/ioport.h>
index 8762187527669b76d46d8636c064ae8cf3a5f4f5..ac6772fe97466558b9df6ad4e9c68e28486ee57c 100644 (file)
@@ -8,6 +8,7 @@
  *
  * Many thanks to Klaus Hitschler <klaus.hitschler@gmx.de>
  */
+#include <asm/unaligned.h>
 #include <linux/netdevice.h>
 #include <linux/usb.h>
 #include <linux/module.h>
index 013e9c02be71ab366c0e54a61fb3af61aa8f67ef..991b9c6b6ce7e40df22b199676626c3c3fd31c9f 100644 (file)
@@ -10,6 +10,7 @@
 #include <linux/delay.h>
 #include <linux/export.h>
 #include <linux/gpio.h>
+#include <linux/if_vlan.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/platform_data/microchip-ksz.h>
index 35fa19ddaf198ab23aa5e25cc906e6331cd7a34b..0730352cdd572fea13e46238c99d2c8816f9bd8f 100644 (file)
@@ -5,6 +5,7 @@
  */
 
 #include <net/dsa.h>
+#include <linux/etherdevice.h>
 #include <linux/if_bridge.h>
 #include <linux/of_device.h>
 #include <linux/netdev_features.h>
index 951c4c569a9b3ac846fc5c5d04df70bdb64c3673..4da31b1b84f9c2ebb7a5aaecf1b869f55c6db104 100644 (file)
@@ -9,6 +9,7 @@
 
 #include <linux/pci.h>
 #include <linux/netdevice.h>
+#include <linux/vmalloc.h>
 #include <net/devlink.h>
 #include "bnxt_hsi.h"
 #include "bnxt.h"
index a984a7a6dd2e20b38f831cd22d5576ea5d6b43bb..8d59babbf476ca48ad53addae9a39879ceb7e8b5 100644 (file)
@@ -4,6 +4,7 @@
  * Copyright(c) 2017 Huawei Technologies Co., Ltd
  */
 
+#include <linux/if_vlan.h>
 #include <linux/kernel.h>
 #include <linux/netdevice.h>
 #include <linux/u64_stats_sync.h>
index 1cfe918db8b9b8f9ef64501bd9ca1a98f3f429bc..716ec8616ff071978e363136dd7fb29e8cb840c0 100644 (file)
@@ -1,6 +1,8 @@
 // SPDX-License-Identifier: GPL-2.0
 /* Copyright (c) 2020, Intel Corporation. */
 
+#include <linux/vmalloc.h>
+
 #include "ice.h"
 #include "ice_lib.h"
 #include "ice_devlink.h"
index 1dd7e84f41f8777c2e9804ab96897fc76806760b..9520b140bdbf06386989f09a6a4e15a7abe78db9 100644 (file)
@@ -1,6 +1,8 @@
 // SPDX-License-Identifier: GPL-2.0
 /* Copyright (c) 2019, Intel Corporation. */
 
+#include <linux/filter.h>
+
 #include "ice_txrx_lib.h"
 #include "ice_eswitch.h"
 #include "ice_lib.h"
index a8cf5374be47a05949e205bb8af27eefe0cd3cfe..aeeb34e64610d205cb6d7cd99ac2bf973a2b68c4 100644 (file)
@@ -1,6 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0
 /* Copyright (c) 2020, Intel Corporation. */
 
+#include <linux/if_vlan.h>
 #include <net/xdp_sock_drv.h>
 
 #include "igc.h"
index f1c10f2bda780a1d4a9dabe3c1a126b80809e5e9..40acfe12adc94c5a38bd2dcc358207c45d7389b4 100644 (file)
@@ -33,6 +33,7 @@
 
 #include <linux/bpf.h>
 #include <linux/etherdevice.h>
+#include <linux/filter.h>
 #include <linux/tcp.h>
 #include <linux/if_vlan.h>
 #include <linux/delay.h>
index 50977f01a0503d23a061239f4185f910528c6b2b..00449df98a5efb89f48c7e5b5d03a4a71ccb80b4 100644 (file)
@@ -1,5 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB
 /* Copyright (c) 2020, Mellanox Technologies inc. All rights reserved. */
+#include <net/sch_generic.h>
 
 #include "en.h"
 #include "params.h"
index a8c252e2b2521967d067b525c68891f002481ce8..302dc835ac3dbeee32b3d73949b23e7cc6006332 100644 (file)
@@ -5,6 +5,7 @@
  * Copyright 2005-2013 Solarflare Communications Inc.
  */
 
+#include <linux/filter.h>
 #include <linux/module.h>
 #include <linux/pci.h>
 #include <linux/netdevice.h>
index 3dbea028b325ceed9ad813263527cd8963740db8..b015d1f2e20415b925b7e7508581a5ac881c3e57 100644 (file)
@@ -10,6 +10,7 @@
 
 #include "net_driver.h"
 #include <linux/module.h>
+#include <linux/filter.h>
 #include "efx_channels.h"
 #include "efx.h"
 #include "efx_common.h"
index f187631b2c5cac79b538a93fabee761d716921fe..af37c990217ec456e0e1848be56729d9450c6636 100644 (file)
@@ -9,6 +9,7 @@
  */
 
 #include "net_driver.h"
+#include <linux/filter.h>
 #include <linux/module.h>
 #include <linux/netdevice.h>
 #include <net/gre.h>
index b0edb91bb10aa77cde35abec50863251d171c516..8297411e87ea06914a5ee2c466d7a0dd1346f948 100644 (file)
@@ -30,6 +30,7 @@
 /*****************************************************************************/
 
 #include <linux/capability.h>
+#include <linux/compat.h>
 #include <linux/module.h>
 #include <linux/types.h>
 #include <linux/net.h>
index 3d59dac063ac430d27af9919b649b3f4501f55f4..f90830d3dfa697fb4d063b983dd02bfb957a3d7a 100644 (file)
 
 /* ----------------------------------------------------------------------- */
 
+#include <linux/compat.h>
 #include <linux/module.h>
 #include <linux/errno.h>
 #include <linux/signal.h>
index a1c77cc0041657de79b562c84408acabf9e8b99b..ed0edf5884ef85bf49534ff85b7dca3d9c6aa3ab 100644 (file)
@@ -44,6 +44,7 @@
 #include <linux/etherdevice.h>
 #include <linux/skbuff.h>
 #include <linux/ethtool.h>
+#include <net/sch_generic.h>
 #include <net/sock.h>
 #include <net/checksum.h>
 #include <linux/if_ether.h>    /* For the statistics structure. */
index b4c64226b7caa9b385663c8d8a39f5122971ab43..e0b1ab99a359e5741eda3885689f95f5f567156a 100644 (file)
@@ -34,6 +34,7 @@
 #include <net/addrconf.h>
 #include <net/l3mdev.h>
 #include <net/fib_rules.h>
+#include <net/sch_generic.h>
 #include <net/netns/generic.h>
 #include <net/netfilter/nf_conntrack.h>
 
index dba055d085be3069d77f73fcdb8ef0819962dc77..eb8b4f20c95e7f873074b6c7c87a38592281f3ea 100644 (file)
@@ -3,6 +3,8 @@
  * Copyright (c) 2018-2020 The Linux Foundation. All rights reserved.
  */
 
+#include <linux/vmalloc.h>
+
 #include "debugfs.h"
 
 #include "core.h"
index 1e85808aaf4b36cd9b980e17a62207cdf97c495d..be761157ea22ee89b8eded98934433ab79eb4b61 100644 (file)
@@ -2,6 +2,8 @@
 /* Copyright(c) 2019-2020  Realtek Corporation
  */
 
+#include <linux/vmalloc.h>
+
 #include "coex.h"
 #include "debug.h"
 #include "fw.h"
index 731d31015b6aa72fc0fed05922f57f7b0b3bc007..347793626f19d7d61aa164e5d03013c5a3332283 100644 (file)
@@ -18,6 +18,7 @@
  *  6 Jun 1999 Cache readdir lookups in the page cache. -DaveM
  */
 
+#include <linux/compat.h>
 #include <linux/module.h>
 #include <linux/time.h>
 #include <linux/errno.h>
index 0d444a90f513a9fa6d2cef1748a7218575a38d84..ea17fa1f31ecb030651efe34ce4c6649bacc9b1c 100644 (file)
@@ -10,6 +10,7 @@
  * Split from fs/nfs/super.c by David Howells <dhowells@redhat.com>
  */
 
+#include <linux/compat.h>
 #include <linux/module.h>
 #include <linux/fs.h>
 #include <linux/fs_context.h>
index 945896d0ac9e7624db36d48169ebc757d4f18adb..02cd8cb5e69f803059fe5494dce3d1e760d7e84e 100644 (file)
@@ -15,6 +15,7 @@
  *     of fds to overcome nfds < 16390 descriptors limit (Tigran Aivazian).
  */
 
+#include <linux/compat.h>
 #include <linux/kernel.h>
 #include <linux/sched/signal.h>
 #include <linux/sched/rt.h>
index 24496bc28e7b6f15ab5d8519874646da7bc4e332..a2b625960ffe573bae4e107f59c4ff4ec03d4e5f 100644 (file)
@@ -8,6 +8,7 @@
 #define _BPF_LOCAL_STORAGE_H
 
 #include <linux/bpf.h>
+#include <linux/filter.h>
 #include <linux/rculist.h>
 #include <linux/list.h>
 #include <linux/hash.h>
index 5a3470bcc8a7e18b9e7345d439f6dfbd35f5c36b..b8fef35591aa13b7c691e609bd41b8477fac549a 100644 (file)
@@ -2,6 +2,7 @@
 #ifndef DSA_LOOP_H
 #define DSA_LOOP_H
 
+#include <linux/if_vlan.h>
 #include <linux/types.h>
 #include <linux/ethtool.h>
 #include <net/dsa.h>
index 53ac7707ca70af513aef32389afd681bff3082f3..3afcb128e064911664b415c13d59bad5fc0547b4 100644 (file)
@@ -21,6 +21,8 @@
 #include <net/snmp.h>
 #include <net/netns/hash.h>
 
+struct ip_tunnel_info;
+
 #define SIN6_LEN_RFC2133       24
 
 #define IPV6_MAXPLEN           65535
index 2e6c0e153e3a58b6b28d3af5c166d0aaf5381d53..4c858dcf1aa8cd1988746e55eb698ad4425fd77b 100644 (file)
@@ -43,6 +43,7 @@
 #define RT_CONN_FLAGS(sk)   (RT_TOS(inet_sk(sk)->tos) | sock_flag(sk, SOCK_LOCALROUTE))
 #define RT_CONN_FLAGS_TOS(sk,tos)   (RT_TOS(tos) | sock_flag(sk, SOCK_LOCALROUTE))
 
+struct ip_tunnel_info;
 struct fib_nh;
 struct fib_info;
 struct uncached_list;
index 37f878564d25bf4563bbbf507dddae12116af8aa..40f6406b9ca50f2c3411075754a5080a573b4a50 100644 (file)
@@ -56,7 +56,6 @@
 #include <linux/wait.h>
 #include <linux/cgroup-defs.h>
 #include <linux/rbtree.h>
-#include <linux/filter.h>
 #include <linux/rculist_nulls.h>
 #include <linux/poll.h>
 #include <linux/sockptr.h>
@@ -249,6 +248,7 @@ struct sock_common {
 };
 
 struct bpf_local_storage;
+struct sk_filter;
 
 /**
   *    struct sock - network layer representation of sockets
index fff069d2ed1bc0f025a6ac56a5d2e992143d3297..3057e1a4a11c6341499f56843c2cf7eb5c6565b4 100644 (file)
@@ -6,6 +6,7 @@
 #ifndef _LINUX_XDP_SOCK_H
 #define _LINUX_XDP_SOCK_H
 
+#include <linux/bpf.h>
 #include <linux/workqueue.h>
 #include <linux/if_xdp.h>
 #include <linux/mutex.h>
index 083be6af29d705f371676a0bbca3b4c2546c62ee..d7ed1dffa4262615c78fb0ff5c12c8d49cdf1f36 100644 (file)
@@ -33,6 +33,7 @@
 #include <linux/security.h>
 #include <linux/ctype.h>
 #include <linux/kmemleak.h>
+#include <linux/filter.h>
 #include <linux/fs.h>
 #include <linux/init.h>
 #include <linux/kernel.h>
index d515571b2afba933b1fa0614e1cc998a572e16ef..57d509d77cb467894fa1d5e5f2aedb3dcdcf6565 100644 (file)
@@ -24,6 +24,7 @@
    SOFTWARE IS DISCLAIMED.
 */
 
+#include <linux/compat.h>
 #include <linux/export.h>
 #include <linux/file.h>
 
index 724662f8f8b155f06510e8572666873a0a63e49d..05e2e917fc254a1b8dde6c76ccfded83e12a41fe 100644 (file)
@@ -5,6 +5,8 @@
  * Copyright (C) 2021 Intel Corporation
  */
 
+#include <asm/unaligned.h>
+
 void eir_create(struct hci_dev *hdev, u8 *data);
 
 u8 eir_create_adv_data(struct hci_dev *hdev, u8 instance, u8 *ptr);
index 595fb3c9d6c36172b1ea09f96e80bdbd075929df..369ed92dac997b4821f007e380fd3c5ab891c375 100644 (file)
@@ -20,6 +20,7 @@
    SOFTWARE IS DISCLAIMED.
 */
 
+#include <linux/compat.h>
 #include <linux/export.h>
 #include <linux/file.h>
 
index 4574c5cb1b596e80f2613280ef51bdb82f590167..dc50737b785b05f2027432b1df2f4e4988090c02 100644 (file)
@@ -29,6 +29,7 @@
 
 #include <linux/module.h>
 #include <linux/export.h>
+#include <linux/filter.h>
 #include <linux/sched/signal.h>
 
 #include <net/bluetooth/bluetooth.h>
index db4ab2c2ce18b02b0ac29a8b86b09e85e1a6f969..9b54d7d0bfc4e94bf177fb2289da7dc605fd926b 100644 (file)
@@ -8,6 +8,7 @@
  */
 
 #include <linux/capability.h>
+#include <linux/compat.h>
 #include <linux/kernel.h>
 #include <linux/if_bridge.h>
 #include <linux/netdevice.h>
index e12fd3cad6194210b1436e7c395203803fdd9e9b..2b8892d502f7f67fd140c5b40da28b749359fb4d 100644 (file)
@@ -6,6 +6,7 @@
 
 #define pr_fmt(fmt) KBUILD_MODNAME ":%s(): " fmt, __func__
 
+#include <linux/filter.h>
 #include <linux/fs.h>
 #include <linux/init.h>
 #include <linux/module.h>
index 0a9349a02cadc699db37637bef9ca434b91e510a..492a26d3c3f12419e236d53d1135e7b36eeca733 100644 (file)
@@ -7,6 +7,7 @@
  * Copyright (c) 2016 Jiri Pirko <jiri@mellanox.com>
  */
 
+#include <linux/etherdevice.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/types.h>
index 257976cb55cee86ae16623e240c553eb78ad433f..de1109f2cfcf81e37af017b97e9d1fb40d700ce2 100644 (file)
@@ -5,6 +5,7 @@
 #include <linux/ip.h>
 #include <linux/ipv6.h>
 #include <linux/if_vlan.h>
+#include <linux/filter.h>
 #include <net/dsa.h>
 #include <net/dst_metadata.h>
 #include <net/ip.h>
index 2f7940bcf7151e25eb892b6b4e3a227119628c80..349480ef68a51e82435b5e201b57601b8446de01 100644 (file)
@@ -2,6 +2,7 @@
 /* Copyright (c) 2016 Thomas Graf <tgraf@tgraf.ch>
  */
 
+#include <linux/filter.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/skbuff.h>
index c9c45b935f9900ddc05d3604e893c0b3c6386206..f7cf74cdd3db1f7f0783db88fc28fd876fbac4b6 100644 (file)
@@ -1,5 +1,6 @@
 /* License: GPL */
 
+#include <linux/filter.h>
 #include <linux/mutex.h>
 #include <linux/socket.h>
 #include <linux/skbuff.h>
index 5f88526ad61cc9480ba02cc2318711942d73a655..7b4d485aac7ab6b00fca45803a675471a0941523 100644 (file)
@@ -6,6 +6,7 @@
  * Added /proc/sys/net/core directory entry (empty =) ). [MS]
  */
 
+#include <linux/filter.h>
 #include <linux/mm.h>
 #include <linux/sysctl.h>
 #include <linux/module.h>
index 7ab788f41a3fbb189b0f7bbe6bc4e641370b92cc..c59be5b04479b4dccef992adbbbe71d99c961ffe 100644 (file)
@@ -38,6 +38,7 @@
 *******************************************************************************/
 
 #include <linux/errno.h>
+#include <linux/filter.h>
 #include <linux/types.h>
 #include <linux/socket.h>
 #include <linux/in.h>
index 38ce5129a33dc74711641ed2d6b90a8de40eb452..0194a969c9b5959d678da0f04aadf2964d631ce9 100644 (file)
@@ -8,6 +8,7 @@
 #define __DSA_PRIV_H
 
 #include <linux/if_bridge.h>
+#include <linux/if_vlan.h>
 #include <linux/phy.h>
 #include <linux/netdevice.h>
 #include <linux/netpoll.h>
index 9a113d89352123acf56ec598c191bb75985c6be5..b2cdba1b4aaec31df5a584e1b768a45c19cff3c0 100644 (file)
@@ -8,6 +8,7 @@
  */
 
 #include <linux/compat.h>
+#include <linux/etherdevice.h>
 #include <linux/module.h>
 #include <linux/types.h>
 #include <linux/capability.h>
index 1319d093cddaf6f3b09db1f6932bfe04e3548c5e..eeafeccebb8d44629085f504e26cb4e171c8c782 100644 (file)
@@ -8,6 +8,7 @@
 #include <linux/nexthop.h>
 #include <linux/rtnetlink.h>
 #include <linux/slab.h>
+#include <linux/vmalloc.h>
 #include <net/arp.h>
 #include <net/ipv6_stubs.h>
 #include <net/lwtunnel.h>
index 0371d2c1414555f56024321f1fc8510c477ea680..463c37dea449749ac0feedeb731b628b75133bba 100644 (file)
@@ -15,6 +15,7 @@
 
 #define pr_fmt(fmt) "IPv6: " fmt
 
+#include <linux/bpf.h>
 #include <linux/errno.h>
 #include <linux/types.h>
 #include <linux/net.h>
index 2dc40b3f373efb0b9f574fdc99522b4d460a8a61..a5eea182149da364924778fa212d70504400d7e9 100644 (file)
@@ -7,6 +7,7 @@
  *  eBPF support: Mathieu Xhonneux <m.xhonneux@gmail.com>
  */
 
+#include <linux/filter.h>
 #include <linux/types.h>
 #include <linux/skbuff.h>
 #include <linux/net.h>
index 49ecbe8d176acd0b8350d1d50d23c202aa57008b..a1760add5bf1e758975aba33a051b8cf1542c6dd 100644 (file)
@@ -13,6 +13,7 @@
 #define KMSG_COMPONENT "af_iucv"
 #define pr_fmt(fmt) KMSG_COMPONENT ": " fmt
 
+#include <linux/filter.h>
 #include <linux/module.h>
 #include <linux/netdevice.h>
 #include <linux/types.h>
index 11a715d76a4f17408cf547cce227a6aa16f41ef8..71899e5a5a11133aded2410210092b8553cfd042 100644 (file)
@@ -9,6 +9,7 @@
 #include <linux/errno.h>
 #include <linux/errqueue.h>
 #include <linux/file.h>
+#include <linux/filter.h>
 #include <linux/in.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
index d5c719c9e36ca8228ac1526df00006a798260765..71e29adac48b49470de25ebac25167b23a9f4514 100644 (file)
@@ -6,6 +6,7 @@
  */
 
 #include <linux/module.h>
+#include <linux/kallsyms.h>
 #include <linux/kernel.h>
 #include <linux/types.h>
 #include <linux/skbuff.h>
index d89f68754f4260f93892a21838c029de43164eef..61cd8c4ac385b3415af1311ffc3f78e856af546d 100644 (file)
@@ -4,6 +4,7 @@
  * Copyright (c) 2020 Jose M. Guisado <guigom@riseup.net>
  */
 
+#include <linux/etherdevice.h>
 #include <linux/kernel.h>
 #include <linux/init.h>
 #include <linux/module.h>
index 4be2d97ff93e10e8aed9205d47aeb80dc88e59a9..7b344035bfe3fbf423f5fc1400c7cc1e44f53f41 100644 (file)
 
 #include <linux/module.h>
 
+#include <linux/bpf.h>
 #include <linux/capability.h>
 #include <linux/kernel.h>
+#include <linux/filter.h>
 #include <linux/init.h>
 #include <linux/signal.h>
 #include <linux/sched.h>
index a1ffdb48cc474dcf91bddfd1ab96386a89c20375..3ca4f890371a1708c1854adbcdffa97cf02f534c 100644 (file)
@@ -49,6 +49,7 @@
 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
 
 #include <linux/ethtool.h>
+#include <linux/filter.h>
 #include <linux/types.h>
 #include <linux/mm.h>
 #include <linux/capability.h>
index 6af786d66b03a9ae764cd34f296da7d1569948c7..4d67f36dce1b4961aef4ecebe775a9675490832d 100644 (file)
@@ -9,6 +9,7 @@
  * diagrams as the code is not obvious and probably very easy to break.
  */
 #include <linux/errno.h>
+#include <linux/filter.h>
 #include <linux/types.h>
 #include <linux/socket.h>
 #include <linux/in.h>
index 8c06381391d6feecaa792f6046c65b8951473f42..cd85a69820b12763b88b0045997f1dd9b34e942f 100644 (file)
@@ -1,4 +1,5 @@
 // SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB
+#include <linux/if_vlan.h>
 #include <net/netlink.h>
 #include <net/sch_generic.h>
 #include <net/dst.h>
index d93055ec17ae86cbaee63cc35943a71a118d1a74..905604c378adbe398adb7ada629aec42affab00d 100644 (file)
@@ -12,6 +12,8 @@
  *  Author(s):  Ursula Braun <ubraun@linux.vnet.ibm.com>
  */
 
+#include <linux/etherdevice.h>
+#include <linux/if_vlan.h>
 #include <linux/random.h>
 #include <linux/workqueue.h>
 #include <linux/scatterlist.h>
index fd28cc498b984b1bc9e7ac4bef313e36dc332243..a2084ecdb97e0691f2fa2a7581501fa1c0eb08ee 100644 (file)
@@ -6,6 +6,7 @@
  * Copyright IBM Corp. 2018
  */
 
+#include <linux/if_vlan.h>
 #include <linux/spinlock.h>
 #include <linux/mutex.h>
 #include <linux/slab.h>
index 4d6e33bbd446b67a1c824073e7125cb010f6ccb1..c19569819866eed2dc4c2c3fb90931fcf407acab 100644 (file)
@@ -89,6 +89,7 @@
 #include <linux/socket.h>
 #include <linux/un.h>
 #include <linux/fcntl.h>
+#include <linux/filter.h>
 #include <linux/termios.h>
 #include <linux/sockios.h>
 #include <linux/net.h>
index ed0df839c38ce68882047129d7514370b453f4c4..3235261f138db3a583b5e842dbf7c12dafa5dae4 100644 (file)
@@ -85,6 +85,7 @@
  *   TCP_LISTEN - listening
  */
 
+#include <linux/compat.h>
 #include <linux/types.h>
 #include <linux/bitops.h>
 #include <linux/cred.h>
index 2e48d0e094d97633310f2b869c80579380e24d6f..65b53fb3de13dfb910557758f9637cb5d5d2e93b 100644 (file)
@@ -4,6 +4,7 @@
  */
 
 #include <linux/bpf.h>
+#include <linux/filter.h>
 #include <linux/capability.h>
 #include <net/xdp_sock.h>
 #include <linux/slab.h>
index a2f4001221d160266a71423a89ccf965630e8dcf..0407272a990c7e02a59d09083a208deb5a3fc333 100644 (file)
@@ -14,6 +14,7 @@
  *
  */
 
+#include <linux/compat.h>
 #include <linux/workqueue.h>
 #include <net/xfrm.h>
 #include <linux/pfkeyv2.h>
index 7c36cc1f3d79c2df16a35077031b74bd2dce730a..e3e26f4da6c216440b8921b482365a1ff3dc0300 100644 (file)
@@ -11,6 +11,7 @@
  *
  */
 
+#include <linux/compat.h>
 #include <linux/crypto.h>
 #include <linux/module.h>
 #include <linux/kernel.h>