1. 18 May, 2019 1 commit
    • Ingo Molnar's avatar
      Merge tag 'perf-core-for-mingo-5.2-20190517' of... · 62e1c094
      Ingo Molnar authored
      Merge tag 'perf-core-for-mingo-5.2-20190517' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
      
      Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:
      
      perf.data:
      
        Alexey Budankov:
      
        - Streaming compression of perf ring buffer into PERF_RECORD_COMPRESSED
          user space records, resulting in ~3-5x perf.data file size reduction
          on variety of tested workloads what saves storage space on larger
          server systems where perf.data size can easily reach several tens or
          even hundreds of GiBs, especially when profiling with DWARF-based
          stacks and tracing of context switches.
      
      perf record:
      
        Arnaldo Carvalho de Melo
      
        - Improve -user-regs/intr-regs suggestions to overcome errors.
      
      perf annotate:
      
        Jin Yao:
      
        - Remove hist__account_cycles() from callback, speeding up branch processing
          (perf record -b).
      
      perf stat:
      
        - Add a 'percore' event qualifier, e.g.: -e cpu/event=0,umask=0x3,percore=1/,
          that sums up the event counts for both hardware threads in a core.
      
          We can already do this with --per-core, but it's often useful to do
          this together with other metrics that are collected per hardware thread.
      
          I.e. now its possible to do this per-event, and have it mixed with other
          events not aggregated by core.
      
      core libraries:
      
        Donald Yandt:
      
        - Check for errors when doing fgets(/proc/version).
      
        Jiri Olsa:
      
        - Speed up report for perf compiled with linbunwind.
      
      tools headers:
      
        Arnaldo Carvalho de Melo
      
        - Update memcpy_64.S, x86's kvm.h and pt_regs.h.
      
      arm64:
      
        Florian Fainelli:
      
        - Map Brahma-B53 CPUID to cortex-a53 events.
      
        - Add Cortex-A57 and Cortex-A72 events.
      
      csky:
      
        Mao Han:
      
        - Add DWARF register mappings for libdw, allowing --call-graph=dwarf to work
          on the C-SKY arch.
      
      x86:
      
        Andi Kleen/Kan Liang:
      
        - Add support for recording and printing XMM registers, available, for
          instance, on Icelake.
      
        Kan Liang:
      
        - Add uncore_upi (Intel's "Ultra Path Interconnect" events) JSON support.
          UPI replaced the Intel QuickPath Interconnect (QPI) in Xeon Skylake-SP.
      
      Intel PT:
      
        Adrian Hunter
      
        . Fix instructions sampling rate.
      
        . Timestamp fixes.
      
        . Improve exported-sql-viewer GUI, allowing, for instance, to copy'n'paste
          the trees, useful for e-mailing.
      
      Documentation:
      
        Thomas Richter:
      
        - Add description for 'perf --debug stderr=1', which redirects stderr to stdout.
      
      libtraceevent:
      
        Tzvetomir Stoyanov:
      
        - Add man pages for the various APIs.
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      62e1c094
  2. 16 May, 2019 36 commits
    • Linus Torvalds's avatar
      Merge tag 'media/v5.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 01be377c
      Linus Torvalds authored
      Pull media fixes from Mauro Carvalho Chehab:
       "Some fixes for some platform drivers (rockchip, atmel, omap, daVinci,
        tegra-cec, coda and rcar).
      
        Also includes a fix on one of the V4L2 uAPI doc, explaining a border
        case"
      
      * tag 'media/v5.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        media: rockchip/vpu: Fix/re-order probe-error/remove path
        media: rockchip/vpu: Initialize mdev->bus_info
        media: rockchip/vpu: Get vdev from the file arg in vidioc_querycap()
        media: rockchip/vpu: Add missing dont_use_autosuspend() calls
        media: rockchip/vpu: Do not request id 0 for our video device
        media: tegra-cec: fix cec_notifier_parse_hdmi_phandle return check
        media: davinci/vpbe: array underflow in vpbe_enum_outputs()
        media: field-order.rst: clarify FIELD_ANY and FIELD_NONE
        media: staging/imx: add media device to capture register
        media: rcar-csi2: Propagate the FLD signal for NTSC and PAL
        media: rcar-csi2: restart CSI-2 link if error is detected
        media: omap_vout: potential buffer overflow in vidioc_dqbuf()
        media: coda: fix unset field and fail on invalid field in buf_prepare
        media: atmel: atmel-isc: fix asd memory allocation
        media: atmel: atmel-isc: fix INIT_WORK misplacement
        media: atmel: atmel-isc: limit incoming pixels per frame
      01be377c
    • Linus Torvalds's avatar
      Merge tag 'edac_fixes_for_5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 11b11773
      Linus Torvalds authored
      Pull EDAC fixes from Borislav Petkov:
      
       - Do not build mpc85_edac as a module (Michael Ellerman)
      
       - Correct edac_mc_find()'s return value on error (Robert Richter)
      
      * tag 'edac_fixes_for_5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC/mc: Fix edac_mc_find() in case no device is found
        EDAC/mpc85xx: Prevent building as a module
      11b11773
    • Linus Torvalds's avatar
      Merge tag 'configfs-for-5.2' of git://git.infradead.org/users/hch/configfs · 4e785e8d
      Linus Torvalds authored
      Pull configfs update from Christoph Hellwig:
      
       - a fix for an error path use after free (YueHaibing)
      
      * tag 'configfs-for-5.2' of git://git.infradead.org/users/hch/configfs:
        configfs: fix possible use-after-free in configfs_register_group
      4e785e8d
    • Linus Torvalds's avatar
      Merge tag 'asm-generic-nommu' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic · 27ebbf9d
      Linus Torvalds authored
      Pull nommu generic uaccess updates from Arnd Bergmann:
       "asm-generic: kill <asm/segment.h> and improve nommu generic uaccess helpers
      
        Christoph Hellwig writes:
      
           This is a series doing two somewhat interwinded things. It improves
           the asm-generic nommu uaccess helper to optionally be entirely
           generic and not require any arch helpers for the actual uaccess.
           For the generic uaccess.h to actually be generically useful I also
           had to kill off the mess we made of <asm/segment.h>, which really
           shouldn't exist on most architectures"
      
      * tag 'asm-generic-nommu' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
        asm-generic: optimize generic uaccess for 8-byte loads and stores
        asm-generic: provide entirely generic nommu uaccess
        arch: mostly remove <asm/segment.h>
        asm-generic: don't include <asm/segment.h> from <asm/uaccess.h>
      27ebbf9d
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d396360a
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar:
       "Misc fixes and updates:
      
         - a handful of MDS documentation/comment updates
      
         - a cleanup related to hweight interfaces
      
         - a SEV guest fix for large pages
      
         - a kprobes LTO fix
      
         - and a final cleanup commit for vDSO HPET support removal"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/speculation/mds: Improve CPU buffer clear documentation
        x86/speculation/mds: Revert CPU buffer clear on double fault exit
        x86/kconfig: Disable CONFIG_GENERIC_HWEIGHT and remove __HAVE_ARCH_SW_HWEIGHT
        x86/mm: Do not use set_{pud, pmd}_safe() when splitting a large page
        x86/kprobes: Make trampoline_handler() global and visible
        x86/vdso: Remove hpet_page from vDSO
      d396360a
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b2c3dda6
      Linus Torvalds authored
      Pull time fixes from Ingo Molnar:
       "A TIA adjtimex interface extension, and a POSIX compliance ABI fix for
        timespec64 users"
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        ntp: Allow TAI-UTC offset to be set to zero
        y2038: Make CONFIG_64BIT_TIME unconditional
      b2c3dda6
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c77ee64f
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
       "An x86 PMU constraint fix, an interface fix, and a Sparse fix"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86/intel: Allow PEBS multi-entry in watermark mode
        perf/x86/intel: Fix INTEL_FLAGS_EVENT_CONSTRAINT* masking
        perf/x86/amd/iommu: Make the 'amd_iommu_attr_groups' symbol static
      c77ee64f
    • Linus Torvalds's avatar
      Merge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f57d7715
      Linus Torvalds authored
      Pull locking fix from Ingo Molnar:
       "A single rwsem fix"
      
      * 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/rwsem: Prevent decrement of reader count before increment
      f57d7715
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b2ca74d3
      Linus Torvalds authored
      Pull core fixes from Ingo Molnar:
       "A handful of objtool updates, plus a documentation addition for
        __ab_c_size()"
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        objtool: Fix whitelist documentation typo
        objtool: Fix function fallthrough detection
        objtool: Don't use ignore flag for fake jumps
        overflow.h: Add comment documenting __ab_c_size()
      b2ca74d3
    • Jin Yao's avatar
      perf stat: Support 'percore' event qualifier · 4fc4d8df
      Jin Yao authored
      With this patch, we can use the 'percore' event qualifier in perf-stat.
      
        root@skl:/tmp# perf stat -e cpu/event=0,umask=0x3,percore=1/,cpu/event=0,umask=0x3/ -a -A -I1000
          1.000773050 S0-C0   98,352,832 cpu/event=0,umask=0x3,percore=1/  (50.01%)
          1.000773050 S0-C1  103,763,057 cpu/event=0,umask=0x3,percore=1/  (50.02%)
          1.000773050 S0-C2  196,776,995 cpu/event=0,umask=0x3,percore=1/  (50.02%)
          1.000773050 S0-C3  176,493,779 cpu/event=0,umask=0x3,percore=1/  (50.02%)
          1.000773050 CPU0    47,699,641 cpu/event=0,umask=0x3/            (50.02%)
          1.000773050 CPU1    49,052,451 cpu/event=0,umask=0x3/            (49.98%)
          1.000773050 CPU2   102,771,422 cpu/event=0,umask=0x3/            (49.98%)
          1.000773050 CPU3   100,784,662 cpu/event=0,umask=0x3/            (49.98%)
          1.000773050 CPU4    43,171,342 cpu/event=0,umask=0x3/            (49.98%)
          1.000773050 CPU5    54,152,158 cpu/event=0,umask=0x3/            (49.98%)
          1.000773050 CPU6    93,618,410 cpu/event=0,umask=0x3/            (49.98%)
          1.000773050 CPU7    74,477,589 cpu/event=0,umask=0x3/            (49.99%)
      
      In this example, we count the event 'ref-cycles' per-core and per-CPU in
      one perf stat command-line. From the output, we can see:
      
        S0-C0 = CPU0 + CPU4
        S0-C1 = CPU1 + CPU5
        S0-C2 = CPU2 + CPU6
        S0-C3 = CPU3 + CPU7
      
      So the result is expected (tiny difference is ignored).
      
      Note that, the 'percore' event qualifier needs to use with option '-A'.
      Signed-off-by: default avatarJin Yao <yao.jin@linux.intel.com>
      Tested-by: default avatarRavi Bangoria <ravi.bangoria@linux.ibm.com>
      Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Jin Yao <yao.jin@intel.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/1555077590-27664-4-git-send-email-yao.jin@linux.intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      4fc4d8df
    • Jin Yao's avatar
      perf stat: Factor out aggregate counts printing · 40480a81
      Jin Yao authored
      Move the aggregate counts printing to a new function
      print_counter_aggrdata, which will be used in following patches.
      Signed-off-by: default avatarJin Yao <yao.jin@linux.intel.com>
      Tested-by: default avatarRavi Bangoria <ravi.bangoria@linux.ibm.com>
      Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Jin Yao <yao.jin@intel.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/1555077590-27664-3-git-send-email-yao.jin@linux.intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      40480a81
    • Jin Yao's avatar
      perf tools: Add a 'percore' event qualifier · 064b4e82
      Jin Yao authored
      Add a 'percore' event qualifier, like cpu/event=0,umask=0x3,percore=1/,
      that sums up the event counts for both hardware threads in a core.
      
      We can already do this with --per-core, but it's often useful to do
      this together with other metrics that are collected per hardware thread.
      So we need to support this per-core counting on a event level.
      
      This can be implemented in only the user tool, no kernel support needed.
      
       v4:
       ---
       1. Add Arnaldo's patch which updates the documentation for
          this new qualifier.
       2. Rebase to latest perf/core branch
      
       v3:
       ---
       Simplify the code according to Jiri's comments.
       Before:
         "return term->val.percore ? true : false;"
       Now:
         "return term->val.percore;"
      
       v2:
       ---
       Change the qualifier name from 'coresum' to 'percore' according to
       comments from Jiri and Andi.
      Signed-off-by: default avatarJin Yao <yao.jin@linux.intel.com>
      Tested-by: default avatarRavi Bangoria <ravi.bangoria@linux.ibm.com>
      Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Jin Yao <yao.jin@intel.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/1555077590-27664-2-git-send-email-yao.jin@linux.intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      064b4e82
    • Thomas Richter's avatar
      perf docs: Add description for stderr · 6cf62656
      Thomas Richter authored
      'perf report' displays recorded data on the screen and emits warnings
      and debug messages in the status line (last one on screen).
      
      perf also supports the possibility to write all debug messages to stderr
      (instead of writing them to the status line).
      
      This is achieved with the following command:
      
        # ./perf --debug stderr=1 report -vvvvv -i ~/fast.data 2>/tmp/2
        # ll /tmp/2
        -rw-rw-r-- 1 tmricht tmricht 5420835 May  7 13:46 /tmp/2
        #
      
      The usage of variable stderr=1 is not documented, so add it to the perf
      man page.
      Signed-off-by: default avatarThomas Richter <tmricht@linux.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Link: http://lkml.kernel.org/r/20190513080220.91966-1-tmricht@linux.ibm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      6cf62656
    • Adrian Hunter's avatar
      perf intel-pt: Fix sample timestamp wrt non-taken branches · 1b6599a9
      Adrian Hunter authored
      The sample timestamp is updated to ensure that the timestamp represents
      the time of the sample and not a branch that the decoder is still
      walking towards. The sample timestamp is updated when the decoder
      returns, but the decoder does not return for non-taken branches. Update
      the sample timestamp then also.
      
      Note that commit 3f04d98e ("perf intel-pt: Improve sample
      timestamp") was also a stable fix and appears, for example, in v4.4
      stable tree as commit a4ebb58f ("perf intel-pt: Improve sample
      timestamp").
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: stable@vger.kernel.org # v4.4+
      Fixes: 3f04d98e ("perf intel-pt: Improve sample timestamp")
      Link: http://lkml.kernel.org/r/20190510124143.27054-4-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      1b6599a9
    • Adrian Hunter's avatar
      perf intel-pt: Fix improved sample timestamp · 61b6e08d
      Adrian Hunter authored
      The decoder uses its current timestamp in samples. Usually that is a
      timestamp that has already passed, but in some cases it is a timestamp
      for a branch that the decoder is walking towards, and consequently
      hasn't reached.
      
      The intel_pt_sample_time() function decides which is which, but was not
      handling TNT packets exactly correctly.
      
      In the case of TNT, the timestamp applies to the first branch, so the
      decoder must first walk to that branch.
      
      That means intel_pt_sample_time() should return true for TNT, and this
      patch makes that change. However, if the first branch is a non-taken
      branch (i.e. a 'N'), then intel_pt_sample_time() needs to return false
      for subsequent taken branches in the same TNT packet.
      
      To handle that, introduce a new state INTEL_PT_STATE_TNT_CONT to
      distinguish the cases.
      
      Note that commit 3f04d98e ("perf intel-pt: Improve sample
      timestamp") was also a stable fix and appears, for example, in v4.4
      stable tree as commit a4ebb58f ("perf intel-pt: Improve sample
      timestamp").
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: stable@vger.kernel.org # v4.4+
      Fixes: 3f04d98e ("perf intel-pt: Improve sample timestamp")
      Link: http://lkml.kernel.org/r/20190510124143.27054-3-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      61b6e08d
    • Adrian Hunter's avatar
      perf intel-pt: Fix instructions sampling rate · 7ba8fa20
      Adrian Hunter authored
      The timestamp used to determine if an instruction sample is made, is an
      estimate based on the number of instructions since the last known
      timestamp. A consequence is that it might go backwards, which results in
      extra samples. Change it so that a sample is only made when the
      timestamp goes forwards.
      
      Note this does not affect a sampling period of 0 or sampling periods
      specified as a count of instructions.
      
      Example:
      
       Before:
      
       $ perf script --itrace=i10us
       ls 13812 [003] 2167315.222583:       3270 instructions:u:      7fac71e2e494 __GI___tunables_init+0xf4 (/lib/x86_64-linux-gnu/ld-2.28.so)
       ls 13812 [003] 2167315.222667:      30902 instructions:u:      7fac71e2da0f _dl_cache_libcmp+0x2f (/lib/x86_64-linux-gnu/ld-2.28.so)
       ls 13812 [003] 2167315.222667:         10 instructions:u:      7fac71e2d9ff _dl_cache_libcmp+0x1f (/lib/x86_64-linux-gnu/ld-2.28.so)
       ls 13812 [003] 2167315.222667:          8 instructions:u:      7fac71e2d9ea _dl_cache_libcmp+0xa (/lib/x86_64-linux-gnu/ld-2.28.so)
       ls 13812 [003] 2167315.222667:         14 instructions:u:      7fac71e2d9ea _dl_cache_libcmp+0xa (/lib/x86_64-linux-gnu/ld-2.28.so)
       ls 13812 [003] 2167315.222667:          6 instructions:u:      7fac71e2d9ff _dl_cache_libcmp+0x1f (/lib/x86_64-linux-gnu/ld-2.28.so)
       ls 13812 [003] 2167315.222667:         14 instructions:u:      7fac71e2d9ff _dl_cache_libcmp+0x1f (/lib/x86_64-linux-gnu/ld-2.28.so)
       ls 13812 [003] 2167315.222667:          4 instructions:u:      7fac71e2dab2 _dl_cache_libcmp+0xd2 (/lib/x86_64-linux-gnu/ld-2.28.so)
       ls 13812 [003] 2167315.222728:      16423 instructions:u:      7fac71e2477a _dl_map_object_deps+0x1ba (/lib/x86_64-linux-gnu/ld-2.28.so)
       ls 13812 [003] 2167315.222734:      12731 instructions:u:      7fac71e27938 _dl_name_match_p+0x68 (/lib/x86_64-linux-gnu/ld-2.28.so)
       ...
      
       After:
       $ perf script --itrace=i10us
       ls 13812 [003] 2167315.222583:       3270 instructions:u:      7fac71e2e494 __GI___tunables_init+0xf4 (/lib/x86_64-linux-gnu/ld-2.28.so)
       ls 13812 [003] 2167315.222667:      30902 instructions:u:      7fac71e2da0f _dl_cache_libcmp+0x2f (/lib/x86_64-linux-gnu/ld-2.28.so)
       ls 13812 [003] 2167315.222728:      16479 instructions:u:      7fac71e2477a _dl_map_object_deps+0x1ba (/lib/x86_64-linux-gnu/ld-2.28.so)
       ...
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: stable@vger.kernel.org
      Fixes: f4aa0819 ("perf tools: Add Intel PT decoder")
      Link: http://lkml.kernel.org/r/20190510124143.27054-2-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      7ba8fa20
    • Kan Liang's avatar
      perf regs x86: Add X86 specific arch__intr_reg_mask() · 6466ec14
      Kan Liang authored
      XMM registers can be collected on Icelake and later platforms.
      
      Add specific arch__intr_reg_mask(), which creating an event to check if
      the kernel and hardware can collect XMM registers.
      
      Test on Skylake which doesn't support XMM registers collection. There is
      nothing changed.
      
         #perf record -I?
         available registers: AX BX CX DX SI DI BP SP IP FLAGS CS SS R8 R9
         R10 R11 R12 R13 R14 R15
      
         Usage: perf record [<options>] [<command>]
          or: perf record [<options>] -- <command> [<options>]
      
          -I, --intr-regs[=<any register>]
                                sample selected machine registers on
         interrupt, use '-I?' to list register names
      
         #perf record -I
         [ perf record: Woken up 1 times to write data ]
         [ perf record: Captured and wrote 0.905 MB perf.data (2520 samples) ]
      
         #perf evlist -v
         cycles: size: 112, { sample_period, sample_freq }: 4000, sample_type:
         IP|TID|TIME|CPU|PERIOD|REGS_INTR, read_format: ID, disabled: 1,
         inherit: 1, mmap: 1, comm: 1, freq: 1, task: 1, precise_ip: 3,
         sample_id_all: 1, exclude_guest: 1, mmap2: 1, comm_exec: 1, ksymbol:
         1, bpf_event: 1, sample_regs_intr: 0xff0fff
      
      Test on Icelake which support XMM registers collection.
      
         #perf record -I?
         available registers: AX BX CX DX SI DI BP SP IP FLAGS CS SS R8 R9 R10
         R11 R12 R13 R14 R15 XMM0 XMM1 XMM2 XMM3 XMM4 XMM5 XMM6 XMM7 XMM8 XMM9
         XMM10 XMM11 XMM12 XMM13 XMM14 XMM15
      
         Usage: perf record [<options>] [<command>]
          or: perf record [<options>] -- <command> [<options>]
      
          -I, --intr-regs[=<any register>]
                                sample selected machine registers on
         interrupt, use '-I?' to list register names
      
         #perf record -I
         [ perf record: Woken up 1 times to write data ]
         [ perf record: Captured and wrote 0.800 MB perf.data (318 samples) ]
      
         #perf evlist -v
         cycles: size: 112, { sample_period, sample_freq }: 4000, sample_type:
         IP|TID|TIME|CPU|PERIOD|REGS_INTR, read_format: ID, disabled: 1,
         inherit: 1, mmap: 1, comm: 1, freq: 1, task: 1, precise_ip: 3,
         sample_id_all: 1, exclude_guest: 1, mmap2: 1, comm_exec: 1, ksymbol:
         1, bpf_event: 1, sample_regs_intr: 0xffffffff00ff0fff
      
      Committer notes:
      
      Don't set attr.sample_period as a named struct init, as it is part of an
      unnamed union in 'struct perf_event_attr', and doing so breaks the build
      on older gcc versions, such as:
      
        gcc version 4.1.2 20080704 (Red Hat 4.1.2-55)
        gcc version 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC)
      
        arch/x86/util/perf_regs.c: In function 'arch__intr_reg_mask':
        arch/x86/util/perf_regs.c:279: error: unknown field 'sample_period' specified in initializer
        cc1: warnings being treated as errors
        arch/x86/util/perf_regs.c:279: warning: missing braces around initializer
        arch/x86/util/perf_regs.c:279: warning: (near initialization for 'attr.<anonymous>')
      Signed-off-by: default avatarKan Liang <kan.liang@linux.intel.com>
      [ Only on a lenovo t480s, a skylake machine, where the XMM registers didn't show up in -I?/--user-regs=? as expected ]
      Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Link: http://lkml.kernel.org/r/1557865174-56264-3-git-send-email-kan.liang@linux.intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      6466ec14
    • Kan Liang's avatar
      perf parse-regs: Add generic support for arch__intr/user_reg_mask() · af785e75
      Kan Liang authored
      There may be different register mask for use with intr or user on some
      platforms, e.g. Icelake.
      
      Add weak functions arch__intr_reg_mask() and arch__user_reg_mask() to
      return intr and user register mask respectively.
      
      Check mask before printing or comparing the register name.
      
      Generic code always return PERF_REGS_MASK. No functional change.
      Suggested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: default avatarKan Liang <kan.liang@linux.intel.com>
      Tested-by: default avatarRavi Bangoria <ravi.bangoria@linux.ibm.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Link: http://lkml.kernel.org/r/1557865174-56264-2-git-send-email-kan.liang@linux.intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      af785e75
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 8c05f3b9
      Linus Torvalds authored
      Pull ARM updates from Russell King:
       "ARM development updates:
      
         - more unified assembly conversions for clang
      
         - drop obsolete -mauto-it assembler option
      
         - remove arm_memory_present in preference to the generic version
      
         - remove unused asm/limits.h header
      
         - vdso linker update
      
        We tried to make the assembler warn if unified syntax was not used,
        but unfortunately older versions of GCC warn, so the commit had to be
        reverted"
      
      * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm:
        Revert "ARM: 8846/1: warn if divided syntax assembler is used"
        ARM: 8858/1: vdso: use $(LD) instead of $(CC) to link VDSO
        ARM: 8855/1: remove unused <asm/limits.h>
        ARM: 8850/1: use memblocks_present
        ARM: 8854/1: drop -mauto-it
        ARM: 8846/1: warn if divided syntax assembler is used
        ARM: 8853/1: drop WASM to work around LLVM issue
        ARM: 8852/1: uaccess: use unified assembler language syntax
        ARM: 8851/1: add TUSERCOND() macro for conditional postfix
      8c05f3b9
    • Linus Torvalds's avatar
      Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · ab02888e
      Linus Torvalds authored
      Pull ARM SoC defconfig updates from Olof Johansson:
       "Mostly the usual churn due to options being reordered or not added in
        the right locations.
      
        Some various enabling of new drivers, etc.
      
        ... i.e. the usual updates, nothing particularly sticks out"
      
      * tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (23 commits)
        arm64: defconfig: Update UFSHCD for Hi3660 soc
        ARM: multi_v7_defconfig: Enable support for STPMIC1
        ARM: multi_v7_defconfig: Enable missing drivers for supported Chromebooks
        arm64: defconfig: enable mv-xor driver
        ARM: Enable Trusted Foundations for multiplatform ARM v7
        ARM: tegra: Enable Trusted Foundations by default
        ARM: tegra: Update default configuration for v5.1-rc1
        ARM: multi_v7_defconfig: Update for moved options
        ARM: multi_v7_defconfig: Update for dropped options
        ARM: shmobile: Enable USB [EO]HCI HCD PLATFORM support in shmobile_defconfig
        ARM: shmobile: Enable PHY_RCAR_GEN3_USB2 in shmobile_defconfig
        ARM: qcom_defconfig: add options for LG Nexus 5 phone
        arm64: defconfig: include the Agilex platform to the arm64 defconfig
        arm64: defconfig: Add PWM Fan support
        arm64: defconfig: Enable Tegra HDA support
        ARM: multi_v7_defconfig: Enable support for CFI NOR FLASH
        ARM: shmobile: defconfig: Enable support for CFI NOR FLASH
        ARM: shmobile: defconfig: Refresh for v5.1-rc1
        ARM: multi_v7_defconfig: enable the Amlogic Meson ADC and eFuse drivers
        arm64: defconfig: enable fpga and service layer
        ...
      ab02888e
    • Linus Torvalds's avatar
      Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · dc413a90
      Linus Torvalds authored
      Pull ARM SoC-related driver updates from Olof Johansson:
       "Various driver updates for platforms and a couple of the small driver
        subsystems we merge through our tree:
      
        Among the larger pieces:
      
         - Power management improvements for TI am335x and am437x (RTC
           suspend/wake)
      
         - Misc new additions for Amlogic (socinfo updates)
      
         - ZynqMP FPGA manager
      
         - Nvidia improvements for reset/powergate handling
      
         - PMIC wrapper for Mediatek MT8516
      
         - Misc fixes/improvements for ARM SCMI, TEE, NXP i.MX SCU drivers"
      
      * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (57 commits)
        soc: aspeed: fix Kconfig
        soc: add aspeed folder and misc drivers
        spi: zynqmp: Fix build break
        soc: imx: Add generic i.MX8 SoC driver
        MAINTAINERS: Update email for Qualcomm SoC maintainer
        memory: tegra: Fix a typos for "fdcdwr2" mc client
        Revert "ARM: tegra: Restore memory arbitration on resume from LP1 on Tegra30+"
        memory: tegra: Replace readl-writel with mc_readl-mc_writel
        memory: tegra: Fix integer overflow on tick value calculation
        memory: tegra: Fix missed registers values latching
        ARM: tegra: cpuidle: Handle tick broadcasting within cpuidle core on Tegra20/30
        optee: allow to work without static shared memory
        soc/tegra: pmc: Move powergate initialisation to probe
        soc/tegra: pmc: Remove reset sysfs entries on error
        soc/tegra: pmc: Fix reset sources and levels
        soc: amlogic: meson-gx-pwrc-vpu: Add support for G12A
        soc: amlogic: meson-gx-pwrc-vpu: Fix power on/off register bitmask
        fpga manager: Adding FPGA Manager support for Xilinx zynqmp
        dt-bindings: fpga: Add bindings for ZynqMP fpga driver
        firmware: xilinx: Add fpga API's
        ...
      dc413a90
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · e8a1d701
      Linus Torvalds authored
      Pull ARM Device-tree updates from Olof Johansson:
       "Besides new bindings and additional descriptions of hardware blocks
        for various SoCs and boards, the main new contents here is:
      
        SoCs:
         - Intel Agilex (SoCFPGA)
         - NXP i.MX8MM (Quad Cortex-A53 with media/graphics focus)
      
        New boards:
         - Allwinner:
            + RerVision H3-DVK (H3)
            + Oceanic 5205 5inMFD (H6)
            + Beelink GS2 (H6)
            + Orange Pi 3 (H6)
         - Rockchip:
            + Orange Pi RK3399
            + Nanopi NEO4
            + Veyron-Mighty Chromebook variant
         - Amlogic:
            + SEI Robotics SEI510
         - ST Micro:
            + stm32mp157a discovery1
            + stm32mp157c discovery2
         - NXP:
            + Eckelmann ci4x10 (i.MX6DL)
            + i.MX8MM EVK (i.MX8MM)
            + ZII i.MX7 RPU2 (i.MX7)
            + ZII SPB4 (VF610)
            + Zii Ultra (i.MX8M)
            + TQ TQMa7S (i.MX7Solo)
            + TQ TQMa7D (i.MX7Dual)
            + Kobo Aura (i.MX50)
            + Menlosystems M53 (i.MX53)j
         - Nvidia:
            + Jetson Nano (Tegra T210)"
      
      * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (593 commits)
        arm64: dts: bitmain: Add UART pinctrl support for Sophon Edge
        arm64: dts: bitmain: Add pinctrl support for BM1880 SoC
        arm64: dts: bitmain: Add GPIO Line names for Sophon Edge board
        arm64: dts: bitmain: Add GPIO support for BM1880 SoC
        ARM: dts: gemini: Indent DIR-685 partition table
        dt-bindings: hwmon (pwm-fan) Remove dead "cooling-*-state" properties
        ARM: dts: qcom-apq8064: Set 'cxo_board' as ref clock of the DSI PHY
        arm64: dts: msm8998: thermal: Restrict thermal zone name length to under 20
        arm64: dts: msm8998: thermal: Fix number of supported sensors
        arm64: dts: msm8998-mtp: thermal: Remove skin and battery thermal zones
        arm64: dts: exynos: Move fixed-clocks out of soc
        arm64: dts: exynos: Move pmu and timer nodes out of soc
        ARM: dts: s5pv210: Fix camera clock provider on Goni board
        ARM: dts: exynos: Properly override node to use MDMA0 on Universal C210
        ARM: dts: exynos: Move fixed-clocks out of soc on Exynos3250
        ARM: dts: exynos: Remove unneeded address/size cells from fixed-clock on Exynos3250
        ARM: dts: exynos: Move pmu and timer nodes out of soc
        arm64: dts: rockchip: fix IO domain voltage setting of APIO5 on rockpro64
        arm64: dts: db820c: Add sound card support
        arm64: dts: apq8096-db820c: Add HDMI display support
        ...
      e8a1d701
    • Linus Torvalds's avatar
      Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 22c58fd7
      Linus Torvalds authored
      Pull ARM SoC platform updates from Olof Johansson:
       "SoC updates, mostly refactorings and cleanups of old legacy platforms.
      
        Major themes this release:
      
         - Conversion of ixp4xx to a modern platform (drivers, DT, bindings)
      
         - Moving some of the ep93xx headers around to get it closer to
           multiplatform enabled.
      
         - Cleanups of Davinci
      
        This also contains a few patches that were queued up as fixes before
        5.1 but I didn't get sent in before release"
      
      * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (123 commits)
        ARM: debug-ll: add default address for digicolor
        ARM: u300: regulator: add MODULE_LICENSE()
        ARM: ep93xx: move private headers out of mach/*
        ARM: ep93xx: move pinctrl interfaces into include/linux/soc
        ARM: ep93xx: keypad: stop using mach/platform.h
        ARM: ep93xx: move network platform data to separate header
        ARM: stm32: add AMBA support for stm32 family
        MAINTAINERS: update arch/arm/mach-davinci
        ARM: rockchip: add missing of_node_put in rockchip_smp_prepare_pmu
        ARM: dts: Add queue manager and NPE to the IXP4xx DTSI
        soc: ixp4xx: qmgr: Add DT probe code
        soc: ixp4xx: qmgr: Add DT bindings for IXP4xx qmgr
        soc: ixp4xx: npe: Add DT probe code
        soc: ixp4xx: Add DT bindings for IXP4xx NPE
        soc: ixp4xx: qmgr: Pass resources
        soc: ixp4xx: Remove unused functions
        soc: ixp4xx: Uninline several functions
        soc: ixp4xx: npe: Pass addresses as resources
        ARM: ixp4xx: Turn the QMGR into a platform device
        ARM: ixp4xx: Turn the NPE into a platform device
        ...
      22c58fd7
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal · a455eda3
      Linus Torvalds authored
      Pull thermal soc updates from Eduardo Valentin:
      
       - thermal core has a new devm_* API for registering cooling devices. I
         took the entire series, that is why you see changes on drivers/hwmon
         in this pull (Guenter Roeck)
      
       - rockchip thermal driver gains support to PX30 SoC (Elaine Zhang)
      
       - the generic-adc thermal driver now considers the lookup table DT
         property as optional (Jean-Francois Dagenais)
      
       - Refactoring of tsens thermal driver (Amit Kucheria)
      
       - Cleanups on cpu cooling driver (Daniel Lezcano)
      
       - broadcom thermal driver dropped support to ACPI (Srinath Mannam)
      
       - tegra thermal driver gains support to OC hw throttle and GPU throtle
         (Wei Ni)
      
       - Fixes in several thermal drivers.
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal: (59 commits)
        hwmon: (pwm-fan) Use devm_thermal_of_cooling_device_register
        hwmon: (npcm750-pwm-fan) Use devm_thermal_of_cooling_device_register
        hwmon: (mlxreg-fan) Use devm_thermal_of_cooling_device_register
        hwmon: (gpio-fan) Use devm_thermal_of_cooling_device_register
        hwmon: (aspeed-pwm-tacho) Use devm_thermal_of_cooling_device_register
        thermal: rcar_gen3_thermal: Fix to show correct trip points number
        thermal: rcar_thermal: update calculation formula for R-Car Gen3 SoCs
        thermal: cpu_cooling: Actually trace CPU load in thermal_power_cpu_get_power
        thermal: rockchip: Support the PX30 SoC in thermal driver
        dt-bindings: rockchip-thermal: Support the PX30 SoC compatible
        thermal: rockchip: fix up the tsadc pinctrl setting error
        thermal: broadcom: Remove ACPI support
        thermal: Fix build error of missing devm_ioremap_resource on UM
        thermal/drivers/cpu_cooling: Remove pointless field
        thermal/drivers/cpu_cooling: Add Software Package Data Exchange (SPDX)
        thermal/drivers/cpu_cooling: Fixup the header and copyright
        thermal/drivers/cpu_cooling: Remove pointless test in power2state()
        thermal: rcar_gen3_thermal: disable interrupt in .remove
        thermal: rcar_gen3_thermal: fix interrupt type
        thermal: Introduce devm_thermal_of_cooling_device_register
        ...
      a455eda3
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2019-05-16' of git://anongit.freedesktop.org/drm/drm · cc7ce901
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "A bunch of fixes for the merge window closure, doesn't seem to be
        anything too major or serious in there.
      
        It does add TU117 turing modesetting to nouveau but it's just an
        enable for preexisting code.
      
        amdgpu:
         - gpu reset at load crash fix
         - ATPX hotplug fix for when dGPU is off
         - SR-IOV fixes
      
        radeon:
         - r5xx pll fixes
      
        i915:
         - GVT (MCHBAR, buffer alignment, misc warnings fixes)
         - Fixes for newly enabled semaphore code
         - Geminilake disable framebuffer compression
         - HSW edp fast modeset fix
         - IRQ vs RCU race fix
      
        nouveau:
         - Turing modesetting fixes
         - TU117 support
      
        msm:
         - SDM845 bringup fixes
      
        panfrost:
         - static checker fixes
      
        pl111:
         - spinlock init fix.
      
        bridge:
         - refresh rate register fix for adv7511"
      
      * tag 'drm-next-2019-05-16' of git://anongit.freedesktop.org/drm/drm: (36 commits)
        drm/msm: Upgrade gxpd checks to IS_ERR_OR_NULL
        drm/msm/dpu: Remove duplicate header
        drm/pl111: Initialize clock spinlock early
        drm/msm: correct attempted NULL pointer dereference in debugfs
        drm/msm: remove resv fields from msm_gem_object struct
        drm/nouveau: fix duplication of nv50_head_atom struct
        drm/nouveau/disp/dp: respect sink limits when selecting failsafe link configuration
        drm/nouveau/core: initial support for boards with TU117 chipset
        drm/nouveau/core: allow detected chipset to be overridden
        drm/nouveau/kms/gf119-gp10x: push HeadSetControlOutputResource() mthd when encoders change
        drm/nouveau/kms/nv50-: fix bug preventing non-vsync'd page flips
        drm/nouveau/kms/gv100-: fix spurious window immediate interlocks
        drm/bridge: adv7511: Fix low refresh rate selection
        drm/panfrost: Add missing _fini() calls in panfrost_device_fini()
        drm/panfrost: Only put sync_out if non-NULL
        drm/i915: Seal races between async GPU cancellation, retirement and signaling
        drm/i915: Fix fastset vs. pfit on/off on HSW EDP transcoder
        drm/i915/fbc: disable framebuffer compression on GeminiLake
        drm/amdgpu/psp: move psp version specific function pointers to early_init
        drm/radeon: prefer lower reference dividers
        ...
      cc7ce901
    • Andy Lutomirski's avatar
      x86/speculation/mds: Improve CPU buffer clear documentation · 9d8d0294
      Andy Lutomirski authored
      On x86_64, all returns to usermode go through
      prepare_exit_to_usermode(), with the sole exception of do_nmi().
      This even includes machine checks -- this was added several years
      ago to support MCE recovery.  Update the documentation.
      Signed-off-by: default avatarAndy Lutomirski <luto@kernel.org>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Frederic Weisbecker <frederic@kernel.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Jon Masters <jcm@redhat.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: stable@vger.kernel.org
      Fixes: 04dcbdb8 ("x86/speculation/mds: Clear CPU buffers on exit to user")
      Link: http://lkml.kernel.org/r/999fa9e126ba6a48e9d214d2f18dbde5c62ac55c.1557865329.git.luto@kernel.orgSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      9d8d0294
    • Andy Lutomirski's avatar
      x86/speculation/mds: Revert CPU buffer clear on double fault exit · 88640e1d
      Andy Lutomirski authored
      The double fault ESPFIX path doesn't return to user mode at all --
      it returns back to the kernel by simulating a #GP fault.
      prepare_exit_to_usermode() will run on the way out of
      general_protection before running user code.
      Signed-off-by: default avatarAndy Lutomirski <luto@kernel.org>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Frederic Weisbecker <frederic@kernel.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Jon Masters <jcm@redhat.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: stable@vger.kernel.org
      Fixes: 04dcbdb8 ("x86/speculation/mds: Clear CPU buffers on exit to user")
      Link: http://lkml.kernel.org/r/ac97612445c0a44ee10374f6ea79c222fe22a5c4.1557865329.git.luto@kernel.orgSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      88640e1d
    • Ingo Molnar's avatar
    • Olof Johansson's avatar
      Merge branch 'fixes' into arm/soc · 7a0c4c17
      Olof Johansson authored
      Merge in a few pending fixes from pre-5.1 that didn't get sent in:
      
      MAINTAINERS: update arch/arm/mach-davinci
      ARM: dts: ls1021: Fix SGMII PCS link remaining down after PHY disconnect
      ARM: dts: imx6q-logicpd: Reduce inrush current on USBH1
      ARM: dts: imx6q-logicpd: Reduce inrush current on start
      ARM: dts: imx: Fix the AR803X phy-mode
      ARM: dts: sun8i: a33: Reintroduce default pinctrl muxing
      arm64: dts: allwinner: a64: Rename hpvcc-supply to cpvdd-supply
      ARM: sunxi: fix a leaked reference by adding missing of_node_put
      ARM: sunxi: fix a leaked reference by adding missing of_node_put
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      7a0c4c17
    • Linus Torvalds's avatar
      Merge tag 'libnvdimm-fixes-5.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 83f3ef3d
      Linus Torvalds authored
      Pull libnvdimm updates from Dan Williams:
       "Just a small collection of fixes this time around.
      
        The new virtio-pmem driver is nearly ready, but some last minute
        device-mapper acks and virtio questions made it prudent to await v5.3.
      
        Other major topics that were brewing on the linux-nvdimm mailing list
        like sub-section hotplug, and other devm_memremap_pages() reworks will
        go upstream through Andrew's tree.
      
        Summary:
      
         - Fix a long standing namespace label corruption scenario when
           re-provisioning capacity for a namespace.
      
         - Restore the ability of the dax_pmem module to be built-in.
      
         - Harden the build for the 'nfit_test' unit test modules so that the
           userspace test harness can ensure all required test modules are
           available"
      
      * tag 'libnvdimm-fixes-5.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        drivers/dax: Allow to include DEV_DAX_PMEM as builtin
        libnvdimm/namespace: Fix label tracking error
        tools/testing/nvdimm: add watermarks for dax_pmem* modules
        dax/pmem: Fix whitespace in dax_pmem
      83f3ef3d
    • Linus Torvalds's avatar
      Merge tag 'for-v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · 8649efb2
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
       "Core:
         - Add over-current health state
         - Add standard, adaptive and custom charge types
         - Add new properties for start/end charge threshold
      
        New Drivers / Hardware:
         - UCS1002 Programmable USB Port Power Controller
         - Ingenic JZ47xx Battery Fuel Gauge
         - AXP20x USB Power: Add AXP813 support
         - AT91 poweroff: Add SAM9X60 support
         - OLPC battery: Add XO-1.5 and XO-1.75 support
      
        Misc Changes:
         - syscon-reboot: support mask property
         - AXP288 fuel gauge: Blacklist ACEPC T8/T11. Looks like some vendor
           thought it's a good idea to build a desktop system with a fuel
           gauge, that slowly "discharges"...
         - cpcap-battery: Fix calculation errors
         - misc fixes"
      
      * tag 'for-v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (54 commits)
        power: supply: olpc_battery: force the le/be casts
        power: supply: ucs1002: Fix build error without CONFIG_REGULATOR
        power: supply: ucs1002: Fix wrong return value checking
        power: supply: Add driver for Microchip UCS1002
        dt-bindings: power: supply: Add bindings for Microchip UCS1002
        power: supply: core: Add POWER_SUPPLY_HEALTH_OVERCURRENT constant
        power: supply: core: fix clang -Wunsequenced
        power: supply: core: Add missing documentation for CHARGE_CONTROL_* properties
        power: supply: core: Add CHARGE_CONTROL_{START_THRESHOLD,END_THRESHOLD} properties
        power: supply: core: Add Standard, Adaptive, and Custom charge types
        power: supply: axp288_fuel_gauge: Add ACEPC T8 and T11 mini PCs to the blacklist
        power: supply: bq27xxx_battery: Notify also about status changes
        power: supply: olpc_battery: Have the framework register sysfs files for us
        power: supply: olpc_battery: Add OLPC XO 1.75 support
        power: supply: olpc_battery: Avoid using platform_info
        power: supply: olpc_battery: Use devm_power_supply_register()
        power: supply: olpc_battery: Move priv data to a struct
        power: supply: olpc_battery: Use DT to get battery version
        x86/platform/olpc: Use a correct version when making up a battery node
        x86/platform/olpc: Trivial code move in DT fixup
        ...
      8649efb2
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.2b-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 5fd09ba6
      Linus Torvalds authored
      Pull xen updates from Juergen Gross:
      
       - some minor cleanups
      
       - two small corrections for Xen on ARM
      
       - two fixes for Xen PVH guest support
      
       - a patch for a new command line option to tune virtual timer handling
      
      * tag 'for-linus-5.2b-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/arm: Use p2m entry with lock protection
        xen/arm: Free p2m entry if fail to add it to RB tree
        xen/pvh: correctly setup the PV EFI interface for dom0
        xen/pvh: set xen_domain_type to HVM in xen_pvh_init
        xenbus: drop useless LIST_HEAD in xenbus_write_watch() and xenbus_file_write()
        xen-netfront: mark expected switch fall-through
        xen: xen-pciback: fix warning Using plain integer as NULL pointer
        x86/xen: Add "xen_timer_slop" command line option
      5fd09ba6
    • Tony Luck's avatar
      ia64: Make sure that we have a mmiowb function real early · 8a635ffb
      Tony Luck authored
      Generic kernels feed many operation through the "machvec" logic to get
      the correct form of the operation for the current system.  "mmiowb()" is
      one of those operations.
      
      Although machvec is initialized very early in boot, it isn't early
      enough for a recent upstream kernel change that added mmiowb to the
      spin_unlock() path.
      
      Statically initialize the mmiowb field of machvec so that we won't die
      with a call through a NULL pointer.  This should be safe because we do
      the real initialization of machvec before bringing up any addtional CPUs
      or doing any I/O.
      
      Fixes: 49ca6462 ("ia64/mmiowb: Add unconditional mmiowb() to arch_spin_unlock()")
      Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8a635ffb
    • Linus Torvalds's avatar
      Merge tag 'nfsd-5.2' of git://linux-nfs.org/~bfields/linux · 700a800a
      Linus Torvalds authored
      Pull nfsd updates from Bruce Fields:
       "This consists mostly of nfsd container work:
      
        Scott Mayhew revived an old api that communicates with a userspace
        daemon to manage some on-disk state that's used to track clients
        across server reboots. We've been using a usermode_helper upcall for
        that, but it's tough to run those with the right namespaces, so a
        daemon is much friendlier to container use cases.
      
        Trond fixed nfsd's handling of user credentials in user namespaces. He
        also contributed patches that allow containers to support different
        sets of NFS protocol versions.
      
        The only remaining container bug I'm aware of is that the NFS reply
        cache is shared between all containers. If anyone's aware of other
        gaps in our container support, let me know.
      
        The rest of this is miscellaneous bugfixes"
      
      * tag 'nfsd-5.2' of git://linux-nfs.org/~bfields/linux: (23 commits)
        nfsd: update callback done processing
        locks: move checks from locks_free_lock() to locks_release_private()
        nfsd: fh_drop_write in nfsd_unlink
        nfsd: allow fh_want_write to be called twice
        nfsd: knfsd must use the container user namespace
        SUNRPC: rsi_parse() should use the current user namespace
        SUNRPC: Fix the server AUTH_UNIX userspace mappings
        lockd: Pass the user cred from knfsd when starting the lockd server
        SUNRPC: Temporary sockets should inherit the cred from their parent
        SUNRPC: Cache the process user cred in the RPC server listener
        nfsd: Allow containers to set supported nfs versions
        nfsd: Add custom rpcbind callbacks for knfsd
        SUNRPC: Allow further customisation of RPC program registration
        SUNRPC: Clean up generic dispatcher code
        SUNRPC: Add a callback to initialise server requests
        SUNRPC/nfs: Fix return value for nfs4_callback_compound()
        nfsd: handle legacy client tracking records sent by nfsdcld
        nfsd: re-order client tracking method selection
        nfsd: keep a tally of RECLAIM_COMPLETE operations when using nfsdcld
        nfsd: un-deprecate nfsdcld
        ...
      700a800a
    • Dave Airlie's avatar
      Merge tag 'drm-misc-next-fixes-2019-05-15' of... · 8da0e152
      Dave Airlie authored
      Merge tag 'drm-misc-next-fixes-2019-05-15' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
      
      - A couple new panfrost fixes
      - Fix the low refresh rate register in adv7511
      - A handful of msm fixes that fell out of 5.1 bringup on SDM845
      - Fix spinlock initialization in pl111
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Sean Paul <sean@poorly.run>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190515201729.GA89093@art_vandelay
      8da0e152
    • Dave Airlie's avatar
      Merge tag 'drm-intel-next-fixes-2019-05-15' of... · dc28d574
      Dave Airlie authored
      Merge tag 'drm-intel-next-fixes-2019-05-15' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
      
      - Disable framebuffer compression on Geminilake
      - Fixes for HSW EDP fastset and a IRQ handler vs. RCU race
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190515074817.GA10472@jlahtine-desk.ger.corp.intel.com
      dc28d574
  3. 15 May, 2019 3 commits
    • Linus Torvalds's avatar
      Merge tag 'ktest-v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest · b06ed1e7
      Linus Torvalds authored
      Pull more ktest updates from Steven Rostedt:
      
       - Add support for grub2bls boot loader
      
       - Show name and test iteration number in error message sent in mail
      
       - Minor fixes and clean ups
      
      * tag 'ktest-v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest:
        ktest: update sample.conf for grub2bls
        ktest: remove get_grub2_index
        ktest: pass KERNEL_VERSION to POST_KTEST
        ktest: introduce grub2bls REBOOT_TYPE option
        ktest: cleanup get_grub_index
        ktest: introduce _get_grub_index
      b06ed1e7
    • Linus Torvalds's avatar
      Merge tag 'trace-v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · d2d8b146
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
       "The major changes in this tracing update includes:
      
         - Removal of non-DYNAMIC_FTRACE from 32bit x86
      
         - Removal of mcount support from x86
      
         - Emulating a call from int3 on x86_64, fixes live kernel patching
      
         - Consolidated Tracing Error logs file
      
        Minor updates:
      
         - Removal of klp_check_compiler_support()
      
         - kdb ftrace dumping output changes
      
         - Accessing and creating ftrace instances from inside the kernel
      
         - Clean up of #define if macro
      
         - Introduction of TRACE_EVENT_NOP() to disable trace events based on
           config options
      
        And other minor fixes and clean ups"
      
      * tag 'trace-v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (44 commits)
        x86: Hide the int3_emulate_call/jmp functions from UML
        livepatch: Remove klp_check_compiler_support()
        ftrace/x86: Remove mcount support
        ftrace/x86_32: Remove support for non DYNAMIC_FTRACE
        tracing: Simplify "if" macro code
        tracing: Fix documentation about disabling options using trace_options
        tracing: Replace kzalloc with kcalloc
        tracing: Fix partial reading of trace event's id file
        tracing: Allow RCU to run between postponed startup tests
        tracing: Fix white space issues in parse_pred() function
        tracing: Eliminate const char[] auto variables
        ring-buffer: Fix mispelling of Calculate
        tracing: probeevent: Fix to make the type of $comm string
        tracing: probeevent: Do not accumulate on ret variable
        tracing: uprobes: Re-enable $comm support for uprobe events
        ftrace/x86_64: Emulate call function while updating in breakpoint handler
        x86_64: Allow breakpoints to emulate call instructions
        x86_64: Add gap to int3 to allow for call emulation
        tracing: kdb: Allow ftdump to skip all but the last few entries
        tracing: Add trace_total_entries() / trace_total_entries_cpu()
        ...
      d2d8b146
    • Russell King's avatar
      Revert "ARM: 8846/1: warn if divided syntax assembler is used" · b752bb40
      Russell King authored
      This reverts commit e8c24bbd.
      
      GCC 4.7, which is still permitted, emits code using the original
      syntax.  This means we end up with lots of assembler warnings when
      building with a currently-supported version of gcc.
      
      Revert the commit (with fixups to keep the follow-on -mauto-it
      change) to avoid these warnings.
      Signed-off-by: default avatarRussell King <rmk+kernel@armlinux.org.uk>
      b752bb40