]> Git Repo - linux.git/commitdiff
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf
authorDavid S. Miller <[email protected]>
Fri, 10 Apr 2020 00:39:22 +0000 (17:39 -0700)
committerDavid S. Miller <[email protected]>
Fri, 10 Apr 2020 00:39:22 +0000 (17:39 -0700)
Daniel Borkmann says:

====================
pull-request: bpf 2020-04-10

The following pull-request contains BPF updates for your *net* tree.

We've added 13 non-merge commits during the last 7 day(s) which contain
a total of 13 files changed, 137 insertions(+), 43 deletions(-).

The main changes are:

1) JIT code emission fixes for riscv and arm32, from Luke Nelson and Xi Wang.

2) Disable vmlinux BTF info if GCC_PLUGIN_RANDSTRUCT is used, from Slava Bacherikov.

3) Fix oob write in AF_XDP when meta data is used, from Li RongQing.

4) Fix bpf_get_link_xdp_id() handling on single prog when flags are specified,
   from Andrey Ignatov.

5) Fix sk_assign() BPF helper for request sockets that can have sk_reuseport
   field uninitialized, from Joe Stringer.

6) Fix mprotect() test case for the BPF LSM, from KP Singh.
====================

Signed-off-by: David S. Miller <[email protected]>
1  2 
lib/Kconfig.debug
net/core/sock.c

diff --combined lib/Kconfig.debug
index 50c1f5f08e6f17952295dd561e519299776423ae,4cb4671b1d9e770372c14517f8e23d2eb81c0ce3..21d9c5f6e7ec7552be6f46fa352a29394465e3cc
@@@ -98,7 -98,7 +98,7 @@@ config DYNAMIC_DEBU
        bool "Enable dynamic printk() support"
        default n
        depends on PRINTK
 -      depends on DEBUG_FS
 +      depends on (DEBUG_FS || PROC_FS)
        help
  
          Compiles debug level messages into the kernel, which would not
          Usage:
  
          Dynamic debugging is controlled via the 'dynamic_debug/control' file,
 -        which is contained in the 'debugfs' filesystem. Thus, the debugfs
 -        filesystem must first be mounted before making use of this feature.
 +        which is contained in the 'debugfs' filesystem or procfs.
 +        Thus, the debugfs or procfs filesystem must first be mounted before
 +        making use of this feature.
          We refer the control file as: <debugfs>/dynamic_debug/control. This
          file contains a list of the debug statements that can be enabled. The
          format for each line of the file is:
@@@ -242,6 -241,8 +242,8 @@@ config DEBUG_INFO_DWARF
  config DEBUG_INFO_BTF
        bool "Generate BTF typeinfo"
        depends on DEBUG_INFO
+       depends on !DEBUG_INFO_SPLIT && !DEBUG_INFO_REDUCED
+       depends on !GCC_PLUGIN_RANDSTRUCT || COMPILE_TEST
        help
          Generate deduplicated BTF type information from DWARF debug info.
          Turning this on expects presence of pahole tool, which will convert
@@@ -305,6 -306,18 +307,6 @@@ config HEADERS_INSTAL
          user-space program samples. It is also needed by some features such
          as uapi header sanity checks.
  
 -config OPTIMIZE_INLINING
 -      def_bool y
 -      help
 -        This option determines if the kernel forces gcc to inline the functions
 -        developers have marked 'inline'. Doing so takes away freedom from gcc to
 -        do what it thinks is best, which is desirable for the gcc 3.x series of
 -        compilers. The gcc 4.x series have a rewritten inlining algorithm and
 -        enabling this option will generate a smaller kernel there. Hopefully
 -        this algorithm is so good that allowing gcc 4.x and above to make the
 -        decision will become the default in the future. Until then this option
 -        is there to test gcc for this.
 -
  config DEBUG_SECTION_MISMATCH
        bool "Enable full Section mismatch analysis"
        help
@@@ -976,18 -989,6 +978,18 @@@ config WQ_WATCHDO
          state.  This can be configured through kernel parameter
          "workqueue.watchdog_thresh" and its sysfs counterpart.
  
 +config TEST_LOCKUP
 +      tristate "Test module to generate lockups"
 +      help
 +        This builds the "test_lockup" module that helps to make sure
 +        that watchdogs and lockup detectors are working properly.
 +
 +        Depending on module parameters it could emulate soft or hard
 +        lockup, "hung task", or locking arbitrary lock for a long time.
 +        Also it could generate series of lockups with cooling-down periods.
 +
 +        If unsure, say N.
 +
  endmenu # "Debug lockups and hangs"
  
  menu "Scheduler Debugging"
@@@ -1655,7 -1656,7 +1657,7 @@@ config FAILSLA
          Provide fault-injection capability for kmalloc.
  
  config FAIL_PAGE_ALLOC
 -      bool "Fault-injection capabilitiy for alloc_pages()"
 +      bool "Fault-injection capability for alloc_pages()"
        depends on FAULT_INJECTION
        help
          Provide fault-injection capability for alloc_pages().
diff --combined net/core/sock.c
index ce1d8dce9b7aba7aa5a7e4b69c09bb6e889fb067,0510826bf8609706da2444dbfdc273d0494b6dc9..90509c37d29116b14b3b1849222c3a6148a0cb38
@@@ -574,7 -574,7 +574,7 @@@ static int sock_setbindtodevice_locked(
  
        /* Sorry... */
        ret = -EPERM;
 -      if (!ns_capable(net->user_ns, CAP_NET_RAW))
 +      if (sk->sk_bound_dev_if && !ns_capable(net->user_ns, CAP_NET_RAW))
                goto out;
  
        ret = -EINVAL;
@@@ -1872,7 -1872,7 +1872,7 @@@ struct sock *sk_clone_lock(const struc
                 * as not suitable for copying when cloning.
                 */
                if (sk_user_data_is_nocopy(newsk))
-                       RCU_INIT_POINTER(newsk->sk_user_data, NULL);
+                       newsk->sk_user_data = NULL;
  
                newsk->sk_err      = 0;
                newsk->sk_err_soft = 0;
This page took 0.084424 seconds and 4 git commands to generate.