65c93628 | 18-Mar-2020 |
Martin KaFai Lau <kafai@fb.com> |
bpftool: Add struct_ops support
This patch adds struct_ops support to the bpftool.
To recap a bit on the recent bpf_struct_ops feature on the kernel side: It currently supports "struct tcp_congesti
bpftool: Add struct_ops support
This patch adds struct_ops support to the bpftool.
To recap a bit on the recent bpf_struct_ops feature on the kernel side: It currently supports "struct tcp_congestion_ops" to be implemented in bpf. At a high level, bpf_struct_ops is struct_ops map populated with a number of bpf progs. bpf_struct_ops currently supports the "struct tcp_congestion_ops". However, the bpf_struct_ops design is generic enough that other kernel struct ops can be supported in the future.
Although struct_ops is map+progs at a high lever, there are differences in details. For example, 1) After registering a struct_ops, the struct_ops is held by the kernel subsystem (e.g. tcp-cc). Thus, there is no need to pin a struct_ops map or its progs in order to keep them around. 2) To iterate all struct_ops in a system, it iterates all maps in type BPF_MAP_TYPE_STRUCT_OPS. BPF_MAP_TYPE_STRUCT_OPS is the current usual filter. In the future, it may need to filter by other struct_ops specific properties. e.g. filter by tcp_congestion_ops or other kernel subsystem ops in the future. 3) struct_ops requires the running kernel having BTF info. That allows more flexibility in handling other kernel structs. e.g. it can always dump the latest bpf_map_info. 4) Also, "struct_ops" command is not intended to repeat all features already provided by "map" or "prog". For example, if there really is a need to pin the struct_ops map, the user can use the "map" cmd to do that.
While the first attempt was to reuse parts from map/prog.c, it ended up not a lot to share. The only obvious item is the map_parse_fds() but that still requires modifications to accommodate struct_ops map specific filtering (for the immediate and the future needs). Together with the earlier mentioned differences, it is better to part away from map/prog.c.
The initial set of subcmds are, register, unregister, show, and dump.
For register, it registers all struct_ops maps that can be found in an obj file. Option can be added in the future to specify a particular struct_ops map. Also, the common bpf_tcp_cc is stateless (e.g. bpf_cubic.c and bpf_dctcp.c). The "reuse map" feature is not implemented in this patch and it can be considered later also.
For other subcmds, please see the man doc for details.
A sample output of dump: [root@arch-fb-vm1 bpf]# bpftool struct_ops dump name cubic [{ "bpf_map_info": { "type": 26, "id": 64, "key_size": 4, "value_size": 256, "max_entries": 1, "map_flags": 0, "name": "cubic", "ifindex": 0, "btf_vmlinux_value_type_id": 18452, "netns_dev": 0, "netns_ino": 0, "btf_id": 52, "btf_key_type_id": 0, "btf_value_type_id": 0 } },{ "bpf_struct_ops_tcp_congestion_ops": { "refcnt": { "refs": { "counter": 1 } }, "state": "BPF_STRUCT_OPS_STATE_INUSE", "data": { "list": { "next": 0, "prev": 0 }, "key": 0, "flags": 0, "init": "void (struct sock *) bictcp_init/prog_id:138", "release": "void (struct sock *) 0", "ssthresh": "u32 (struct sock *) bictcp_recalc_ssthresh/prog_id:141", "cong_avoid": "void (struct sock *, u32, u32) bictcp_cong_avoid/prog_id:140", "set_state": "void (struct sock *, u8) bictcp_state/prog_id:142", "cwnd_event": "void (struct sock *, enum tcp_ca_event) bictcp_cwnd_event/prog_id:139", "in_ack_event": "void (struct sock *, u32) 0", "undo_cwnd": "u32 (struct sock *) tcp_reno_undo_cwnd/prog_id:144", "pkts_acked": "void (struct sock *, const struct ack_sample *) bictcp_acked/prog_id:143", "min_tso_segs": "u32 (struct sock *) 0", "sndbuf_expand": "u32 (struct sock *) 0", "cong_control": "void (struct sock *, const struct rate_sample *) 0", "get_info": "size_t (struct sock *, u32, int *, union tcp_cc_info *) 0", "name": "bpf_cubic", "owner": 0 } } } ]
Signed-off-by: Martin KaFai Lau <kafai@fb.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: Quentin Monnet <quentin@isovalent.com> Link: https://lore.kernel.org/bpf/20200318171656.129650-1-kafai@fb.com
show more ...
/linux/.clang-format/linux/.gitignore/linux/Documentation/admin-guide/acpi/fan_performance_states.rst/linux/Documentation/admin-guide/kernel-parameters.txt/linux/Documentation/devicetree/bindings/arm/arm,scmi.txt/linux/Documentation/devicetree/bindings/arm/arm,scpi.txt/linux/Documentation/devicetree/bindings/arm/bcm/brcm,bcm63138.txt/linux/Documentation/devicetree/bindings/arm/cpus.yaml/linux/Documentation/devicetree/bindings/arm/fsl.yaml/linux/Documentation/devicetree/bindings/arm/hisilicon/hi3519-sysctrl.txt/linux/Documentation/devicetree/bindings/arm/msm/qcom,idle-state.txt/linux/Documentation/devicetree/bindings/arm/omap/mpu.txt/linux/Documentation/devicetree/bindings/arm/psci.yaml/linux/Documentation/devicetree/bindings/arm/stm32/st,mlahb.yaml/linux/Documentation/devicetree/bindings/bus/allwinner,sun8i-a23-rsb.yaml/linux/Documentation/devicetree/bindings/clock/allwinner,sun4i-a10-osc-clk.yaml/linux/Documentation/devicetree/bindings/clock/allwinner,sun9i-a80-gt-clk.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml/linux/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-tv-encoder.yaml/linux/Documentation/devicetree/bindings/display/bridge/anx6345.yaml/linux/Documentation/devicetree/bindings/display/panel/leadtek,ltk500hd1829.yaml/linux/Documentation/devicetree/bindings/display/panel/xinpeng,xpp055c272.yaml/linux/Documentation/devicetree/bindings/display/simple-framebuffer.yaml/linux/Documentation/devicetree/bindings/display/tilcdc/tilcdc.txt/linux/Documentation/devicetree/bindings/dma/ti/k3-udma.yaml/linux/Documentation/devicetree/bindings/gpu/arm,mali-bifrost.yaml/linux/Documentation/devicetree/bindings/gpu/arm,mali-midgard.yaml/linux/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml/linux/Documentation/devicetree/bindings/input/touchscreen/goodix.yaml/linux/Documentation/devicetree/bindings/input/twl4030-pwrbutton.txt/linux/Documentation/devicetree/bindings/leds/common.yaml/linux/Documentation/devicetree/bindings/leds/register-bit-led.txt/linux/Documentation/devicetree/bindings/media/ti,cal.yaml/linux/Documentation/devicetree/bindings/memory-controllers/ti/emif.txt/linux/Documentation/devicetree/bindings/mfd/max77650.yaml/linux/Documentation/devicetree/bindings/mfd/tps65910.txt/linux/Documentation/devicetree/bindings/mfd/twl-family.txt/linux/Documentation/devicetree/bindings/mfd/zii,rave-sp.txt/linux/Documentation/devicetree/bindings/misc/fsl,qoriq-mc.txt/linux/Documentation/devicetree/bindings/mmc/mmc-controller.yaml/linux/Documentation/devicetree/bindings/mtd/cadence-nand-controller.txt/linux/Documentation/devicetree/bindings/net/brcm,bcm7445-switch-v4.0.txt/linux/Documentation/devicetree/bindings/net/fsl-fman.txt/linux/Documentation/devicetree/bindings/net/qcom,ipa.yaml/linux/Documentation/devicetree/bindings/net/qcom,ipq8064-mdio.yaml/linux/Documentation/devicetree/bindings/net/wireless/mediatek,mt76.txt/linux/Documentation/devicetree/bindings/net/wireless/ti,wl1251.txt/linux/Documentation/devicetree/bindings/nvmem/nvmem.yaml/linux/Documentation/devicetree/bindings/phy/allwinner,sun4i-a10-usb-phy.yaml/linux/Documentation/devicetree/bindings/pinctrl/aspeed,ast2400-pinctrl.yaml/linux/Documentation/devicetree/bindings/pinctrl/aspeed,ast2500-pinctrl.yaml/linux/Documentation/devicetree/bindings/pinctrl/aspeed,ast2600-pinctrl.yaml/linux/Documentation/devicetree/bindings/pinctrl/st,stm32-pinctrl.yaml/linux/Documentation/devicetree/bindings/power/amlogic,meson-ee-pwrc.yaml/linux/Documentation/devicetree/bindings/power/domain-idle-state.yaml/linux/Documentation/devicetree/bindings/power/power-domain.yaml/linux/Documentation/devicetree/bindings/power/power_domain.txt/linux/Documentation/devicetree/bindings/regulator/qcom,spmi-regulator.txt/linux/Documentation/devicetree/bindings/regulator/regulator.yaml/linux/Documentation/devicetree/bindings/reset/intel,rcu-gw.yaml/linux/Documentation/devicetree/bindings/reset/st,stm32mp1-rcc.txt/linux/Documentation/devicetree/bindings/sound/st,stm32-sai.txt/linux/Documentation/devicetree/bindings/sound/st,stm32-spdifrx.txt/linux/Documentation/devicetree/bindings/spi/st,stm32-spi.yaml/linux/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml/linux/Documentation/devicetree/bindings/thermal/brcm,avs-ro-thermal.yaml/linux/Documentation/devicetree/bindings/timer/allwinner,sun4i-a10-timer.yaml/linux/Documentation/driver-api/dmaengine/client.rst/linux/Documentation/filesystems/debugfs.txt/linux/Documentation/filesystems/porting.rst/linux/Documentation/hwmon/adm1177.rst/linux/Documentation/networking/devlink/devlink-region.rst/linux/Documentation/networking/ethtool-netlink.rst/linux/Documentation/networking/ip-sysctl.txt/linux/Documentation/networking/net_failover.rst/linux/Documentation/networking/rds.txt/linux/Documentation/networking/sfp-phylink.rst/linux/Documentation/power/index.rst/linux/MAINTAINERS/linux/Makefile/linux/arch/Kconfig/linux/arch/arm/boot/dts/am437x-idk-evm.dts/linux/arch/arm/boot/dts/bcm2711-rpi-4-b.dts/linux/arch/arm/boot/dts/bcm2837-rpi-3-a-plus.dts/linux/arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts/linux/arch/arm/boot/dts/dra7-evm.dts/linux/arch/arm/boot/dts/dra7-l4.dtsi/linux/arch/arm/boot/dts/dra7.dtsi/linux/arch/arm/boot/dts/dra76x.dtsi/linux/arch/arm/boot/dts/dra7xx-clocks.dtsi/linux/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts/linux/arch/arm/boot/dts/imx6qdl-phytec-phycore-som.dtsi/linux/arch/arm/boot/dts/imx7-colibri.dtsi/linux/arch/arm/boot/dts/imx7d.dtsi/linux/arch/arm/boot/dts/ls1021a.dtsi/linux/arch/arm/boot/dts/motorola-mapphone-common.dtsi/linux/arch/arm/boot/dts/r8a7779.dtsi/linux/arch/arm/configs/bcm2835_defconfig/linux/arch/arm/configs/omap2plus_defconfig/linux/arch/arm/configs/socfpga_defconfig/linux/arch/arm/include/asm/kvm_host.h/linux/arch/arm/mach-imx/Makefile/linux/arch/arm/mach-imx/common.h/linux/arch/arm/mach-imx/resume-imx6.S/linux/arch/arm/mach-imx/suspend-imx6.S/linux/arch/arm/mach-meson/Kconfig/linux/arch/arm/mach-omap2/Makefile/linux/arch/arm/mach-omap2/io.c/linux/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts/linux/arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts/linux/arch/arm64/boot/dts/freescale/fsl-ls1043-post.dtsi/linux/arch/arm64/boot/dts/freescale/imx8qxp-mek.dts/linux/arch/arm64/boot/dts/intel/socfpga_agilex.dtsi/linux/arch/arm64/configs/defconfig/linux/arch/arm64/include/asm/arch_gicv3.h/linux/arch/arm64/include/asm/cache.h/linux/arch/arm64/include/asm/cacheflush.h/linux/arch/arm64/include/asm/cpufeature.h/linux/arch/arm64/include/asm/io.h/linux/arch/arm64/include/asm/kvm_emulate.h/linux/arch/arm64/include/asm/kvm_host.h/linux/arch/arm64/include/asm/kvm_hyp.h/linux/arch/arm64/include/asm/kvm_mmu.h/linux/arch/arm64/include/asm/virt.h/linux/arch/arm64/kvm/hyp/switch.c/linux/arch/arm64/kvm/hyp/vgic-v2-cpuif-proxy.c/linux/arch/arm64/mm/context.c/linux/arch/mips/boot/dts/ingenic/ci20.dts/linux/arch/mips/kernel/setup.c/linux/arch/powerpc/kernel/cputable.c/linux/arch/powerpc/kernel/hw_breakpoint.c/linux/arch/powerpc/mm/mem.c/linux/arch/riscv/Kconfig/linux/arch/riscv/Kconfig.socs/linux/arch/riscv/Makefile/linux/arch/riscv/boot/dts/sifive/hifive-unleashed-a00.dts/linux/arch/riscv/configs/defconfig/linux/arch/riscv/configs/rv32_defconfig/linux/arch/riscv/include/asm/syscall.h/linux/arch/riscv/kernel/entry.S/linux/arch/riscv/kernel/module.c/linux/arch/riscv/kernel/ptrace.c/linux/arch/riscv/mm/init.c/linux/arch/s390/include/asm/pgtable.h/linux/arch/s390/pci/pci.c/linux/arch/um/drivers/vector_kern.c/linux/arch/x86/Makefile/linux/arch/x86/crypto/Makefile/linux/arch/x86/include/asm/io_bitmap.h/linux/arch/x86/include/asm/paravirt.h/linux/arch/x86/include/asm/paravirt_types.h/linux/arch/x86/kernel/cpu/common.c/linux/arch/x86/kernel/kvm.c/linux/arch/x86/kernel/paravirt.c/linux/arch/x86/kernel/process.c/linux/arch/x86/kvm/Kconfig/linux/arch/x86/kvm/Makefile/linux/arch/x86/kvm/svm.c/linux/arch/x86/kvm/vmx/vmx.c/linux/arch/x86/kvm/x86.c/linux/arch/x86/mm/dump_pagetables.c/linux/arch/x86/mm/init_32.c/linux/arch/x86/net/bpf_jit_comp.c/linux/arch/x86/platform/efi/efi_64.c/linux/arch/x86/xen/enlighten_pv.c/linux/block/bfq-cgroup.c/linux/block/blk-core.c/linux/block/blk-flush.c/linux/block/blk-mq-sched.c/linux/block/blk-mq-tag.c/linux/block/blk-mq-tag.h/linux/block/blk-mq.c/linux/block/blk-mq.h/linux/drivers/acpi/acpi_watchdog.c/linux/drivers/android/binder.c/linux/drivers/android/binder_internal.h/linux/drivers/android/binderfs.c/linux/drivers/atm/nicstar.c/linux/drivers/auxdisplay/Kconfig/linux/drivers/auxdisplay/charlcd.c/linux/drivers/auxdisplay/img-ascii-lcd.c/linux/drivers/base/core.c/linux/drivers/base/platform.c/linux/drivers/base/swnode.c/linux/drivers/block/null_blk.h/linux/drivers/block/null_blk_main.c/linux/drivers/block/paride/pcd.c/linux/drivers/block/virtio_blk.c/linux/drivers/block/xen-blkfront.c/linux/drivers/bus/ti-sysc.c/linux/drivers/cdrom/gdrom.c/linux/drivers/char/ipmi/ipmi_si_platform.c/linux/drivers/cpufreq/cpufreq.c/linux/drivers/crypto/chelsio/Kconfig/linux/drivers/crypto/chelsio/Makefile/linux/drivers/crypto/chelsio/chcr_common.h/linux/drivers/crypto/chelsio/chcr_core.c/linux/drivers/crypto/chelsio/chcr_core.h/linux/drivers/crypto/chelsio/chcr_ktls.c/linux/drivers/crypto/chelsio/chcr_ktls.h/linux/drivers/devfreq/devfreq.c/linux/drivers/dma-buf/dma-buf.c/linux/drivers/dma/coh901318.c/linux/drivers/dma/idxd/cdev.c/linux/drivers/dma/idxd/sysfs.c/linux/drivers/dma/imx-sdma.c/linux/drivers/dma/tegra20-apb-dma.c/linux/drivers/dma/ti/k3-udma.c/linux/drivers/edac/synopsys_edac.c/linux/drivers/firmware/efi/efi.c/linux/drivers/firmware/imx/imx-scu.c/linux/drivers/firmware/imx/misc.c/linux/drivers/firmware/imx/scu-pd.c/linux/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c/linux/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.h/linux/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c/linux/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c/linux/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c/linux/drivers/gpu/drm/amd/amdgpu/soc15.c/linux/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c/linux/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c/linux/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubbub.c/linux/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c/linux/drivers/gpu/drm/amd/include/asic_reg/dce/dce_12_0_offset.h/linux/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c/linux/drivers/gpu/drm/amd/powerplay/navi10_ppt.c/linux/drivers/gpu/drm/amd/powerplay/renoir_ppt.c/linux/drivers/gpu/drm/amd/powerplay/smu_v11_0.c/linux/drivers/gpu/drm/amd/powerplay/smu_v12_0.c/linux/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c/linux/drivers/gpu/drm/drm_dp_mst_topology.c/linux/drivers/gpu/drm/drm_gem_shmem_helper.c/linux/drivers/gpu/drm/exynos/exynos5433_drm_decon.c/linux/drivers/gpu/drm/exynos/exynos7_drm_decon.c/linux/drivers/gpu/drm/exynos/exynos_drm_dma.c/linux/drivers/gpu/drm/exynos/exynos_drm_drv.h/linux/drivers/gpu/drm/exynos/exynos_drm_dsi.c/linux/drivers/gpu/drm/exynos/exynos_drm_fimc.c/linux/drivers/gpu/drm/exynos/exynos_drm_fimd.c/linux/drivers/gpu/drm/exynos/exynos_drm_g2d.c/linux/drivers/gpu/drm/exynos/exynos_drm_gsc.c/linux/drivers/gpu/drm/exynos/exynos_drm_rotator.c/linux/drivers/gpu/drm/exynos/exynos_drm_scaler.c/linux/drivers/gpu/drm/exynos/exynos_hdmi.c/linux/drivers/gpu/drm/exynos/exynos_mixer.c/linux/drivers/gpu/drm/hisilicon/kirin/kirin_ade_reg.h/linux/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c/linux/drivers/gpu/drm/i915/Makefile/linux/drivers/gpu/drm/i915/display/intel_display_power.c/linux/drivers/gpu/drm/i915/display/intel_psr.c/linux/drivers/gpu/drm/i915/display/intel_psr.h/linux/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c/linux/drivers/gpu/drm/i915/gem/i915_gem_object.c/linux/drivers/gpu/drm/i915/gem/i915_gem_shrinker.c/linux/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c/linux/drivers/gpu/drm/i915/gt/intel_gt_requests.c/linux/drivers/gpu/drm/i915/gt/intel_lrc.c/linux/drivers/gpu/drm/i915/gt/intel_timeline.c/linux/drivers/gpu/drm/i915/gt/intel_workarounds.c/linux/drivers/gpu/drm/i915/gvt/display.c/linux/drivers/gpu/drm/i915/gvt/dmabuf.c/linux/drivers/gpu/drm/i915/gvt/opregion.c/linux/drivers/gpu/drm/i915/gvt/vgpu.c/linux/drivers/gpu/drm/i915/i915_drv.c/linux/drivers/gpu/drm/i915/i915_drv.h/linux/drivers/gpu/drm/i915/i915_pci.c/linux/drivers/gpu/drm/i915/i915_perf.c/linux/drivers/gpu/drm/i915/i915_perf_types.h/linux/drivers/gpu/drm/i915/i915_pmu.c/linux/drivers/gpu/drm/i915/i915_pmu.h/linux/drivers/gpu/drm/i915/i915_reg.h/linux/drivers/gpu/drm/i915/i915_request.c/linux/drivers/gpu/drm/i915/i915_request.h/linux/drivers/gpu/drm/i915/i915_utils.h/linux/drivers/gpu/drm/mediatek/mtk_drm_crtc.c/linux/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c/linux/drivers/gpu/drm/mediatek/mtk_drm_plane.c/linux/drivers/gpu/drm/panfrost/panfrost_mmu.c/linux/drivers/gpu/drm/radeon/radeon_drv.c/linux/drivers/gpu/drm/radeon/radeon_kms.c/linux/drivers/gpu/drm/sun4i/sun8i_mixer.c/linux/drivers/gpu/drm/sun4i/sun8i_mixer.h/linux/drivers/gpu/drm/sun4i/sun8i_vi_layer.c/linux/drivers/gpu/drm/ttm/ttm_bo_util.c/linux/drivers/gpu/drm/virtio/virtgpu_object.c/linux/drivers/hid/hid-hyperv.c/linux/drivers/hwmon/adt7462.c/linux/drivers/hwmon/pmbus/xdpe12284.c/linux/drivers/i2c/busses/i2c-altera.c/linux/drivers/i2c/busses/i2c-jz4780.c/linux/drivers/ide/ide-gd.c/linux/drivers/infiniband/core/cm.c/linux/drivers/infiniband/core/cma.c/linux/drivers/infiniband/core/core_priv.h/linux/drivers/infiniband/core/iwcm.c/linux/drivers/infiniband/core/nldev.c/linux/drivers/infiniband/core/rw.c/linux/drivers/infiniband/core/security.c/linux/drivers/infiniband/core/umem_odp.c/linux/drivers/infiniband/core/uverbs_cmd.c/linux/drivers/infiniband/core/verbs.c/linux/drivers/infiniband/hw/hfi1/verbs.c/linux/drivers/infiniband/hw/mlx5/main.c/linux/drivers/infiniband/hw/mlx5/mlx5_ib.h/linux/drivers/infiniband/hw/mlx5/odp.c/linux/drivers/infiniband/hw/qib/qib_verbs.c/linux/drivers/infiniband/sw/siw/siw_main.c/linux/drivers/infiniband/ulp/ipoib/ipoib_ethtool.c/linux/drivers/interconnect/core.c/linux/drivers/macintosh/therm_windtunnel.c/linux/drivers/md/bcache/alloc.c/linux/drivers/md/bcache/btree.c/linux/drivers/md/dm-bio-record.h/linux/drivers/md/dm-cache-target.c/linux/drivers/md/dm-integrity.c/linux/drivers/md/dm-mpath.c/linux/drivers/md/dm-thin-metadata.c/linux/drivers/md/dm-verity-target.c/linux/drivers/md/dm-writecache.c/linux/drivers/md/dm-zoned-target.c/linux/drivers/md/dm.c/linux/drivers/media/mc/mc-entity.c/linux/drivers/media/platform/vicodec/codec-v4l2-fwht.c/linux/drivers/media/usb/pulse8-cec/pulse8-cec.c/linux/drivers/media/v4l2-core/v4l2-mem2mem.c/linux/drivers/misc/altera-stapl/altera.c/linux/drivers/mmc/host/sdhci-msm.c/linux/drivers/mmc/host/sdhci-pci-gli.c/linux/drivers/net/Kconfig/linux/drivers/net/Makefile/linux/drivers/net/bareudp.c/linux/drivers/net/bonding/bond_alb.c/linux/drivers/net/can/dev.c/linux/drivers/net/can/slcan.c/linux/drivers/net/dsa/microchip/ksz_common.c/linux/drivers/net/dsa/microchip/ksz_common.h/linux/drivers/net/dsa/mt7530.c/linux/drivers/net/dsa/mt7530.h/linux/drivers/net/dsa/mv88e6xxx/chip.c/linux/drivers/net/dsa/mv88e6xxx/chip.h/linux/drivers/net/dsa/mv88e6xxx/global2.c/linux/drivers/net/dsa/mv88e6xxx/port.c/linux/drivers/net/dsa/mv88e6xxx/port.h/linux/drivers/net/dsa/mv88e6xxx/serdes.c/linux/drivers/net/dsa/mv88e6xxx/serdes.h/linux/drivers/net/dsa/ocelot/felix.c/linux/drivers/net/dsa/ocelot/felix.h/linux/drivers/net/dsa/ocelot/felix_vsc9959.c/linux/drivers/net/dsa/sja1105/sja1105_main.c/linux/drivers/net/ethernet/amazon/ena/ena_ethtool.c/linux/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c/linux/drivers/net/ethernet/aquantia/atlantic/aq_ethtool.c/linux/drivers/net/ethernet/broadcom/b44.c/linux/drivers/net/ethernet/broadcom/bcm63xx_enet.c/linux/drivers/net/ethernet/broadcom/bcmsysport.c/linux/drivers/net/ethernet/broadcom/bnx2.c/linux/drivers/net/ethernet/broadcom/bnx2x/bnx2x.h/linux/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c/linux/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c/linux/drivers/net/ethernet/broadcom/bnxt/bnxt.c/linux/drivers/net/ethernet/broadcom/bnxt/bnxt.h/linux/drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c/linux/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c/linux/drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c/linux/drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c/linux/drivers/net/ethernet/broadcom/bnxt/bnxt_vfr.c/linux/drivers/net/ethernet/broadcom/genet/bcmgenet.c/linux/drivers/net/ethernet/broadcom/tg3.c/linux/drivers/net/ethernet/brocade/bna/bnad.c/linux/drivers/net/ethernet/brocade/bna/bnad.h/linux/drivers/net/ethernet/brocade/bna/bnad_ethtool.c/linux/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c/linux/drivers/net/ethernet/cavium/liquidio/lio_main.c/linux/drivers/net/ethernet/cavium/liquidio/lio_vf_main.c/linux/drivers/net/ethernet/cavium/liquidio/liquidio_common.h/linux/drivers/net/ethernet/cavium/liquidio/octeon_console.c/linux/drivers/net/ethernet/cavium/octeon/octeon_mgmt.c/linux/drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c/linux/drivers/net/ethernet/chelsio/cxgb/common.h/linux/drivers/net/ethernet/chelsio/cxgb/cxgb2.c/linux/drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c/linux/drivers/net/ethernet/chelsio/cxgb3/version.h/linux/drivers/net/ethernet/chelsio/cxgb4/cxgb4.h/linux/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c/linux/drivers/net/ethernet/chelsio/cxgb4/cxgb4_ethtool.c/linux/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c/linux/drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c/linux/drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.h/linux/drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_matchall.c/linux/drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.c/linux/drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.h/linux/drivers/net/ethernet/chelsio/cxgb4/l2t.c/linux/drivers/net/ethernet/chelsio/cxgb4/l2t.h/linux/drivers/net/ethernet/chelsio/cxgb4/sge.c/linux/drivers/net/ethernet/chelsio/cxgb4/t4_hw.c/linux/drivers/net/ethernet/chelsio/cxgb4/t4_msg.h/linux/drivers/net/ethernet/chelsio/cxgb4/t4_tcb.h/linux/drivers/net/ethernet/chelsio/cxgb4/t4fw_api.h/linux/drivers/net/ethernet/chelsio/cxgb4vf/cxgb4vf_main.c/linux/drivers/net/ethernet/chelsio/libcxgb/libcxgb_ppm.c/linux/drivers/net/ethernet/cirrus/ep93xx_eth.c/linux/drivers/net/ethernet/cisco/enic/enic.h/linux/drivers/net/ethernet/cisco/enic/enic_ethtool.c/linux/drivers/net/ethernet/cisco/enic/enic_main.c/linux/drivers/net/ethernet/cortina/gemini.c/linux/drivers/net/ethernet/davicom/dm9000.c/linux/drivers/net/ethernet/dec/tulip/de2104x.c/linux/drivers/net/ethernet/dec/tulip/dmfe.c/linux/drivers/net/ethernet/dec/tulip/tulip.h/linux/drivers/net/ethernet/dec/tulip/tulip_core.c/linux/drivers/net/ethernet/dec/tulip/uli526x.c/linux/drivers/net/ethernet/dec/tulip/winbond-840.c/linux/drivers/net/ethernet/dlink/dl2k.c/linux/drivers/net/ethernet/dlink/sundance.c/linux/drivers/net/ethernet/dnet.c/linux/drivers/net/ethernet/dnet.h/linux/drivers/net/ethernet/emulex/benet/be.h/linux/drivers/net/ethernet/emulex/benet/be_ethtool.c/linux/drivers/net/ethernet/emulex/benet/be_main.c/linux/drivers/net/ethernet/faraday/ftgmac100.c/linux/drivers/net/ethernet/faraday/ftmac100.c/linux/drivers/net/ethernet/fealnx.c/linux/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c/linux/drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c/linux/drivers/net/ethernet/freescale/enetc/Kconfig/linux/drivers/net/ethernet/freescale/enetc/enetc.c/linux/drivers/net/ethernet/freescale/enetc/enetc.h/linux/drivers/net/ethernet/freescale/enetc/enetc_ethtool.c/linux/drivers/net/ethernet/freescale/enetc/enetc_hw.h/linux/drivers/net/ethernet/freescale/enetc/enetc_pf.c/linux/drivers/net/ethernet/freescale/enetc/enetc_vf.c/linux/drivers/net/ethernet/freescale/fec_main.c/linux/drivers/net/ethernet/freescale/fman/Kconfig/linux/drivers/net/ethernet/freescale/fman/fman.c/linux/drivers/net/ethernet/freescale/fman/fman.h/linux/drivers/net/ethernet/freescale/fman/fman_dtsec.c/linux/drivers/net/ethernet/freescale/fman/fman_memac.c/linux/drivers/net/ethernet/freescale/fman/fman_tgec.c/linux/drivers/net/ethernet/freescale/fman/mac.c/linux/drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c/linux/drivers/net/ethernet/freescale/fs_enet/fs_enet.h/linux/drivers/net/ethernet/freescale/gianfar.c/linux/drivers/net/ethernet/freescale/gianfar.h/linux/drivers/net/ethernet/freescale/gianfar_ethtool.c/linux/drivers/net/ethernet/freescale/ucc_geth.c/linux/drivers/net/ethernet/freescale/ucc_geth.h/linux/drivers/net/ethernet/freescale/ucc_geth_ethtool.c/linux/drivers/net/ethernet/hisilicon/hip04_eth.c/linux/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c/linux/drivers/net/ethernet/hisilicon/hns3/hclge_mbx.h/linux/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c/linux/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c/linux/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_debugfs.c/linux/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_err.c/linux/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c/linux/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c/linux/drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c/linux/drivers/net/ethernet/ibm/emac/core.c/linux/drivers/net/ethernet/ibm/ibmveth.c/linux/drivers/net/ethernet/ibm/ibmvnic.c/linux/drivers/net/ethernet/ibm/ibmvnic.h/linux/drivers/net/ethernet/intel/e1000/e1000_ethtool.c/linux/drivers/net/ethernet/intel/e1000e/ethtool.c/linux/drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c/linux/drivers/net/ethernet/intel/i40e/i40e_ethtool.c/linux/drivers/net/ethernet/intel/iavf/iavf.h/linux/drivers/net/ethernet/intel/iavf/iavf_ethtool.c/linux/drivers/net/ethernet/intel/iavf/iavf_main.c/linux/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c/linux/drivers/net/ethernet/intel/ice/ice.h/linux/drivers/net/ethernet/intel/ice/ice_common.c/linux/drivers/net/ethernet/intel/ice/ice_dcb_lib.c/linux/drivers/net/ethernet/intel/ice/ice_ethtool.c/linux/drivers/net/ethernet/intel/ice/ice_flow.c/linux/drivers/net/ethernet/intel/ice/ice_lib.c/linux/drivers/net/ethernet/intel/ice/ice_lib.h/linux/drivers/net/ethernet/intel/ice/ice_main.c/linux/drivers/net/ethernet/intel/ice/ice_switch.c/linux/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c/linux/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.h/linux/drivers/net/ethernet/intel/ice/ice_xsk.h/linux/drivers/net/ethernet/intel/igb/igb_ethtool.c/linux/drivers/net/ethernet/intel/igbvf/ethtool.c/linux/drivers/net/ethernet/intel/igc/igc_ethtool.c/linux/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c/linux/drivers/net/ethernet/intel/ixgbe/ixgbe_fcoe.c/linux/drivers/net/ethernet/intel/ixgbevf/ethtool.c/linux/drivers/net/ethernet/jme.c/linux/drivers/net/ethernet/marvell/mv643xx_eth.c/linux/drivers/net/ethernet/marvell/mvmdio.c/linux/drivers/net/ethernet/marvell/mvneta.c/linux/drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c/linux/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c/linux/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c/linux/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c/linux/drivers/net/ethernet/marvell/octeontx2/nic/otx2_ethtool.c/linux/drivers/net/ethernet/marvell/skge.c/linux/drivers/net/ethernet/marvell/skge.h/linux/drivers/net/ethernet/marvell/sky2.c/linux/drivers/net/ethernet/marvell/sky2.h/linux/drivers/net/ethernet/mellanox/mlx4/en_ethtool.c/linux/drivers/net/ethernet/mellanox/mlx5/core/Kconfig/linux/drivers/net/ethernet/mellanox/mlx5/core/Makefile/linux/drivers/net/ethernet/mellanox/mlx5/core/en.h/linux/drivers/net/ethernet/mellanox/mlx5/core/en/devlink.c/linux/drivers/net/ethernet/mellanox/mlx5/core/en/devlink.h/linux/drivers/net/ethernet/mellanox/mlx5/core/en/mapping.c/linux/drivers/net/ethernet/mellanox/mlx5/core/en/mapping.h/linux/drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c/linux/drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.h/linux/drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c/linux/drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.h/linux/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c/linux/drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c/linux/drivers/net/ethernet/mellanox/mlx5/core/en_main.c/linux/drivers/net/ethernet/mellanox/mlx5/core/en_rep.c/linux/drivers/net/ethernet/mellanox/mlx5/core/en_rep.h/linux/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c/linux/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c/linux/drivers/net/ethernet/mellanox/mlx5/core/en_tc.h/linux/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c/linux/drivers/net/ethernet/mellanox/mlx5/core/eswitch.h/linux/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c/linux/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.c/linux/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.h/linux/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c/linux/drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c/linux/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c/linux/drivers/net/ethernet/mellanox/mlx5/core/fs_counters.c/linux/drivers/net/ethernet/mellanox/mlx5/core/ipoib/ethtool.c/linux/drivers/net/ethernet/mellanox/mlx5/core/ipoib/ipoib.h/linux/drivers/net/ethernet/mellanox/mlx5/core/lib/crypto.c/linux/drivers/net/ethernet/mellanox/mlx5/core/rl.c/linux/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_action.c/linux/drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c/linux/drivers/net/ethernet/mellanox/mlx5/core/steering/mlx5dr.h/linux/drivers/net/ethernet/mellanox/mlxfw/mlxfw_mfa2.c/linux/drivers/net/ethernet/mellanox/mlxfw/mlxfw_mfa2_tlv.h/linux/drivers/net/ethernet/mellanox/mlxsw/spectrum.c/linux/drivers/net/ethernet/mellanox/mlxsw/spectrum.h/linux/drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c/linux/drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c/linux/drivers/net/ethernet/mellanox/mlxsw/spectrum_qdisc.c/linux/drivers/net/ethernet/mscc/ocelot.c/linux/drivers/net/ethernet/mscc/ocelot.h/linux/drivers/net/ethernet/mscc/ocelot_ace.c/linux/drivers/net/ethernet/mscc/ocelot_ace.h/linux/drivers/net/ethernet/mscc/ocelot_board.c/linux/drivers/net/ethernet/mscc/ocelot_flower.c/linux/drivers/net/ethernet/mscc/ocelot_tc.c/linux/drivers/net/ethernet/myricom/myri10ge/myri10ge.c/linux/drivers/net/ethernet/netronome/nfp/flower/action.c/linux/drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.c/linux/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000_pcie.c/linux/drivers/net/ethernet/ni/nixge.c/linux/drivers/net/ethernet/pensando/ionic/ionic.h/linux/drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c/linux/drivers/net/ethernet/pensando/ionic/ionic_devlink.c/linux/drivers/net/ethernet/pensando/ionic/ionic_ethtool.c/linux/drivers/net/ethernet/pensando/ionic/ionic_if.h/linux/drivers/net/ethernet/pensando/ionic/ionic_lif.c/linux/drivers/net/ethernet/pensando/ionic/ionic_lif.h/linux/drivers/net/ethernet/pensando/ionic/ionic_main.c/linux/drivers/net/ethernet/pensando/ionic/ionic_stats.c/linux/drivers/net/ethernet/pensando/ionic/ionic_txrx.c/linux/drivers/net/ethernet/qlogic/netxen/netxen_nic_ethtool.c/linux/drivers/net/ethernet/qlogic/qede/qede_ethtool.c/linux/drivers/net/ethernet/qlogic/qede/qede_filter.c/linux/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ethtool.c/linux/drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c/linux/drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.c/linux/drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.h/linux/drivers/net/ethernet/realtek/r8169_main.c/linux/drivers/net/ethernet/samsung/sxgbe/sxgbe_ethtool.c/linux/drivers/net/ethernet/samsung/sxgbe/sxgbe_main.c/linux/drivers/net/ethernet/sfc/ef10.c/linux/drivers/net/ethernet/sfc/ef10_sriov.c/linux/drivers/net/ethernet/sfc/efx.h/linux/drivers/net/ethernet/sfc/efx_channels.c/linux/drivers/net/ethernet/sfc/efx_common.c/linux/drivers/net/ethernet/sfc/ethtool.c/linux/drivers/net/ethernet/sfc/net_driver.h/linux/drivers/net/ethernet/sfc/rx.c/linux/drivers/net/ethernet/sfc/rx_common.c/linux/drivers/net/ethernet/sfc/tx.c/linux/drivers/net/ethernet/sfc/tx_common.c/linux/drivers/net/ethernet/sfc/tx_common.h/linux/drivers/net/ethernet/sgi/ioc3-eth.c/linux/drivers/net/ethernet/stmicro/stmmac/Kconfig/linux/drivers/net/ethernet/stmicro/stmmac/common.h/linux/drivers/net/ethernet/stmicro/stmmac/dwmac1000_core.c/linux/drivers/net/ethernet/stmicro/stmmac/dwmac4_lib.c/linux/drivers/net/ethernet/stmicro/stmmac/hwif.h/linux/drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c/linux/drivers/net/ethernet/stmicro/stmmac/stmmac_hwtstamp.c/linux/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c/linux/drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.c/linux/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c/linux/drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c/linux/drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c/linux/drivers/net/ethernet/sun/cassini.c/linux/drivers/net/ethernet/sun/sungem.c/linux/drivers/net/ethernet/via/via-velocity.c/linux/drivers/net/fddi/skfp/drvfbi.c/linux/drivers/net/fddi/skfp/h/skfbi.h/linux/drivers/net/ieee802154/ca8210.c/linux/drivers/net/ipa/Kconfig/linux/drivers/net/ipa/Makefile/linux/drivers/net/ipa/gsi.c/linux/drivers/net/ipa/gsi.h/linux/drivers/net/ipa/gsi_private.h/linux/drivers/net/ipa/gsi_reg.h/linux/drivers/net/ipa/gsi_trans.c/linux/drivers/net/ipa/gsi_trans.h/linux/drivers/net/ipa/ipa.h/linux/drivers/net/ipa/ipa_clock.c/linux/drivers/net/ipa/ipa_clock.h/linux/drivers/net/ipa/ipa_cmd.c/linux/drivers/net/ipa/ipa_cmd.h/linux/drivers/net/ipa/ipa_data-sc7180.c/linux/drivers/net/ipa/ipa_data-sdm845.c/linux/drivers/net/ipa/ipa_data.h/linux/drivers/net/ipa/ipa_endpoint.c/linux/drivers/net/ipa/ipa_endpoint.h/linux/drivers/net/ipa/ipa_gsi.c/linux/drivers/net/ipa/ipa_gsi.h/linux/drivers/net/ipa/ipa_interrupt.c/linux/drivers/net/ipa/ipa_interrupt.h/linux/drivers/net/ipa/ipa_main.c/linux/drivers/net/ipa/ipa_mem.c/linux/drivers/net/ipa/ipa_mem.h/linux/drivers/net/ipa/ipa_modem.c/linux/drivers/net/ipa/ipa_modem.h/linux/drivers/net/ipa/ipa_qmi.c/linux/drivers/net/ipa/ipa_qmi.h/linux/drivers/net/ipa/ipa_qmi_msg.c/linux/drivers/net/ipa/ipa_qmi_msg.h/linux/drivers/net/ipa/ipa_reg.c/linux/drivers/net/ipa/ipa_reg.h/linux/drivers/net/ipa/ipa_smp2p.c/linux/drivers/net/ipa/ipa_smp2p.h/linux/drivers/net/ipa/ipa_table.c/linux/drivers/net/ipa/ipa_table.h/linux/drivers/net/ipa/ipa_uc.c/linux/drivers/net/ipa/ipa_uc.h/linux/drivers/net/ipa/ipa_version.h/linux/drivers/net/ipvlan/ipvlan_core.c/linux/drivers/net/ipvlan/ipvlan_main.c/linux/drivers/net/macsec.c/linux/drivers/net/macvlan.c/linux/drivers/net/phy/Kconfig/linux/drivers/net/phy/Makefile/linux/drivers/net/phy/bcm63xx.c/linux/drivers/net/phy/marvell10g.c/linux/drivers/net/phy/mdio-ipq8064.c/linux/drivers/net/phy/mdio-xpcs.c/linux/drivers/net/phy/mscc/Makefile/linux/drivers/net/phy/mscc/mscc.h/linux/drivers/net/phy/mscc/mscc_fc_buffer.h/linux/drivers/net/phy/mscc/mscc_mac.h/linux/drivers/net/phy/mscc/mscc_macsec.c/linux/drivers/net/phy/mscc/mscc_macsec.h/linux/drivers/net/phy/mscc/mscc_main.c/linux/drivers/net/phy/phy.c/linux/drivers/net/phy/phy_device.c/linux/drivers/net/phy/phylink.c/linux/drivers/net/slip/slhc.c/linux/drivers/net/slip/slip.c/linux/drivers/net/team/team.c/linux/drivers/net/tun.c/linux/drivers/net/usb/cdc_ncm.c/linux/drivers/net/usb/huawei_cdc_ncm.c/linux/drivers/net/usb/r8152.c/linux/drivers/net/veth.c/linux/drivers/net/virtio_net.c/linux/drivers/net/vmxnet3/vmxnet3_ethtool.c/linux/drivers/net/wireless/ath/wil6210/ethtool.c/linux/drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c/linux/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c/linux/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c/linux/drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h/linux/drivers/net/wireless/intel/iwlwifi/mvm/nvm.c/linux/drivers/net/wireless/marvell/mwifiex/11ac.c/linux/drivers/net/wireless/marvell/mwifiex/11ac.h/linux/drivers/net/wireless/marvell/mwifiex/11h.c/linux/drivers/net/wireless/marvell/mwifiex/11n.c/linux/drivers/net/wireless/marvell/mwifiex/11n.h/linux/drivers/net/wireless/marvell/mwifiex/11n_aggr.c/linux/drivers/net/wireless/marvell/mwifiex/11n_aggr.h/linux/drivers/net/wireless/marvell/mwifiex/11n_rxreorder.c/linux/drivers/net/wireless/marvell/mwifiex/11n_rxreorder.h/linux/drivers/net/wireless/marvell/mwifiex/cfg80211.c/linux/drivers/net/wireless/marvell/mwifiex/cfg80211.h/linux/drivers/net/wireless/marvell/mwifiex/cfp.c/linux/drivers/net/wireless/marvell/mwifiex/cmdevt.c/linux/drivers/net/wireless/marvell/mwifiex/debugfs.c/linux/drivers/net/wireless/marvell/mwifiex/decl.h/linux/drivers/net/wireless/marvell/mwifiex/ethtool.c/linux/drivers/net/wireless/marvell/mwifiex/fw.h/linux/drivers/net/wireless/marvell/mwifiex/ie.c/linux/drivers/net/wireless/marvell/mwifiex/init.c/linux/drivers/net/wireless/marvell/mwifiex/ioctl.h/linux/drivers/net/wireless/marvell/mwifiex/join.c/linux/drivers/net/wireless/marvell/mwifiex/main.c/linux/drivers/net/wireless/marvell/mwifiex/main.h/linux/drivers/net/wireless/marvell/mwifiex/pcie.c/linux/drivers/net/wireless/marvell/mwifiex/pcie.h/linux/drivers/net/wireless/marvell/mwifiex/scan.c/linux/drivers/net/wireless/marvell/mwifiex/sdio.c/linux/drivers/net/wireless/marvell/mwifiex/sdio.h/linux/drivers/net/wireless/marvell/mwifiex/sta_cmd.c/linux/drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c/linux/drivers/net/wireless/marvell/mwifiex/sta_event.c/linux/drivers/net/wireless/marvell/mwifiex/sta_ioctl.c/linux/drivers/net/wireless/marvell/mwifiex/sta_rx.c/linux/drivers/net/wireless/marvell/mwifiex/sta_tx.c/linux/drivers/net/wireless/marvell/mwifiex/tdls.c/linux/drivers/net/wireless/marvell/mwifiex/txrx.c/linux/drivers/net/wireless/marvell/mwifiex/uap_cmd.c/linux/drivers/net/wireless/marvell/mwifiex/uap_event.c/linux/drivers/net/wireless/marvell/mwifiex/uap_txrx.c/linux/drivers/net/wireless/marvell/mwifiex/usb.c/linux/drivers/net/wireless/marvell/mwifiex/usb.h/linux/drivers/net/wireless/marvell/mwifiex/util.c/linux/drivers/net/wireless/marvell/mwifiex/util.h/linux/drivers/net/wireless/marvell/mwifiex/wmm.c/linux/drivers/net/wireless/marvell/mwifiex/wmm.h/linux/drivers/net/wireless/mediatek/mt76/Makefile/linux/drivers/net/wireless/mediatek/mt76/agg-rx.c/linux/drivers/net/wireless/mediatek/mt76/dma.c/linux/drivers/net/wireless/mediatek/mt76/eeprom.c/linux/drivers/net/wireless/mediatek/mt76/mac80211.c/linux/drivers/net/wireless/mediatek/mt76/mcu.c/linux/drivers/net/wireless/mediatek/mt76/mmio.c/linux/drivers/net/wireless/mediatek/mt76/mt76.h/linux/drivers/net/wireless/mediatek/mt76/mt7603/core.c/linux/drivers/net/wireless/mediatek/mt76/mt7603/dma.c/linux/drivers/net/wireless/mediatek/mt76/mt7603/init.c/linux/drivers/net/wireless/mediatek/mt76/mt7603/mac.c/linux/drivers/net/wireless/mediatek/mt76/mt7603/main.c/linux/drivers/net/wireless/mediatek/mt76/mt7603/mcu.c/linux/drivers/net/wireless/mediatek/mt76/mt7603/mt7603.h/linux/drivers/net/wireless/mediatek/mt76/mt7603/regs.h/linux/drivers/net/wireless/mediatek/mt76/mt7615/Kconfig/linux/drivers/net/wireless/mediatek/mt76/mt7615/Makefile/linux/drivers/net/wireless/mediatek/mt76/mt7615/debugfs.c/linux/drivers/net/wireless/mediatek/mt76/mt7615/dma.c/linux/drivers/net/wireless/mediatek/mt76/mt7615/eeprom.c/linux/drivers/net/wireless/mediatek/mt76/mt7615/eeprom.h/linux/drivers/net/wireless/mediatek/mt76/mt7615/init.c/linux/drivers/net/wireless/mediatek/mt76/mt7615/mac.c/linux/drivers/net/wireless/mediatek/mt76/mt7615/mac.h/linux/drivers/net/wireless/mediatek/mt76/mt7615/main.c/linux/drivers/net/wireless/mediatek/mt76/mt7615/mcu.c/linux/drivers/net/wireless/mediatek/mt76/mt7615/mcu.h/linux/drivers/net/wireless/mediatek/mt76/mt7615/mmio.c/linux/drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h/linux/drivers/net/wireless/mediatek/mt76/mt7615/mt7615_trace.h/linux/drivers/net/wireless/mediatek/mt76/mt7615/pci.c/linux/drivers/net/wireless/mediatek/mt76/mt7615/regs.h/linux/drivers/net/wireless/mediatek/mt76/mt7615/soc.c/linux/drivers/net/wireless/mediatek/mt76/mt7615/trace.c/linux/drivers/net/wireless/mediatek/mt76/mt76x0/eeprom.c/linux/drivers/net/wireless/mediatek/mt76/mt76x0/init.c/linux/drivers/net/wireless/mediatek/mt76/mt76x0/main.c/linux/drivers/net/wireless/mediatek/mt76/mt76x0/pci.c/linux/drivers/net/wireless/mediatek/mt76/mt76x0/pci_mcu.c/linux/drivers/net/wireless/mediatek/mt76/mt76x0/phy.c/linux/drivers/net/wireless/mediatek/mt76/mt76x0/usb.c/linux/drivers/net/wireless/mediatek/mt76/mt76x0/usb_mcu.c/linux/drivers/net/wireless/mediatek/mt76/mt76x02.h/linux/drivers/net/wireless/mediatek/mt76/mt76x02_beacon.c/linux/drivers/net/wireless/mediatek/mt76/mt76x02_dfs.c/linux/drivers/net/wireless/mediatek/mt76/mt76x02_mac.c/linux/drivers/net/wireless/mediatek/mt76/mt76x02_mac.h/linux/drivers/net/wireless/mediatek/mt76/mt76x02_mcu.c/linux/drivers/net/wireless/mediatek/mt76/mt76x02_mmio.c/linux/drivers/net/wireless/mediatek/mt76/mt76x02_phy.c/linux/drivers/net/wireless/mediatek/mt76/mt76x02_phy.h/linux/drivers/net/wireless/mediatek/mt76/mt76x02_regs.h/linux/drivers/net/wireless/mediatek/mt76/mt76x02_trace.h/linux/drivers/net/wireless/mediatek/mt76/mt76x02_txrx.c/linux/drivers/net/wireless/mediatek/mt76/mt76x02_usb_core.c/linux/drivers/net/wireless/mediatek/mt76/mt76x02_usb_mcu.c/linux/drivers/net/wireless/mediatek/mt76/mt76x02_util.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/Makefile/linux/drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.h/linux/drivers/net/wireless/mediatek/mt76/mt76x2/init.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/mcu.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2.h/linux/drivers/net/wireless/mediatek/mt76/mt76x2/pci_init.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/pci_main.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/pci_phy.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/phy.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/usb.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/usb_init.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/usb_mac.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/usb_main.c/linux/drivers/net/wireless/mediatek/mt76/mt76x2/usb_phy.c/linux/drivers/net/wireless/mediatek/mt76/trace.c/linux/drivers/net/wireless/mediatek/mt76/trace.h/linux/drivers/net/wireless/mediatek/mt76/tx.c/linux/drivers/net/wireless/mediatek/mt76/usb.c/linux/drivers/net/wireless/mediatek/mt76/util.c/linux/drivers/net/wireless/mediatek/mt76/util.h/linux/drivers/net/wireless/quantenna/qtnfmac/cfg80211.c/linux/drivers/net/wireless/quantenna/qtnfmac/commands.c/linux/drivers/net/wireless/quantenna/qtnfmac/commands.h/linux/drivers/net/wireless/quantenna/qtnfmac/core.c/linux/drivers/net/wireless/quantenna/qtnfmac/core.h/linux/drivers/net/wireless/quantenna/qtnfmac/event.c/linux/drivers/net/wireless/quantenna/qtnfmac/pcie/pearl_pcie.c/linux/drivers/net/wireless/quantenna/qtnfmac/qlink.h/linux/drivers/net/wireless/quantenna/qtnfmac/qlink_util.h/linux/drivers/net/wireless/realtek/rtw88/bf.c/linux/drivers/net/wireless/realtek/rtw88/coex.c/linux/drivers/net/wireless/realtek/rtw88/fw.c/linux/drivers/net/wireless/realtek/rtw88/hci.h/linux/drivers/net/wireless/realtek/rtw88/mac.c/linux/drivers/net/wireless/realtek/rtw88/mac80211.c/linux/drivers/net/wireless/realtek/rtw88/main.c/linux/drivers/net/wireless/realtek/rtw88/main.h/linux/drivers/net/wireless/realtek/rtw88/pci.c/linux/drivers/net/wireless/realtek/rtw88/pci.h/linux/drivers/net/wireless/realtek/rtw88/phy.c/linux/drivers/net/wireless/realtek/rtw88/rtw8822b.c/linux/drivers/net/wireless/realtek/rtw88/rtw8822c.c/linux/drivers/net/wireless/realtek/rtw88/rtw8822c.h/linux/drivers/net/wireless/rsi/rsi_91x_sdio.c/linux/drivers/net/wireless/ti/wl1251/sdio.c/linux/drivers/nvme/host/pci.c/linux/drivers/of/of_mdio.c/linux/drivers/pci/controller/pcie-brcmstb.c/linux/drivers/pci/pci-bridge-emul.c/linux/drivers/pci/pci.c/linux/drivers/perf/arm_pmu_acpi.c/linux/drivers/perf/fsl_imx8_ddr_perf.c/linux/drivers/phy/allwinner/phy-sun50i-usb3.c/linux/drivers/phy/broadcom/phy-brcm-sata.c/linux/drivers/phy/motorola/phy-mapphone-mdm6600.c/linux/drivers/phy/phy-core.c/linux/drivers/phy/ti/phy-gmii-sel.c/linux/drivers/pinctrl/cirrus/pinctrl-madera-core.c/linux/drivers/pinctrl/core.c/linux/drivers/pinctrl/freescale/pinctrl-scu.c/linux/drivers/pinctrl/meson/pinctrl-meson-gxl.c/linux/drivers/pinctrl/pinctrl-falcon.c/linux/drivers/pinctrl/qcom/pinctrl-msm.c/linux/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c/linux/drivers/ptp/Kconfig/linux/drivers/ptp/Makefile/linux/drivers/ptp/ptp_vmw.c/linux/drivers/regulator/stm32-vrefbuf.c/linux/drivers/remoteproc/Kconfig/linux/drivers/remoteproc/Makefile/linux/drivers/remoteproc/qcom_q6v5_ipa_notify.c/linux/drivers/remoteproc/qcom_q6v5_mss.c/linux/drivers/reset/Kconfig/linux/drivers/s390/cio/qdio_setup.c/linux/drivers/s390/net/qeth_core.h/linux/drivers/s390/net/qeth_core_main.c/linux/drivers/s390/net/qeth_core_sys.c/linux/drivers/s390/net/qeth_l2_main.c/linux/drivers/s390/net/qeth_l3_main.c/linux/drivers/s390/net/qeth_l3_sys.c/linux/drivers/s390/scsi/zfcp_fsf.h/linux/drivers/s390/scsi/zfcp_sysfs.c/linux/drivers/scsi/libfc/fc_disc.c/linux/drivers/scsi/qedf/qedf_main.c/linux/drivers/scsi/sd_zbc.c/linux/drivers/scsi/sr.c/linux/drivers/soc/imx/soc-imx-scu.c/linux/drivers/spi/atmel-quadspi.c/linux/drivers/spi/spi-bcm63xx-hsspi.c/linux/drivers/spi/spi-omap2-mcspi.c/linux/drivers/spi/spi-pxa2xx.c/linux/drivers/spi/spi-qup.c/linux/drivers/spi/spi-zynqmp-gqspi.c/linux/drivers/spi/spi.c/linux/drivers/spi/spidev.c/linux/drivers/staging/media/hantro/hantro_drv.c/linux/drivers/staging/qlge/qlge_ethtool.c/linux/drivers/staging/speakup/selection.c/linux/drivers/staging/wfx/Documentation/devicetree/bindings/net/wireless/siliabs,wfx.txt/linux/drivers/tee/amdtee/core.c/linux/drivers/tty/serdev/core.c/linux/drivers/tty/serial/8250/8250_exar.c/linux/drivers/tty/serial/fsl_lpuart.c/linux/drivers/tty/serial/mvebu-uart.c/linux/drivers/tty/vt/selection.c/linux/drivers/tty/vt/vt.c/linux/drivers/usb/cdns3/gadget.c/linux/drivers/usb/core/hub.c/linux/drivers/usb/core/port.c/linux/drivers/usb/core/quirks.c/linux/drivers/usb/dwc3/gadget.c/linux/drivers/usb/misc/usb251xb.c/linux/drivers/usb/storage/unusual_devs.h/linux/drivers/video/backlight/Kconfig/linux/drivers/video/backlight/Makefile/linux/drivers/video/backlight/led_bl.c/linux/drivers/video/console/vgacon.c/linux/drivers/virtio/virtio_balloon.c/linux/drivers/virtio/virtio_ring.c/linux/drivers/watchdog/wdat_wdt.c/linux/drivers/xen/xen-pciback/pciback.h/linux/drivers/xen/xenbus/xenbus_comms.c/linux/drivers/xen/xenbus/xenbus_probe.c/linux/drivers/xen/xenbus/xenbus_probe_backend.c/linux/drivers/xen/xenbus/xenbus_xs.c/linux/fs/btrfs/inode.c/linux/fs/cifs/cifs_dfs_ref.c/linux/fs/cifs/cifsfs.c/linux/fs/cifs/cifsglob.h/linux/fs/cifs/cifsproto.h/linux/fs/cifs/cifssmb.c/linux/fs/cifs/dir.c/linux/fs/cifs/file.c/linux/fs/cifs/inode.c/linux/fs/cifs/smb1ops.c/linux/fs/cifs/smb2inode.c/linux/fs/cifs/smb2ops.c/linux/fs/cifs/smb2pdu.c/linux/fs/crypto/keysetup.c/linux/fs/debugfs/file.c/linux/fs/ext4/super.c/linux/fs/fat/inode.c/linux/fs/fcntl.c/linux/fs/gfs2/inode.c/linux/fs/io-wq.c/linux/fs/io-wq.h/linux/fs/io_uring.c/linux/fs/jbd2/transaction.c/linux/fs/locks.c/linux/fs/nsfs.c/linux/fs/open.c/linux/fs/zonefs/Kconfig/linux/fs/zonefs/super.c/linux/include/acpi/actypes.h/linux/include/asm-generic/vmlinux.lds.h/linux/include/crypto/curve25519.h/linux/include/drm/drm_dp_mst_helper.h/linux/include/drm/drm_gem_shmem_helper.h/linux/include/linux/bitfield.h/linux/include/linux/blkdev.h/linux/include/linux/blktrace_api.h/linux/include/linux/bpf.h/linux/include/linux/cgroup.h/linux/include/linux/debugfs.h/linux/include/linux/device.h/linux/include/linux/ethtool.h/linux/include/linux/filter.h/linux/include/linux/inet_diag.h/linux/include/linux/kvm_host.h/linux/include/linux/mdio-xpcs.h/linux/include/linux/mii.h/linux/include/linux/mlx5/driver.h/linux/include/linux/mlx5/eswitch.h/linux/include/linux/mlx5/mlx5_ifc.h/linux/include/linux/mlx5/mlx5_ifc_fpga.h/linux/include/linux/mm.h/linux/include/linux/netdevice.h/linux/include/linux/pci.h/linux/include/linux/phy.h/linux/include/linux/platform_data/spi-omap2-mcspi.h/linux/include/linux/platform_device.h/linux/include/linux/proc_ns.h/linux/include/linux/remoteproc/qcom_q6v5_ipa_notify.h/linux/include/linux/rhashtable.h/linux/include/linux/stmmac.h/linux/include/linux/usb/cdc_ncm.h/linux/include/linux/workqueue.h/linux/include/net/act_api.h/linux/include/net/cfg802154.h/linux/include/net/dsa.h/linux/include/net/fib_rules.h/linux/include/net/flow_offload.h/linux/include/net/macsec.h/linux/include/net/netfilter/nf_flow_table.h/linux/include/net/netns/ipv4.h/linux/include/net/pie.h/linux/include/net/pkt_cls.h/linux/include/net/red.h/linux/include/net/sch_generic.h/linux/include/net/tc_act/tc_ct.h/linux/include/soc/mscc/ocelot.h/linux/include/soc/mscc/ocelot_dev.h/linux/include/soc/mscc/ocelot_vcap.h/linux/include/sound/soc.h/linux/include/uapi/linux/bpf.h/linux/include/uapi/linux/devlink.h/linux/include/uapi/linux/dm-ioctl.h/linux/include/uapi/linux/ethtool_netlink.h/linux/include/uapi/linux/if_macsec.h/linux/include/uapi/linux/in.h/linux/include/uapi/linux/pkt_cls.h/linux/include/uapi/linux/pkt_sched.h/linux/include/uapi/linux/tcp.h/linux/include/xen/interface/io/tpmif.h/linux/include/xen/xenbus.h/linux/kernel/bpf/btf.c/linux/kernel/bpf/core.c/linux/kernel/bpf/dispatcher.c/linux/kernel/bpf/helpers.c/linux/kernel/bpf/syscall.c/linux/kernel/bpf/sysfs_btf.c/linux/kernel/bpf/trampoline.c/linux/kernel/bpf/verifier.c/linux/kernel/cgroup/cgroup-v1.c/linux/kernel/cgroup/cgroup.c/linux/kernel/events/core.c/linux/kernel/exit.c/linux/kernel/extable.c/linux/kernel/fork.c/linux/kernel/pid.c/linux/kernel/power/snapshot.c/linux/kernel/sched/fair.c/linux/kernel/trace/blktrace.c/linux/kernel/trace/bpf_trace.c/linux/kernel/trace/ftrace.c/linux/kernel/workqueue.c/linux/mm/huge_memory.c/linux/mm/memcontrol.c/linux/mm/memory.c/linux/mm/memory_hotplug.c/linux/mm/mprotect.c/linux/mm/z3fold.c/linux/net/batman-adv/bat_iv_ogm.c/linux/net/batman-adv/distributed-arp-table.c/linux/net/batman-adv/main.h/linux/net/batman-adv/translation-table.c/linux/net/caif/caif_dev.c/linux/net/core/dev.c/linux/net/core/devlink.c/linux/net/core/filter.c/linux/net/core/flow_offload.c/linux/net/core/netclassid_cgroup.c/linux/net/core/pktgen.c/linux/net/core/sock.c/linux/net/dsa/dsa_priv.h/linux/net/dsa/port.c/linux/net/dsa/slave.c/linux/net/dsa/tag_ocelot.c/linux/net/ethtool/Makefile/linux/net/ethtool/bitset.c/linux/net/ethtool/bitset.h/linux/net/ethtool/channels.c/linux/net/ethtool/common.c/linux/net/ethtool/common.h/linux/net/ethtool/debug.c/linux/net/ethtool/features.c/linux/net/ethtool/ioctl.c/linux/net/ethtool/linkinfo.c/linux/net/ethtool/linkmodes.c/linux/net/ethtool/netlink.c/linux/net/ethtool/netlink.h/linux/net/ethtool/privflags.c/linux/net/ethtool/rings.c/linux/net/ethtool/wol.c/linux/net/hsr/hsr_slave.c/linux/net/ieee802154/nl_policy.c/linux/net/ipv4/af_inet.c/linux/net/ipv4/ah4.c/linux/net/ipv4/arp.c/linux/net/ipv4/devinet.c/linux/net/ipv4/fib_semantics.c/linux/net/ipv4/gre_demux.c/linux/net/ipv4/icmp.c/linux/net/ipv4/inet_connection_sock.c/linux/net/ipv4/inet_diag.c/linux/net/ipv4/ip_output.c/linux/net/ipv4/ipmr.c/linux/net/ipv4/netfilter/nf_log_ipv4.c/linux/net/ipv4/netfilter/nf_nat_pptp.c/linux/net/ipv4/nexthop.c/linux/net/ipv4/raw.c/linux/net/ipv4/raw_diag.c/linux/net/ipv4/sysctl_net_ipv4.c/linux/net/ipv4/tcp.c/linux/net/ipv4/tcp_input.c/linux/net/ipv4/tcp_ipv4.c/linux/net/ipv4/tcp_minisocks.c/linux/net/ipv4/udp.c/linux/net/ipv4/udp_diag.c/linux/net/ipv6/addrconf.c/linux/net/ipv6/ah6.c/linux/net/ipv6/exthdrs.c/linux/net/ipv6/icmp.c/linux/net/ipv6/ip6_fib.c/linux/net/ipv6/ip6mr.c/linux/net/ipv6/ndisc.c/linux/net/ipv6/netfilter/nf_log_ipv6.c/linux/net/ipv6/raw.c/linux/net/ipv6/route.c/linux/net/ipv6/seg6_iptunnel.c/linux/net/ipv6/seg6_local.c/linux/net/ipv6/sysctl_net_ipv6.c/linux/net/ipv6/tcp_ipv6.c/linux/net/kcm/kcmproc.c/linux/net/mac80211/mesh_hwmp.c/linux/net/mptcp/options.c/linux/net/mptcp/protocol.c/linux/net/mptcp/protocol.h/linux/net/mptcp/subflow.c/linux/net/mptcp/token.c/linux/net/netfilter/nf_conntrack_standalone.c/linux/net/netfilter/nf_flow_table_core.c/linux/net/netfilter/nf_flow_table_ip.c/linux/net/netfilter/nf_flow_table_offload.c/linux/net/netfilter/nf_synproxy_core.c/linux/net/netfilter/nf_tables_api.c/linux/net/netfilter/nfnetlink_cthelper.c/linux/net/netfilter/nft_chain_nat.c/linux/net/netfilter/nft_payload.c/linux/net/netfilter/nft_tunnel.c/linux/net/netfilter/x_tables.c/linux/net/netfilter/xt_recent.c/linux/net/netlink/af_netlink.c/linux/net/nfc/hci/core.c/linux/net/nfc/netlink.c/linux/net/openvswitch/datapath.c/linux/net/packet/af_packet.c/linux/net/qrtr/ns.c/linux/net/qrtr/qrtr.c/linux/net/qrtr/qrtr.h/linux/net/sched/Kconfig/linux/net/sched/act_api.c/linux/net/sched/act_ct.c/linux/net/sched/cls_api.c/linux/net/sched/sch_fifo.c/linux/net/sched/sch_fq.c/linux/net/sched/sch_fq_pie.c/linux/net/sched/sch_generic.c/linux/net/sched/sch_ingress.c/linux/net/sched/sch_pie.c/linux/net/sched/sch_red.c/linux/net/sched/sch_taprio.c/linux/net/sctp/diag.c/linux/net/smc/smc_ib.c/linux/net/tipc/monitor.c/linux/net/tipc/msg.c/linux/net/tipc/netlink.c/linux/net/wireless/nl80211.c/linux/scripts/bpf_helpers_doc.py/linux/scripts/link-vmlinux.sh/linux/scripts/parse-maintainers.pl/linux/sound/mips/sgio2audio.c/linux/sound/pci/bt87x.c/linux/sound/pci/hda/patch_realtek.c/linux/sound/soc/codecs/Kconfig/linux/sound/soc/codecs/pcm512x.c/linux/sound/soc/codecs/rt1015.c/linux/sound/soc/codecs/tas2562.c/linux/sound/soc/intel/skylake/skl-debug.c/linux/sound/soc/intel/skylake/skl-ssp-clk.c/linux/sound/soc/meson/g12a-tohdmitx.c/linux/sound/soc/soc-component.c/linux/sound/soc/soc-compress.c/linux/sound/soc/soc-dapm.c/linux/sound/soc/soc-pcm.c/linux/sound/soc/soc-topology.c/linux/sound/soc/sof/ipc.c/linux/sound/soc/stm/stm32_sai_sub.c/linux/tools/arch/x86/include/asm/msr-index.h/linux/tools/arch/x86/include/uapi/asm/kvm.h/linux/tools/bpf/bpftool/.gitignorebpftool-struct_ops.rst/linux/tools/bpf/bpftool/Makefile/linux/tools/bpf/bpftool/bash-completion/bpftool/linux/tools/bpf/bpftool/btf_dumper.c/linux/tools/bpf/bpftool/common.c/linux/tools/bpf/bpftool/main.c/linux/tools/bpf/bpftool/main.h/linux/tools/bpf/bpftool/map.c/linux/tools/bpf/bpftool/prog.c/linux/tools/bpf/bpftool/skeleton/profiler.h/linux/tools/bpf/bpftool/struct_ops.c/linux/tools/bpf/runqslower/runqslower.bpf.c/linux/tools/build/feature/Makefile/linux/tools/build/feature/test-clang-bpf-global-var.c/linux/tools/include/uapi/linux/bpf.h/linux/tools/include/uapi/linux/types.h/linux/tools/lib/bpf/bpf_tracing.h/linux/tools/lib/bpf/libbpf.c/linux/tools/perf/Documentation/perf-config.txt/linux/tools/perf/arch/arm/util/cs-etm.c/linux/tools/perf/arch/arm64/util/arm-spe.c/linux/tools/perf/arch/powerpc/entry/syscalls/syscall.tbl/linux/tools/perf/arch/x86/util/intel-bts.c/linux/tools/perf/arch/x86/util/intel-pt.c/linux/tools/perf/builtin-annotate.c/linux/tools/perf/builtin-probe.c/linux/tools/perf/builtin-report.c/linux/tools/perf/builtin-top.c/linux/tools/perf/include/bpf/pid_filter.h/linux/tools/perf/include/bpf/stdio.h/linux/tools/perf/include/bpf/unistd.h/linux/tools/perf/tests/shell/lib/probe_vfs_getname.sh/linux/tools/perf/ui/browsers/annotate.c/linux/tools/perf/ui/gtk/annotate.c/linux/tools/perf/util/annotate.c/linux/tools/perf/util/annotate.h/linux/tools/perf/util/auxtrace.c/linux/tools/perf/util/auxtrace.h/linux/tools/perf/util/config.c/linux/tools/perf/util/config.h/linux/tools/perf/util/probe-file.c/linux/tools/testing/ktest/ktest.pl/linux/tools/testing/ktest/sample.conf/linux/tools/testing/selftests/bpf/.gitignore/linux/tools/testing/selftests/bpf/Makefile/linux/tools/testing/selftests/bpf/prog_tests/ns_current_pid_tgid.c/linux/tools/testing/selftests/bpf/prog_tests/sockmap_listen.c/linux/tools/testing/selftests/bpf/prog_tests/tcp_rtt.c/linux/tools/testing/selftests/bpf/prog_tests/vmlinux.c/linux/tools/testing/selftests/bpf/prog_tests/xdp_bpf2bpf.c/linux/tools/testing/selftests/bpf/progs/sockmap_parse_prog.c/linux/tools/testing/selftests/bpf/progs/test_ns_current_pid_tgid.c/linux/tools/testing/selftests/bpf/progs/test_vmlinux.c/linux/tools/testing/selftests/bpf/progs/test_xdp_bpf2bpf.c/linux/tools/testing/selftests/bpf/test_current_pid_tgid_new_ns.c/linux/tools/testing/selftests/bpf/test_progs.c/linux/tools/testing/selftests/bpf/test_progs.h/linux/tools/testing/selftests/drivers/net/mlxsw/qos_defprio.sh/linux/tools/testing/selftests/drivers/net/mlxsw/sch_ets.sh/linux/tools/testing/selftests/drivers/net/mlxsw/sch_red_core.sh/linux/tools/testing/selftests/drivers/net/mlxsw/sch_red_ets.sh/linux/tools/testing/selftests/drivers/net/mlxsw/sch_red_root.sh/linux/tools/testing/selftests/lkdtm/.gitignore/linux/tools/testing/selftests/net/.gitignore/linux/tools/testing/selftests/net/Makefile/linux/tools/testing/selftests/net/fib_tests.sh/linux/tools/testing/selftests/net/forwarding/lib.sh/linux/tools/testing/selftests/net/forwarding/sch_ets.sh/linux/tools/testing/selftests/net/forwarding/sch_ets_tests.sh/linux/tools/testing/selftests/net/forwarding/tc_common.sh/linux/tools/testing/selftests/net/mptcp/mptcp_connect.c/linux/tools/testing/selftests/net/mptcp/mptcp_connect.sh/linux/tools/testing/selftests/net/reuseaddr_ports_exhausted.c/linux/tools/testing/selftests/net/reuseaddr_ports_exhausted.sh/linux/tools/testing/selftests/pidfd/.gitignore/linux/tools/testing/selftests/tc-testing/config/linux/tools/testing/selftests/tc-testing/tc-tests/filters/basic.json/linux/tools/testing/selftests/tc-testing/tc-tests/qdiscs/red.json/linux/virt/kvm/arm/arm.c/linux/virt/kvm/arm/trace.h |
bcdacab6 | 26-Feb-2020 |
Michal Rostecki <mrostecki@opensuse.org> |
bpftool: Update documentation of "bpftool feature" command
Update documentation of "bpftool feature" command with information about new arguments: "full".
Signed-off-by: Michal Rostecki <mrostecki@
bpftool: Update documentation of "bpftool feature" command
Update documentation of "bpftool feature" command with information about new arguments: "full".
Signed-off-by: Michal Rostecki <mrostecki@opensuse.org> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Reviewed-by: Quentin Monnet <quentin@isovalent.com> Link: https://lore.kernel.org/bpf/20200226165941.6379-4-mrostecki@opensuse.org
show more ...
|
dacce641 | 18-Dec-2019 |
Andrii Nakryiko <andriin@fb.com> |
bpftool: Work-around rst2man conversion bug
Work-around what appears to be a bug in rst2man convertion tool, used to create man pages out of reStructureText-formatted documents. If text line starts
bpftool: Work-around rst2man conversion bug
Work-around what appears to be a bug in rst2man convertion tool, used to create man pages out of reStructureText-formatted documents. If text line starts with dot, rst2man will put it in resulting man file verbatim. This seems to cause man tool to interpret it as a directive/command (e.g., `.bs`), and subsequently not render entire line because it's unrecognized one.
Enclose '.xxx' words in extra formatting to work around.
Fixes: cb21ac588546 ("bpftool: Add gen subcommand manpage") Reported-by: Alexei Starovoitov <ast@kernel.org> Signed-off-by: Andrii Nakryiko <andriin@fb.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Acked-by: Yonghong Song <yhs@fb.com Link: https://lore.kernel.org/bpf/20191218221707.2552199-1-andriin@fb.com
show more ...
|
99f9863a | 13-Dec-2019 |
Paul Chaignon <paul.chaignon@orange.com> |
bpftool: Match maps by name
This patch implements lookup by name for maps and changes the behavior of lookups by tag to be consistent with prog subcommands. Similarly to program subcommands, the sh
bpftool: Match maps by name
This patch implements lookup by name for maps and changes the behavior of lookups by tag to be consistent with prog subcommands. Similarly to program subcommands, the show and dump commands will return all maps with the given name (or tag), whereas other commands will error out if several maps have the same name (resp. tag).
When a map has BTF info, it is dumped in JSON with available BTF info. This patch requires that all matched maps have BTF info before switching the output format to JSON.
Signed-off-by: Paul Chaignon <paul.chaignon@orange.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://lore.kernel.org/bpf/8de1c9f273860b3ea1680502928f4da2336b853e.1576263640.git.paul.chaignon@gmail.com
show more ...
|
a7d22ca2 | 13-Dec-2019 |
Paul Chaignon <paul.chaignon@orange.com> |
bpftool: Match programs by name
When working with frequently modified BPF programs, both the ID and the tag may change. bpftool currently doesn't provide a "stable" way to match such programs.
Thi
bpftool: Match programs by name
When working with frequently modified BPF programs, both the ID and the tag may change. bpftool currently doesn't provide a "stable" way to match such programs.
This patch implements lookup by name for programs. The show and dump commands will return all programs with the given name, whereas other commands will error out if several programs have the same name.
Signed-off-by: Paul Chaignon <paul.chaignon@orange.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Reviewed-by: Quentin Monnet <quentin.monnet@netronome.com> Link: https://lore.kernel.org/bpf/b5fc1a5dcfaeb5f16fc80295cdaa606dd2d91534.1576263640.git.paul.chaignon@gmail.com
show more ...
|
a98bf573 | 30-Jul-2019 |
Jakub Kicinski <jakub.kicinski@netronome.com> |
tools: bpftool: add support for reporting the effective cgroup progs
Takshak said in the original submission:
With different bpf attach_flags available to attach bpf programs specially with BPF_F_A
tools: bpftool: add support for reporting the effective cgroup progs
Takshak said in the original submission:
With different bpf attach_flags available to attach bpf programs specially with BPF_F_ALLOW_OVERRIDE and BPF_F_ALLOW_MULTI, the list of effective bpf-programs available to any sub-cgroups really needs to be available for easy debugging.
Using BPF_F_QUERY_EFFECTIVE flag, one can get the list of not only attached bpf-programs to a cgroup but also the inherited ones from parent cgroup.
So a new option is introduced to use BPF_F_QUERY_EFFECTIVE query flag here to list all the effective bpf-programs available for execution at a specified cgroup.
Reused modified test program test_cgroup_attach from tools/testing/selftests/bpf: # ./test_cgroup_attach
With old bpftool:
# bpftool cgroup show /sys/fs/cgroup/cgroup-test-work-dir/cg1/ ID AttachType AttachFlags Name 271 egress multi pkt_cntr_1 272 egress multi pkt_cntr_2
Attached new program pkt_cntr_4 in cg2 gives following:
# bpftool cgroup show /sys/fs/cgroup/cgroup-test-work-dir/cg1/cg2 ID AttachType AttachFlags Name 273 egress override pkt_cntr_4
And with new "effective" option it shows all effective programs for cg2:
# bpftool cgroup show /sys/fs/cgroup/cgroup-test-work-dir/cg1/cg2 effective ID AttachType AttachFlags Name 273 egress override pkt_cntr_4 271 egress override pkt_cntr_1 272 egress override pkt_cntr_2
Compared to original submission use a local flag instead of global option.
We need to clear query_flags on every command, in case batch mode wants to use varying settings.
v2: (Takshak) - forbid duplicated flags; - fix cgroup path freeing.
Signed-off-by: Takshak Chahande <ctakshak@fb.com> Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com> Reviewed-by: Quentin Monnet <quentin.monnet@netronome.com> Reviewed-by: Takshak Chahande <ctakshak@fb.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org>
show more ...
|
55d77807 | 24-May-2019 |
Quentin Monnet <quentin.monnet@netronome.com> |
tools: bpftool: make -d option print debug output from verifier
The "-d" option is used to require all logs available for bpftool. So far it meant telling libbpf to print even debug-level informatio
tools: bpftool: make -d option print debug output from verifier
The "-d" option is used to require all logs available for bpftool. So far it meant telling libbpf to print even debug-level information. But there is another source of info that can be made more verbose: when we attemt to load programs with bpftool, we can pass a log_level parameter to the verifier in order to control the amount of information that is printed to the console.
Reuse the "-d" option to print all information the verifier can tell. At this time, this means logs related to BPF_LOG_LEVEL1, BPF_LOG_LEVEL2 and BPF_LOG_STATS. As mentioned in the discussion on the first version of this set, these macros are internal to the kernel (include/linux/bpf_verifier.h) and are not meant to be part of the stable user API, therefore we simply use the related constants to print whatever we can at this time, without trying to tell users what is log_level1 or what is statistics.
Verifier logs are only used when loading programs for now (In the future: for loading BTF objects with bpftool? Although libbpf does not currently offer to print verifier info at debug level if no error occurred when loading BTF objects), so bpftool.rst and bpftool-prog.rst are the only man pages to get the update.
v3: - Add details on log level and BTF loading at the end of commit log.
v2: - Remove the possibility to select the log levels to use (v1 offered a combination of "log_level1", "log_level2" and "stats"). - The macros from kernel header bpf_verifier.h are not used (and therefore not moved to UAPI header). - In v1 this was a distinct option, but is now merged in the only "-d" switch to activate libbpf and verifier debug-level logs all at the same time.
Signed-off-by: Quentin Monnet <quentin.monnet@netronome.com> Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
show more ...
|
775bc8ad | 24-May-2019 |
Quentin Monnet <quentin.monnet@netronome.com> |
tools: bpftool: add -d option to get debug output from libbpf
libbpf has three levels of priority for output messages: warn, info, debug. By default, debug output is not printed to the console.
Add
tools: bpftool: add -d option to get debug output from libbpf
libbpf has three levels of priority for output messages: warn, info, debug. By default, debug output is not printed to the console.
Add a new "--debug" (short name: "-d") option to bpftool to print libbpf logs for all three levels.
Internally, we simply use the function provided by libbpf to replace the default printing function by one that prints logs regardless of their level.
v2: - Remove the possibility to select the log-levels to use (v1 offered a combination of "warn", "info" and "debug"). - Rename option and offer a short name: -d|--debug. - Add option description to all bpftool manual pages (instead of bpftool-prog.rst only), as all commands use libbpf.
Signed-off-by: Quentin Monnet <quentin.monnet@netronome.com> Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
show more ...
|