• D
    Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next · b8af417e
    David S. Miller 提交于
    Daniel Borkmann says:
    
    ====================
    pull-request: bpf-next 2021-02-16
    
    The following pull-request contains BPF updates for your *net-next* tree.
    
    There's a small merge conflict between 7eeba170 ("tcp: Add receive timestamp
    support for receive zerocopy.") from net-next tree and 9cacf81f ("bpf: Remove
    extra lock_sock for TCP_ZEROCOPY_RECEIVE") from bpf-next tree. Resolve as follows:
    
      [...]
                    lock_sock(sk);
                    err = tcp_zerocopy_receive(sk, &zc, &tss);
                    err = BPF_CGROUP_RUN_PROG_GETSOCKOPT_KERN(sk, level, optname,
                                                              &zc, &len, err);
                    release_sock(sk);
      [...]
    
    We've added 116 non-merge commits during the last 27 day(s) which contain
    a total of 156 files changed, 5662 insertions(+), 1489 deletions(-).
    
    The main changes are:
    
    1) Adds support of pointers to types with known size among global function
       args to overcome the limit on max # of allowed args, from Dmitrii Banshchikov.
    
    2) Add bpf_iter for task_vma which can be used to generate information similar
       to /proc/pid/maps, from Song Liu.
    
    3) Enable bpf_{g,s}etsockopt() from all sock_addr related program hooks. Allow
       rewriting bind user ports from BPF side below the ip_unprivileged_port_start
       range, both from Stanislav Fomichev.
    
    4) Prevent recursion on fentry/fexit & sleepable programs and allow map-in-map
       as well as per-cpu maps for the latter, from Alexei Starovoitov.
    
    5) Add selftest script to run BPF CI locally. Also enable BPF ringbuffer
       for sleepable programs, both from KP Singh.
    
    6) Extend verifier to enable variable offset read/write access to the BPF
       program stack, from Andrei Matei.
    
    7) Improve tc & XDP MTU handling and add a new bpf_check_mtu() helper to
       query device MTU from programs, from Jesper Dangaard Brouer.
    
    8) Allow bpf_get_socket_cookie() helper also be called from [sleepable] BPF
       tracing programs, from Florent Revest.
    
    9) Extend x86 JIT to pad JMPs with NOPs for helping image to converge when
       otherwise too many passes are required, from Gary Lin.
    
    10) Verifier fixes on atomics with BPF_FETCH as well as function-by-function
        verification both related to zero-extension handling, from Ilya Leoshkevich.
    
    11) Better kernel build integration of resolve_btfids tool, from Jiri Olsa.
    
    12) Batch of AF_XDP selftest cleanups and small performance improvement
        for libbpf's xsk map redirect for newer kernels, from Björn Töpel.
    
    13) Follow-up BPF doc and verifier improvements around atomics with
        BPF_FETCH, from Brendan Jackman.
    
    14) Permit zero-sized data sections e.g. if ELF .rodata section contains
        read-only data from local variables, from Yonghong Song.
    
    15) veth driver skb bulk-allocation for ndo_xdp_xmit, from Lorenzo Bianconi.
    ====================
    Signed-off-by: NDavid S. Miller <davem@davemloft.net>
    b8af417e
udp.c 44.5 KB