1. 04 Jun, 2018 12 commits
  2. 03 Jun, 2018 4 commits
    • Ingo Molnar's avatar
      Merge tag 'perf-urgent-for-mingo-4.17-20180602' of... · 4e9ae0d3
      Ingo Molnar authored
      Merge tag 'perf-urgent-for-mingo-4.17-20180602' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent
      
      Pull perf/urgent fixes from Carvalho de Melo:
      
      - Update prctl and cpufeatures.h tools/ copies with the kernel sources
        originals, which makes 'perf trace' know about the new prctl options
        for speculation control and silences the build warnings (Arnaldo Carvalho de Melo)
      
      - Update insn.h in Intel-PT instruction decoder with its original from from the
        kernel sources, to silence build warnings, no effect on the actual tools this
        time around (Arnaldo Carvalho de Melo)
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      4e9ae0d3
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 874cd339
      Linus Torvalds authored
      Pull scheduler fixes from Thomas Gleixner:
      
       - two patches addressing the problem that the scheduler allows under
         certain conditions user space tasks to be scheduled on CPUs which are
         not yet fully booted which causes a few subtle and hard to debug
         issue
      
       - add a missing runqueue clock update in the deadline scheduler which
         triggers a warning under certain circumstances
      
       - fix a silly typo in the scheduler header file
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/headers: Fix typo
        sched/deadline: Fix missing clock update
        sched/core: Require cpu_active() in select_task_rq(), for user tasks
        sched/core: Fix rules for running on online && !active CPUs
      874cd339
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 26bdace7
      Linus Torvalds authored
      Pull perf tooling fixes from Thomas Gleixner:
      
       - fix 'perf test Session topology' segfault on s390 (Thomas Richter)
      
       - fix NULL return handling in bpf__prepare_load() (YueHaibing)
      
       - fix indexing on Coresight ETM packet queue decoder (Mathieu Poirier)
      
       - fix perf.data format description of NRCPUS header (Arnaldo Carvalho
         de Melo)
      
       - update perf.data documentation section on cpu topology
      
       - handle uncore event aliases in small groups properly (Kan Liang)
      
       - add missing perf_sample.addr into python sample dictionary (Leo Yan)
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf tools: Fix perf.data format description of NRCPUS header
        perf script python: Add addr into perf sample dict
        perf data: Update documentation section on cpu topology
        perf cs-etm: Fix indexing for decoder packet queue
        perf bpf: Fix NULL return handling in bpf__prepare_load()
        perf test: "Session topology" dumps core on s390
        perf parse-events: Handle uncore event aliases in small groups properly
      26bdace7
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 918fe1b3
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Infinite loop in _decode_session6(), from Eric Dumazet.
      
       2) Pass correct argument to nla_strlcpy() in netfilter, also from Eric
          Dumazet.
      
       3) Out of bounds memory access in ipv6 srh code, from Mathieu Xhonneux.
      
       4) NULL deref in XDP_REDIRECT handling of tun driver, from Toshiaki
          Makita.
      
       5) Incorrect idr release in cls_flower, from Paul Blakey.
      
       6) Probe error handling fix in davinci_emac, from Dan Carpenter.
      
       7) Memory leak in XPS configuration, from Alexander Duyck.
      
       8) Use after free with cloned sockets in kcm, from Kirill Tkhai.
      
       9) MTU handling fixes fo ip_tunnel and ip6_tunnel, from Nicolas
          Dichtel.
      
      10) Fix UAPI hole in bpf data structure for 32-bit compat applications,
          from Daniel Borkmann.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (33 commits)
        bpf: fix uapi hole for 32 bit compat applications
        net: usb: cdc_mbim: add flag FLAG_SEND_ZLP
        ip6_tunnel: remove magic mtu value 0xFFF8
        ip_tunnel: restore binding to ifaces with a large mtu
        net: dsa: b53: Add BCM5389 support
        kcm: Fix use-after-free caused by clonned sockets
        net-sysfs: Fix memory leak in XPS configuration
        ixgbe: fix parsing of TC actions for HW offload
        net: ethernet: davinci_emac: fix error handling in probe()
        net/ncsi: Fix array size in dumpit handler
        cls_flower: Fix incorrect idr release when failing to modify rule
        net/sonic: Use dma_mapping_error()
        xfrm Fix potential error pointer dereference in xfrm_bundle_create.
        vhost_net: flush batched heads before trying to busy polling
        tun: Fix NULL pointer dereference in XDP redirect
        be2net: Fix error detection logic for BE3
        net: qmi_wwan: Add Netgear Aircard 779S
        mlxsw: spectrum: Forbid creation of VLAN 1 over port/LAG
        atm: zatm: fix memcmp casting
        iwlwifi: pcie: compare with number of IRQs requested for, not number of CPUs
        ...
      918fe1b3
  3. 02 Jun, 2018 15 commits
  4. 01 Jun, 2018 9 commits
    • Arnaldo Carvalho de Melo's avatar
      perf tools intel-pt-decoder: Update insn.h from the kernel sources · 0b3a1838
      Arnaldo Carvalho de Melo authored
      To pick up the changes in:
      
        ee6a7354 ("kprobes/x86: Prohibit probing on exception masking instructions")
      
      That doesn't entail changes in tooling, but silences this perf build
      warning:
      
        Warning: Intel PT: x86 instruction decoder header at 'tools/perf/util/intel-pt-decoder/insn.h' differs from latest version at 'arch/x86/include/asm/insn.h'
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Masami Hiramatsu <mhiramat@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Wang Nan <wangnan0@huawei.com>
      Link: https://lkml.kernel.org/n/tip-o3wfwjnyh7r8l0gi9q3y9f44@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      0b3a1838
    • Arnaldo Carvalho de Melo's avatar
      tools headers: Sync x86 cpufeatures.h with the kernel sources · a20d23bb
      Arnaldo Carvalho de Melo authored
      To pick up changes found in these csets:
      
       11fb0683 x86/speculation: Add virtualized speculative store bypass disable support
       d1035d97 x86/cpufeatures: Add FEATURE_ZEN
       52817587 x86/cpufeatures: Disentangle SSBD enumeration
       7eb8956a x86/cpufeatures: Disentangle MSR_SPEC_CTRL enumeration from IBRS
       e7c587da x86/speculation: Use synthetic bits for IBRS/IBPB/STIBP
       9f65fb29 x86/bugs: Rename _RDS to _SSBD
       764f3c21 x86/bugs/AMD: Add support to disable RDS on Fam[15,16,17]h if requested
       24f7fc83 x86/bugs: Provide boot parameters for the spec_store_bypass_disable mitigation
       0cc5fa00 x86/cpufeatures: Add X86_FEATURE_RDS
       c456442c x86/bugs: Expose /sys/../spec_store_bypass
      
      The usage of this file in tools doesn't use the newly added X86_FEATURE_
      defines:
      
        CC       /tmp/build/perf/bench/mem-memcpy-x86-64-asm.o
        CC       /tmp/build/perf/bench/mem-memset-x86-64-asm.o
        LD       /tmp/build/perf/bench/perf-in.o
        LD       /tmp/build/perf/perf-in.o
      
      Silencing this perf build warning:
      
        Warning: Kernel ABI header at 'tools/arch/x86/include/asm/cpufeatures.h' differs from latest version at 'arch/x86/include/asm/cpufeatures.h'
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Tom Lendacky <thomas.lendacky@amd.com>
      Cc: Wang Nan <wangnan0@huawei.com>
      Link: https://lkml.kernel.org/n/tip-mrwyauyov8c7s048abg26khg@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      a20d23bb
    • Arnaldo Carvalho de Melo's avatar
      tools headers: Synchronize prctl.h ABI header · 63b89a19
      Arnaldo Carvalho de Melo authored
      To pick up changes from:
      
        $ git log --oneline -2 -i include/uapi/linux/prctl.h
        356e4bff prctl: Add force disable speculation
        b617cfc8 prctl: Add speculation control prctls
      
        $ tools/perf/trace/beauty/prctl_option.sh > before.c
        $ cp include/uapi/linux/prctl.h tools/include/uapi/linux/prctl.h
        $ tools/perf/trace/beauty/prctl_option.sh > after.c
        $ diff -u before.c after.c
        --- before.c	2018-06-01 10:39:53.834073962 -0300
        +++ after.c	2018-06-01 10:42:11.307985394 -0300
        @@ -35,6 +35,8 @@
                [42] = "GET_THP_DISABLE",
                [45] = "SET_FP_MODE",
                [46] = "GET_FP_MODE",
        +       [52] = "GET_SPECULATION_CTRL",
        +       [53] = "SET_SPECULATION_CTRL",
         };
         static const char *prctl_set_mm_options[] = {
       	  [1] = "START_CODE",
        $
      
      This will be used by 'perf trace' to show these strings when beautifying
      the prctl syscall args. At some point we'll be able to say something
      like:
      
      	'perf trace --all-cpus -e prctl(option=*SPEC*)'
      
      To filter by arg by name.
      
        This silences this warning when building tools/perf:
      
          Warning: Kernel ABI header at 'tools/include/uapi/linux/prctl.h' differs from latest version at 'include/uapi/linux/prctl.h'
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Wang Nan <wangnan0@huawei.com>
      Link: https://lkml.kernel.org/n/tip-zztsptwhc264r8wg44tqh5gp@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      63b89a19
    • Arnaldo Carvalho de Melo's avatar
      perf trace beauty prctl: Default header_dir to cwd to work without parms · 0d690fc0
      Arnaldo Carvalho de Melo authored
      Useful when checking the effects of header synchs for the files it uses
      as a input to generate string tables, in retrospect this is how it
      should've been done from day 1, not requiring the header_dir to be set
      on the Makefile, will change everything later, so that the only parm,
      common to all generators will be $(srctree) and $(beauty_outdir).
      
      So, to see what it generates, just call it without any parameters:
      
        $ tools/perf/trace/beauty/prctl_option.sh
        static const char *prctl_options[] = {
      	  [1] = "SET_PDEATHSIG",
      	  [2] = "GET_PDEATHSIG",
      	  [3] = "GET_DUMPABLE",
      	  [4] = "SET_DUMPABLE",
      	  [5] = "GET_UNALIGN",
      	  [6] = "SET_UNALIGN",
      	  [7] = "GET_KEEPCAPS",
      	  [8] = "SET_KEEPCAPS",
      	  [9] = "GET_FPEMU",
      	  [10] = "SET_FPEMU",
      	  [11] = "GET_FPEXC",
      	  [12] = "SET_FPEXC",
      	  [13] = "GET_TIMING",
      	  [14] = "SET_TIMING",
      	  [15] = "SET_NAME",
      	  [16] = "GET_NAME",
      	  [19] = "GET_ENDIAN",
      	  [20] = "SET_ENDIAN",
      	  [21] = "GET_SECCOMP",
      	  [22] = "SET_SECCOMP",
      	  [25] = "GET_TSC",
      	  [26] = "SET_TSC",
      	  [27] = "GET_SECUREBITS",
      	  [28] = "SET_SECUREBITS",
      	  [29] = "SET_TIMERSLACK",
      	  [30] = "GET_TIMERSLACK",
      	  [35] = "SET_MM",
      	  [36] = "SET_CHILD_SUBREAPER",
      	  [37] = "GET_CHILD_SUBREAPER",
      	  [38] = "SET_NO_NEW_PRIVS",
      	  [39] = "GET_NO_NEW_PRIVS",
      	  [40] = "GET_TID_ADDRESS",
      	  [41] = "SET_THP_DISABLE",
      	  [42] = "GET_THP_DISABLE",
      	  [45] = "SET_FP_MODE",
      	  [46] = "GET_FP_MODE",
        };
        static const char *prctl_set_mm_options[] = {
      	  [1] = "START_CODE",
      	  [2] = "END_CODE",
      	  [3] = "START_DATA",
      	  [4] = "END_DATA",
      	  [5] = "START_STACK",
      	  [6] = "START_BRK",
      	  [7] = "BRK",
      	  [8] = "ARG_START",
      	  [9] = "ARG_END",
      	  [10] = "ENV_START",
      	  [11] = "ENV_END",
      	  [12] = "AUXV",
      	  [13] = "EXE_FILE",
      	  [14] = "MAP",
      	  [15] = "MAP_SIZE",
        };
        $
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Wang Nan <wangnan0@huawei.com>
      Link: https://lkml.kernel.org/n/tip-qtotspuztydjttxi7k6mec6h@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      0d690fc0
    • Daniele Palmas's avatar
      net: usb: cdc_mbim: add flag FLAG_SEND_ZLP · 9f7c7283
      Daniele Palmas authored
      Testing Telit LM940 with ICMP packets > 14552 bytes revealed that
      the modem needs FLAG_SEND_ZLP to properly work, otherwise the cdc
      mbim data interface won't be anymore responsive.
      Signed-off-by: default avatarDaniele Palmas <dnlplm@gmail.com>
      Acked-by: default avatarBjørn Mork <bjorn@mork.no>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9f7c7283
    • David S. Miller's avatar
      Merge branch 'tunnel-mtus' · 8a118015
      David S. Miller authored
      Nicolas Dichtel says:
      
      ====================
      ip[6] tunnels: fix mtu calculations
      
      The first patch restores the possibility to bind an ip4 tunnel to an
      interface whith a large mtu.
      The second patch was spotted after the first fix. I also target it to net
      because it fixes the max mtu value that can be used for ipv6 tunnels.
      
      v2: remove the 0xfff8 in ip_tunnel_newlink()
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8a118015
    • Nicolas Dichtel's avatar
      ip6_tunnel: remove magic mtu value 0xFFF8 · f7ff1fde
      Nicolas Dichtel authored
      I don't know where this value comes from (probably a copy and paste and
      paste and paste ...).
      Let's use standard values which are a bit greater.
      
      Link: https://git.kernel.org/pub/scm/linux/kernel/git/davem/netdev-vger-cvs.git/commit/?id=e5afd356a411aSigned-off-by: default avatarNicolas Dichtel <nicolas.dichtel@6wind.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f7ff1fde
    • Nicolas Dichtel's avatar
      ip_tunnel: restore binding to ifaces with a large mtu · 82612de1
      Nicolas Dichtel authored
      After commit f6cc9c05, the following conf is broken (note that the
      default loopback mtu is 65536, ie IP_MAX_MTU + 1):
      
      $ ip tunnel add gre1 mode gre local 10.125.0.1 remote 10.125.0.2 dev lo
      add tunnel "gre0" failed: Invalid argument
      $ ip l a type dummy
      $ ip l s dummy1 up
      $ ip l s dummy1 mtu 65535
      $ ip tunnel add gre1 mode gre local 10.125.0.1 remote 10.125.0.2 dev dummy1
      add tunnel "gre0" failed: Invalid argument
      
      dev_set_mtu() doesn't allow to set a mtu which is too large.
      First, let's cap the mtu returned by ip_tunnel_bind_dev(). Second, remove
      the magic value 0xFFF8 and use IP_MAX_MTU instead.
      0xFFF8 seems to be there for ages, I don't know why this value was used.
      
      With a recent kernel, it's also possible to set a mtu > IP_MAX_MTU:
      $ ip l s dummy1 mtu 66000
      After that patch, it's also possible to bind an ip tunnel on that kind of
      interface.
      
      CC: Petr Machata <petrm@mellanox.com>
      CC: Ido Schimmel <idosch@mellanox.com>
      Link: https://git.kernel.org/pub/scm/linux/kernel/git/davem/netdev-vger-cvs.git/commit/?id=e5afd356a411a
      Fixes: f6cc9c05 ("ip_tunnel: Emit events for post-register MTU changes")
      Signed-off-by: default avatarNicolas Dichtel <nicolas.dichtel@6wind.com>
      Reviewed-by: default avatarIdo Schimmel <idosch@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      82612de1
    • David S. Miller's avatar
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec · ccfde6e2
      David S. Miller authored
      Steffen Klassert says:
      
      ====================
      pull request (net): ipsec 2018-05-31
      
      1) Avoid possible overflow of the offset variable
         in  _decode_session6(), this fixes an infinite
         lookp there. From Eric Dumazet.
      
      2) We may use an error pointer in the error path of
         xfrm_bundle_create(). Fix this by returning this
         pointer directly to the caller.
      
      Please pull or let me know if there are problems.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ccfde6e2