net: don't include ethtool.h from netdevice.h
authorJakub Kicinski <kuba@kernel.org>
Fri, 20 Nov 2020 22:50:52 +0000 (14:50 -0800)
committerJakub Kicinski <kuba@kernel.org>
Tue, 24 Nov 2020 01:27:04 +0000 (17:27 -0800)
commitcc69837fcaf467426ca19e5790085c26146a2300
tree94d2635912fdbe8873a928760551ac112a67115c
parent7fd6372e273e67d6d8b49a3cd8d9a00b44d92e97
net: don't include ethtool.h from netdevice.h

linux/netdevice.h is included in very many places, touching any
of its dependecies causes large incremental builds.

Drop the linux/ethtool.h include, linux/netdevice.h just needs
a forward declaration of struct ethtool_ops.

Fix all the places which made use of this implicit include.

Acked-by: Johannes Berg <johannes@sipsolutions.net>
Acked-by: Shannon Nelson <snelson@pensando.io>
Reviewed-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Link: https://lore.kernel.org/r/20201120225052.1427503-1-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
45 files changed:
drivers/isdn/capi/capi.c
drivers/media/pci/ttpci/av7110_av.c
drivers/net/bonding/bond_procfs.c
drivers/net/can/usb/gs_usb.c
drivers/net/ethernet/amazon/ena/ena_ethtool.c
drivers/net/ethernet/aquantia/atlantic/aq_nic.h
drivers/net/ethernet/broadcom/bnxt/bnxt.h
drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c
drivers/net/ethernet/cavium/liquidio/lio_ethtool.c
drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c
drivers/net/ethernet/chelsio/cxgb4/cxgb4.h
drivers/net/ethernet/chelsio/cxgb4vf/t4vf_hw.c
drivers/net/ethernet/google/gve/gve_ethtool.c
drivers/net/ethernet/hisilicon/hns3/hnae3.h
drivers/net/ethernet/huawei/hinic/hinic_port.h
drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c
drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.h
drivers/net/ethernet/mellanox/mlx4/mlx4_en.h
drivers/net/ethernet/mellanox/mlxsw/core_env.h
drivers/net/ethernet/mellanox/mlxsw/spectrum.h
drivers/net/ethernet/mellanox/mlxsw/switchx2.c
drivers/net/ethernet/pensando/ionic/ionic_lif.c
drivers/net/ethernet/pensando/ionic/ionic_stats.c
drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.c
drivers/net/geneve.c
drivers/net/hyperv/netvsc_drv.c
drivers/net/hyperv/rndis_filter.c
drivers/net/ipvlan/ipvlan_main.c
drivers/net/nlmon.c
drivers/net/team/team.c
drivers/net/vrf.c
drivers/net/vsockmon.c
drivers/scsi/bnx2fc/bnx2fc_fcoe.c
drivers/scsi/fcoe/fcoe_transport.c
drivers/staging/fsl-dpaa2/ethsw/ethsw-ethtool.c
drivers/staging/wimax/i2400m/usb.c
include/linux/netdevice.h
include/linux/qed/qed_if.h
include/net/cfg80211.h
include/rdma/ib_addr.h
include/rdma/ib_verbs.h
net/packet/af_packet.c
net/sched/sch_cbs.c
net/sched/sch_taprio.c
net/socket.c