Commit 35580f90 authored by Alexei Starovoitov's avatar Alexei Starovoitov

Merge branch 'lighten uapi/bpf.h rebuilds'

Jakub Kicinski says:

====================

Last change in the bpf headers - disentangling BPF uapi from
netdevice.h. Both linux/bpf.h and uapi/bpf.h changes should
now rebuild ~1k objects down from the original ~18k. There's
probably more that can be done but it's diminishing returns.

Split into two patches for ease of review.
====================
Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
parents 1705c62e aebb51ec
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include <linux/netdevice.h> #include <linux/netdevice.h>
#include <linux/skbuff.h> #include <linux/skbuff.h>
#include <uapi/linux/bpf.h>
#include "ena_com.h" #include "ena_com.h"
#include "ena_eth_com.h" #include "ena_eth_com.h"
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
#include <linux/iommu.h> #include <linux/iommu.h>
#include <net/ip.h> #include <net/ip.h>
#include <net/tso.h> #include <net/tso.h>
#include <uapi/linux/bpf.h>
#include "nic_reg.h" #include "nic_reg.h"
#include "nic.h" #include "nic.h"
......
// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
/* Copyright (c) 2021, Microsoft Corporation. */ /* Copyright (c) 2021, Microsoft Corporation. */
#include <uapi/linux/bpf.h>
#include <linux/inetdevice.h> #include <linux/inetdevice.h>
#include <linux/etherdevice.h> #include <linux/etherdevice.h>
#include <linux/ethtool.h> #include <linux/ethtool.h>
......
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
#include <linux/net_tstamp.h> #include <linux/net_tstamp.h>
#include <linux/reset.h> #include <linux/reset.h>
#include <net/page_pool.h> #include <net/page_pool.h>
#include <uapi/linux/bpf.h>
struct stmmac_resources { struct stmmac_resources {
void __iomem *addr; void __iomem *addr;
......
...@@ -6,6 +6,8 @@ ...@@ -6,6 +6,8 @@
#ifndef DRIVERS_NET_ETHERNET_TI_CPSW_PRIV_H_ #ifndef DRIVERS_NET_ETHERNET_TI_CPSW_PRIV_H_
#define DRIVERS_NET_ETHERNET_TI_CPSW_PRIV_H_ #define DRIVERS_NET_ETHERNET_TI_CPSW_PRIV_H_
#include <uapi/linux/bpf.h>
#include "davinci_cpdma.h" #include "davinci_cpdma.h"
#define CPSW_DEBUG (NETIF_MSG_HW | NETIF_MSG_WOL | \ #define CPSW_DEBUG (NETIF_MSG_HW | NETIF_MSG_WOL | \
......
...@@ -3,15 +3,9 @@ ...@@ -3,15 +3,9 @@
#define _BPF_NETNS_H #define _BPF_NETNS_H
#include <linux/mutex.h> #include <linux/mutex.h>
#include <net/netns/bpf.h>
#include <uapi/linux/bpf.h> #include <uapi/linux/bpf.h>
enum netns_bpf_attach_type {
NETNS_BPF_INVALID = -1,
NETNS_BPF_FLOW_DISSECTOR = 0,
NETNS_BPF_SK_LOOKUP,
MAX_NETNS_BPF_ATTACH_TYPE
};
static inline enum netns_bpf_attach_type static inline enum netns_bpf_attach_type
to_netns_bpf_attach_type(enum bpf_attach_type attach_type) to_netns_bpf_attach_type(enum bpf_attach_type attach_type)
{ {
......
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
#include <net/inetpeer.h> #include <net/inetpeer.h>
#include <net/fib_notifier.h> #include <net/fib_notifier.h>
#include <linux/indirect_call_wrapper.h> #include <linux/indirect_call_wrapper.h>
#include <uapi/linux/bpf.h>
#ifdef CONFIG_IPV6_MULTIPLE_TABLES #ifdef CONFIG_IPV6_MULTIPLE_TABLES
#define FIB6_TABLE_HASHSZ 256 #define FIB6_TABLE_HASHSZ 256
......
...@@ -6,11 +6,18 @@ ...@@ -6,11 +6,18 @@
#ifndef __NETNS_BPF_H__ #ifndef __NETNS_BPF_H__
#define __NETNS_BPF_H__ #define __NETNS_BPF_H__
#include <linux/bpf-netns.h> #include <linux/list.h>
struct bpf_prog; struct bpf_prog;
struct bpf_prog_array; struct bpf_prog_array;
enum netns_bpf_attach_type {
NETNS_BPF_INVALID = -1,
NETNS_BPF_FLOW_DISSECTOR = 0,
NETNS_BPF_SK_LOOKUP,
MAX_NETNS_BPF_ATTACH_TYPE
};
struct netns_bpf { struct netns_bpf {
/* Array of programs to run compiled from progs or links */ /* Array of programs to run compiled from progs or links */
struct bpf_prog_array __rcu *run_array[MAX_NETNS_BPF_ATTACH_TYPE]; struct bpf_prog_array __rcu *run_array[MAX_NETNS_BPF_ATTACH_TYPE];
......
// SPDX-License-Identifier: GPL-2.0 // SPDX-License-Identifier: GPL-2.0
#include <linux/bpf.h> #include <linux/bpf.h>
#include <linux/bpf-netns.h>
#include <linux/filter.h> #include <linux/filter.h>
#include <net/net_namespace.h> #include <net/net_namespace.h>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment