1. 03 Jun, 2018 1 commit
  2. 22 May, 2018 6 commits
    • Dan Williams's avatar
      xfs, dax: introduce xfs_break_dax_layouts() · d6dc57e2
      Dan Williams authored
      xfs_break_dax_layouts(), similar to xfs_break_leased_layouts(), scans
      for busy / pinned dax pages and waits for those pages to go idle before
      any potential extent unmap operation.
      
      dax_layout_busy_page() handles synchronizing against new page-busy
      events (get_user_pages). It invalidates all mappings to trigger the
      get_user_pages slow path which will eventually block on the xfs inode
      lock held in XFS_MMAPLOCK_EXCL mode. If dax_layout_busy_page() finds a
      busy page it returns it for xfs to wait for the page-idle event that
      will fire when the page reference count reaches 1 (recall ZONE_DEVICE
      pages are idle at count 1, see generic_dax_pagefree()).
      
      While waiting, the XFS_MMAPLOCK_EXCL lock is dropped in order to not
      deadlock the process that might be trying to elevate the page count of
      more pages before arranging for any of them to go idle. I.e. the typical
      case of submitting I/O is that iov_iter_get_pages() elevates the
      reference count of all pages in the I/O before starting I/O on the first
      page. The process of elevating the reference count of all pages involved
      in an I/O may cause faults that need to take XFS_MMAPLOCK_EXCL.
      
      Although XFS_MMAPLOCK_EXCL is dropped while waiting, XFS_IOLOCK_EXCL is
      held while sleeping. We need this to prevent starvation of the truncate
      path as continuous submission of direct-I/O could starve the truncate
      path indefinitely if the lock is dropped.
      
      Cc: Dave Chinner <david@fromorbit.com>
      Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
      Reported-by: default avatarJan Kara <jack@suse.cz>
      Reviewed-by: default avatarJan Kara <jack@suse.cz>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Acked-by: default avatarDarrick J. Wong <darrick.wong@oracle.com>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      d6dc57e2
    • Dan Williams's avatar
      xfs: prepare xfs_break_layouts() for another layout type · 69eb5fa1
      Dan Williams authored
      When xfs is operating as the back-end of a pNFS block server, it
      prevents collisions between local and remote operations by requiring a
      lease to be held for remotely accessed blocks. Local filesystem
      operations break those leases before writing or mutating the extent map
      of the file.
      
      A similar mechanism is needed to prevent operations on pinned dax
      mappings, like device-DMA, from colliding with extent unmap operations.
      
      BREAK_WRITE and BREAK_UNMAP are introduced as two distinct levels of
      layout breaking.
      
      Layouts are broken in the BREAK_WRITE case to ensure that layout-holders
      do not collide with local writes. Additionally, layouts are broken in
      the BREAK_UNMAP case to make sure the layout-holder has a consistent
      view of the file's extent map. While BREAK_WRITE breaks can be satisfied
      be recalling FL_LAYOUT leases, BREAK_UNMAP breaks additionally require
      waiting for busy dax-pages to go idle while holding XFS_MMAPLOCK_EXCL.
      
      After this refactoring xfs_break_layouts() becomes the entry point for
      coordinating both types of breaks. Finally, xfs_break_leased_layouts()
      becomes just the BREAK_WRITE handler.
      
      Note that the unlock tracking is needed in a follow on change. That will
      coordinate retrying either break handler until both successfully test
      for a lease break while maintaining the lock state.
      
      Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
      Cc: "Darrick J. Wong" <darrick.wong@oracle.com>
      Reported-by: default avatarDave Chinner <david@fromorbit.com>
      Reported-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      69eb5fa1
    • Dan Williams's avatar
      xfs: prepare xfs_break_layouts() to be called with XFS_MMAPLOCK_EXCL · c63a8eae
      Dan Williams authored
      In preparation for adding coordination between extent unmap operations
      and busy dax-pages, update xfs_break_layouts() to permit it to be called
      with the mmap lock held. This lock scheme will be required for
      coordinating the break of 'dax layouts' (non-idle dax (ZONE_DEVICE)
      pages mapped into the file's address space). Breaking dax layouts will
      be added to xfs_break_layouts() in a future patch, for now this preps
      the unmap call sites to take and hold XFS_MMAPLOCK_EXCL over the call to
      xfs_break_layouts().
      
      Cc: "Darrick J. Wong" <darrick.wong@oracle.com>
      Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
      Cc: Dave Chinner <david@fromorbit.com>
      Suggested-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatar"Darrick J. Wong" <darrick.wong@oracle.com>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      c63a8eae
    • Dan Williams's avatar
      mm, fs, dax: handle layout changes to pinned dax mappings · 5fac7408
      Dan Williams authored
      Background:
      
      get_user_pages() in the filesystem pins file backed memory pages for
      access by devices performing dma. However, it only pins the memory pages
      not the page-to-file offset association. If a file is truncated the
      pages are mapped out of the file and dma may continue indefinitely into
      a page that is owned by a device driver. This breaks coherency of the
      file vs dma, but the assumption is that if userspace wants the
      file-space truncated it does not matter what data is inbound from the
      device, it is not relevant anymore. The only expectation is that dma can
      safely continue while the filesystem reallocates the block(s).
      
      Problem:
      
      This expectation that dma can safely continue while the filesystem
      changes the block map is broken by dax. With dax the target dma page
      *is* the filesystem block. The model of leaving the page pinned for dma,
      but truncating the file block out of the file, means that the filesytem
      is free to reallocate a block under active dma to another file and now
      the expected data-incoherency situation has turned into active
      data-corruption.
      
      Solution:
      
      Defer all filesystem operations (fallocate(), truncate()) on a dax mode
      file while any page/block in the file is under active dma. This solution
      assumes that dma is transient. Cases where dma operations are known to
      not be transient, like RDMA, have been explicitly disabled via
      commits like 5f1d43de "IB/core: disable memory registration of
      filesystem-dax vmas".
      
      The dax_layout_busy_page() routine is called by filesystems with a lock
      held against mm faults (i_mmap_lock) to find pinned / busy dax pages.
      The process of looking up a busy page invalidates all mappings
      to trigger any subsequent get_user_pages() to block on i_mmap_lock.
      The filesystem continues to call dax_layout_busy_page() until it finally
      returns no more active pages. This approach assumes that the page
      pinning is transient, if that assumption is violated the system would
      have likely hung from the uncompleted I/O.
      
      Cc: Jeff Moyer <jmoyer@redhat.com>
      Cc: Dave Chinner <david@fromorbit.com>
      Cc: Matthew Wilcox <mawilcox@microsoft.com>
      Cc: Alexander Viro <viro@zeniv.linux.org.uk>
      Cc: "Darrick J. Wong" <darrick.wong@oracle.com>
      Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Reported-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarJan Kara <jack@suse.cz>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      5fac7408
    • Dan Williams's avatar
      mm: fix __gup_device_huge vs unmap · a9b6de77
      Dan Williams authored
      get_user_pages_fast() for device pages is missing the typical validation
      that all page references have been taken while the mapping was valid.
      Without this validation truncate operations can not reliably coordinate
      against new page reference events like O_DIRECT.
      
      Cc: <stable@vger.kernel.org>
      Fixes: 3565fce3 ("mm, x86: get_user_pages() for dax mappings")
      Reported-by: default avatarJan Kara <jack@suse.cz>
      Reviewed-by: default avatarJan Kara <jack@suse.cz>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      a9b6de77
    • Dan Williams's avatar
      mm: introduce MEMORY_DEVICE_FS_DAX and CONFIG_DEV_PAGEMAP_OPS · e7638488
      Dan Williams authored
      In preparation for fixing dax-dma-vs-unmap issues, filesystems need to
      be able to rely on the fact that they will get wakeups on dev_pagemap
      page-idle events. Introduce MEMORY_DEVICE_FS_DAX and
      generic_dax_page_free() as common indicator / infrastructure for dax
      filesytems to require. With this change there are no users of the
      MEMORY_DEVICE_HOST designation, so remove it.
      
      The HMM sub-system extended dev_pagemap to arrange a callback when a
      dev_pagemap managed page is freed. Since a dev_pagemap page is free /
      idle when its reference count is 1 it requires an additional branch to
      check the page-type at put_page() time. Given put_page() is a hot-path
      we do not want to incur that check if HMM is not in use, so a static
      branch is used to avoid that overhead when not necessary.
      
      Now, the FS_DAX implementation wants to reuse this mechanism for
      receiving dev_pagemap ->page_free() callbacks. Rework the HMM-specific
      static-key into a generic mechanism that either HMM or FS_DAX code paths
      can enable.
      
      For ARCH=um builds, and any other arch that lacks ZONE_DEVICE support,
      care must be taken to compile out the DEV_PAGEMAP_OPS infrastructure.
      However, we still need to support FS_DAX in the FS_DAX_LIMITED case
      implemented by the s390/dcssblk driver.
      
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Michal Hocko <mhocko@suse.com>
      Reported-by: default avatarkbuild test robot <lkp@intel.com>
      Reported-by: default avatarThomas Meyer <thomas@m3y3r.de>
      Reported-by: default avatarDave Jiang <dave.jiang@intel.com>
      Cc: "Jérôme Glisse" <jglisse@redhat.com>
      Reviewed-by: default avatarJan Kara <jack@suse.cz>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      e7638488
  3. 16 May, 2018 1 commit
  4. 23 Apr, 2018 2 commits
    • Linus Torvalds's avatar
      Linux 4.17-rc2 · 6d08b06e
      Linus Torvalds authored
      6d08b06e
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-for-v4.17-rc2' of git://people.freedesktop.org/~airlied/linux · 867ab4b2
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Exynos, i915, vc4, amdgpu fixes.
      
        i915:
         - an oops fix
         - two race fixes
         - some gvt fixes
      
        amdgpu:
         - dark screen fix
         - clk/voltage fix
         - vega12 smu fix
      
        vc4:
         - memory leak fix
      
        exynos just drops some code"
      
      * tag 'drm-fixes-for-v4.17-rc2' of git://people.freedesktop.org/~airlied/linux: (23 commits)
        drm/amd/powerplay: header file interface to SMU update
        drm/amd/pp: Fix bug voltage can't be OD separately on VI
        drm/amd/display: Don't program bypass on linear regamma LUT
        drm/i915: Fix LSPCON TMDS output buffer enabling from low-power state
        drm/i915/audio: Fix audio detection issue on GLK
        drm/i915: Call i915_perf_fini() on init_hw error unwind
        drm/i915/bios: filter out invalid DDC pins from VBT child devices
        drm/i915/pmu: Inspect runtime PM state more carefully while estimating RC6
        drm/i915: Do no use kfree() to free a kmem_cache_alloc() return value
        drm/exynos: exynos_drm_fb -> drm_framebuffer
        drm/exynos: Move dma_addr out of exynos_drm_fb
        drm/exynos: Move GEM BOs to drm_framebuffer
        drm: Fix HDCP downstream dev count read
        drm/vc4: Fix memory leak during BO teardown
        drm/i915/execlists: Clear user-active flag on preemption completion
        drm/i915/gvt: Add drm_format_mod update
        drm/i915/gvt: Disable primary/sprite/cursor plane at virtual display initialization
        drm/i915/gvt: Delete redundant error message in fb_decode.c
        drm/i915/gvt: Cancel dma map when resetting ggtt entries
        drm/i915/gvt: Missed to cancel dma map for ggtt entries
        ...
      867ab4b2
  5. 22 Apr, 2018 12 commits
    • Dave Airlie's avatar
      Merge branch 'drm-next-4.17' of git://people.freedesktop.org/~agd5f/linux into drm-next · 221bda4b
      Dave Airlie authored
      - Fix a dark screen issue in DC
      - Fix clk/voltage dependency tracking for wattman
      - Update SMU interface for vega12
      
      * 'drm-next-4.17' of git://people.freedesktop.org/~agd5f/linux:
        drm/amd/powerplay: header file interface to SMU update
        drm/amd/pp: Fix bug voltage can't be OD separately on VI
        drm/amd/display: Don't program bypass on linear regamma LUT
      221bda4b
    • Dave Airlie's avatar
      Merge tag 'exynos-drm-fixes-for-v4.17-rc2' of... · 2e1d6eab
      Dave Airlie authored
      Merge tag 'exynos-drm-fixes-for-v4.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into drm-next
      
      Remove Exynos specific framebuffer structure and
      relevant functions.
      - it removes exynos_drm_fb structure which is a wrapper of
        drm_framebuffer and unnecessary two exynos specific callback
        functions, exynos_drm_destory() and exynos_drm_fb_create_handle()
        because we can reuse existing drm common callback ones instead.
      
      * tag 'exynos-drm-fixes-for-v4.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos:
        drm/exynos: exynos_drm_fb -> drm_framebuffer
        drm/exynos: Move dma_addr out of exynos_drm_fb
        drm/exynos: Move GEM BOs to drm_framebuffer
        drm/amdkfd: Deallocate SDMA queues correctly
        drm/amdkfd: Fix scratch memory with HWS enabled
      2e1d6eab
    • Dave Airlie's avatar
      Merge tag 'drm-intel-next-fixes-2018-04-19' of... · bc9ebca2
      Dave Airlie authored
      Merge tag 'drm-intel-next-fixes-2018-04-19' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
      
      - Fix for FDO #105549: Avoid OOPS on bad VBT (Jani)
      - Fix rare pre-emption race (Chris)
      - Fix RC6 race against PM transitions (Tvrtko)
      
      * tag 'drm-intel-next-fixes-2018-04-19' of git://anongit.freedesktop.org/drm/drm-intel:
        drm/i915/audio: Fix audio detection issue on GLK
        drm/i915: Call i915_perf_fini() on init_hw error unwind
        drm/i915/bios: filter out invalid DDC pins from VBT child devices
        drm/i915/pmu: Inspect runtime PM state more carefully while estimating RC6
        drm/i915: Do no use kfree() to free a kmem_cache_alloc() return value
        drm/i915/execlists: Clear user-active flag on preemption completion
        drm/i915/gvt: Add drm_format_mod update
        drm/i915/gvt: Disable primary/sprite/cursor plane at virtual display initialization
        drm/i915/gvt: Delete redundant error message in fb_decode.c
        drm/i915/gvt: Cancel dma map when resetting ggtt entries
        drm/i915/gvt: Missed to cancel dma map for ggtt entries
        drm/i915/gvt: Make MI_USER_INTERRUPT nop in cmd parser
        drm/i915/gvt: Mark expected switch fall-through in handle_g2v_notification
        drm/i915/gvt: throw error on unhandled vfio ioctls
      bc9ebca2
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2018-04-18-1' of git://anongit.freedesktop.org/drm/drm-misc into drm-next · e1898f99
      Dave Airlie authored
      drm-misc-fixes:
      
      stable: vc4: Fix memory leak during BO teardown (Daniel)
      dp: Add i2c retry for LSPCON adapters (Imre)
      hdcp: Fix device count mask (Ramalingam)
      
      Cc: Daniel J Blueman <daniel@quora.org
      Cc: Imre Deak <imre.deak@intel.com>
      Cc: Ramalingam C <ramalingam.c@intel.com>
      
      * tag 'drm-misc-fixes-2018-04-18-1' of git://anongit.freedesktop.org/drm/drm-misc:
        drm/i915: Fix LSPCON TMDS output buffer enabling from low-power state
        drm: Fix HDCP downstream dev count read
        drm/vc4: Fix memory leak during BO teardown
      e1898f99
    • Linus Torvalds's avatar
      Merge tag '4.17-rc1-SMB3-CIFS' of git://git.samba.org/sfrench/cifs-2.6 · 5ec83b22
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "Various SMB3/CIFS fixes.
      
        There are three more security related fixes in progress that are not
        included in this set but they are still being tested and reviewed, so
        sending this unrelated set of smaller fixes now"
      
      * tag '4.17-rc1-SMB3-CIFS' of git://git.samba.org/sfrench/cifs-2.6:
        CIFS: fix typo in cifs_dbg
        cifs: do not allow creating sockets except with SMB1 posix exensions
        cifs: smbd: Dump SMB packet when configured
        cifs: smbd: Check for iov length on sending the last iov
        fs: cifs: Adding new return type vm_fault_t
        cifs: smb2ops: Fix NULL check in smb2_query_symlink
      5ec83b22
    • Linus Torvalds's avatar
      Merge tag 'for-4.17-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · d54b5c13
      Linus Torvalds authored
      Pull btrfs fixes from David Sterba:
       "This contains a few fixups to the qgroup patches that were merged this
        dev cycle, unaligned access fix, blockgroup removal corner case fix
        and a small debugging output tweak"
      
      * tag 'for-4.17-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        btrfs: print-tree: debugging output enhancement
        btrfs: Fix race condition between delayed refs and blockgroup removal
        btrfs: fix unaligned access in readdir
        btrfs: Fix wrong btrfs_delalloc_release_extents parameter
        btrfs: delayed-inode: Remove wrong qgroup meta reservation calls
        btrfs: qgroup: Use independent and accurate per inode qgroup rsv
        btrfs: qgroup: Commit transaction in advance to reduce early EDQUOT
      d54b5c13
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 37a535ed
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "A small set of fixes for x86:
      
         - Prevent X2APIC ID 0xFFFFFFFF from being treated as valid, which
           causes the possible CPU count to be wrong.
      
         - Prevent 32bit truncation in calc_hpet_ref() which causes the TSC
           calibration to fail
      
         - Fix the page table setup for temporary text mappings in the resume
           code which causes resume failures
      
         - Make the page table dump code handle HIGHPTE correctly instead of
           oopsing
      
         - Support for topologies where NUMA nodes share an LLC to prevent a
           invalid topology warning and further malfunction on such systems.
      
         - Remove the now unused pci-nommu code
      
         - Remove stale function declarations"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/power/64: Fix page-table setup for temporary text mapping
        x86/mm: Prevent kernel Oops in PTDUMP code with HIGHPTE=y
        x86,sched: Allow topologies where NUMA nodes share an LLC
        x86/processor: Remove two unused function declarations
        x86/acpi: Prevent X2APIC id 0xffffffff from being accounted
        x86/tsc: Prevent 32bit truncation in calc_hpet_ref()
        x86: Remove pci-nommu.c
      37a535ed
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c1e9dae0
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "A small set of timer fixes:
      
         - Evaluate the -ETIME condition correctly in the imx tpm driver
      
         - Fix the evaluation order of a condition in posix cpu timers
      
         - Use pr_cont() in the clockevents code to prevent ugly message
           splitting
      
         - Remove __current_kernel_time() which is now unused to prevent that
           new users show up.
      
         - Remove a stale forward declaration"
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        clocksource/imx-tpm: Correct -ETIME return condition check
        posix-cpu-timers: Ensure set_process_cpu_timer is always evaluated
        timekeeping: Remove __current_kernel_time()
        timers: Remove stale struct tvec_base forward declaration
        clockevents: Fix kernel messages split across multiple lines
      c1e9dae0
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 38f0b33e
      Linus Torvalds authored
      Pull perf fixes from Thomas Gleixner:
       "A larger set of updates for perf.
      
        Kernel:
      
         - Handle the SBOX uncore monitoring correctly on Broadwell CPUs which
           do not have SBOX.
      
         - Store context switch out type in PERF_RECORD_SWITCH[_CPU_WIDE]. The
           percentage of preempting and non-preempting context switches help
           understanding the nature of workloads (CPU or IO bound) that are
           running on a machine. This adds the kernel facility and userspace
           changes needed to show this information in 'perf script' and 'perf
           report -D' (Alexey Budankov)
      
         - Remove a WARN_ON() in the trace/kprobes code which is pointless
           because the return error code is already telling the caller what's
           wrong.
      
         - Revert a fugly workaround for clang BPF targets.
      
         - Fix sample_max_stack maximum check and do not proceed when an error
           has been detect, return them to avoid misidentifying errors (Jiri
           Olsa)
      
         - Add SPDX idenitifiers and get rid of GPL boilderplate.
      
        Tools:
      
         - Synchronize kernel ABI headers, v4.17-rc1 (Ingo Molnar)
      
         - Support MAP_FIXED_NOREPLACE, noticed when updating the
           tools/include/ copies (Arnaldo Carvalho de Melo)
      
         - Add '\n' at the end of parse-options error messages (Ravi Bangoria)
      
         - Add s390 support for detailed/verbose PMU event description (Thomas
           Richter)
      
         - perf annotate fixes and improvements:
      
            * Allow showing offsets in more than just jump targets, use the
              new 'O' hotkey in the TUI, config ~/.perfconfig
              annotate.offset_level for it and for --stdio2 (Arnaldo Carvalho
              de Melo)
      
            * Use the resolved variable names from objdump disassembled lines
              to make them more compact, just like was already done for some
              instructions, like "mov", this eventually will be done more
              generally, but lets now add some more to the existing mechanism
              (Arnaldo Carvalho de Melo)
      
         - perf record fixes:
      
            * Change warning for missing topology sysfs entry to debug, as not
              all architectures have those files, s390 being one of those
              (Thomas Richter)
      
            * Remove old error messages about things that unlikely to be the
              root cause in modern systems (Andi Kleen)
      
         - perf sched fixes:
      
            * Fix -g/--call-graph documentation (Takuya Yamamoto)
      
         - perf stat:
      
            * Enable 1ms interval for printing event counters values in
              (Alexey Budankov)
      
         - perf test fixes:
      
            * Run dwarf unwind on arm32 (Kim Phillips)
      
            * Remove unused ptrace.h include from LLVM test, sidesteping older
              clang's lack of support for some asm constructs (Arnaldo
              Carvalho de Melo)
      
            * Fixup BPF test using epoll_pwait syscall function probe, to cope
              with the syscall routines renames performed in this development
              cycle (Arnaldo Carvalho de Melo)
      
         - perf version fixes:
      
            * Do not print info about HAVE_LIBAUDIT_SUPPORT in 'perf version
              --build-options' when HAVE_SYSCALL_TABLE_SUPPORT is true, as
              libaudit won't be used in that case, print info about
              syscall_table support instead (Jin Yao)
      
         - Build system fixes:
      
            * Use HAVE_..._SUPPORT used consistently (Jin Yao)
      
            * Restore READ_ONCE() C++ compatibility in tools/include (Mark
              Rutland)
      
            * Give hints about package names needed to build jvmti (Arnaldo
              Carvalho de Melo)"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (37 commits)
        perf/x86/intel/uncore: Fix SBOX support for Broadwell CPUs
        perf/x86/intel/uncore: Revert "Remove SBOX support for Broadwell server"
        coresight: Move to SPDX identifier
        perf test BPF: Fixup BPF test using epoll_pwait syscall function probe
        perf tests mmap: Show which tracepoint is failing
        perf tools: Add '\n' at the end of parse-options error messages
        perf record: Remove suggestion to enable APIC
        perf record: Remove misleading error suggestion
        perf hists browser: Clarify top/report browser help
        perf mem: Allow all record/report options
        perf trace: Support MAP_FIXED_NOREPLACE
        perf: Remove superfluous allocation error check
        perf: Fix sample_max_stack maximum check
        perf: Return proper values for user stack errors
        perf list: Add s390 support for detailed/verbose PMU event description
        perf script: Extend misc field decoding with switch out event type
        perf report: Extend raw dump (-D) out with switch out event type
        perf/core: Store context switch out type in PERF_RECORD_SWITCH[_CPU_WIDE]
        tools/headers: Synchronize kernel ABI headers, v4.17-rc1
        trace_kprobe: Remove warning message "Could not insert probe at..."
        ...
      38f0b33e
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 18de45a9
      Linus Torvalds authored
      Pull objtool fix from Thomas Gleixner:
       "A single fix for objtool so it uses the host C and LD flags and not
        the target ones"
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        objtool: Support HOSTCFLAGS and HOSTLDFLAGS
      18de45a9
    • Linus Torvalds's avatar
      Merge tag 'random_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random · 285848b0
      Linus Torvalds authored
      Pull /dev/random fixes from Ted Ts'o:
       "Fix some bugs in the /dev/random driver which causes getrandom(2) to
        unblock earlier than designed.
      
        Thanks to Jann Horn from Google's Project Zero for pointing this out
        to me"
      
      * tag 'random_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random:
        random: add new ioctl RNDRESEEDCRNG
        random: crng_reseed() should lock the crng instance that it is modifying
        random: set up the NUMA crng instances after the CRNG is fully initialized
        random: use a different mixing algorithm for add_device_randomness()
        random: fix crng_ready() test
      285848b0
    • Linus Torvalds's avatar
      Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 4c50ceae
      Linus Torvalds authored
      Pull libnvdimm fixes from Dan Williams:
       "A regression fix, new unit test infrastructure and a build fix:
      
         - Regression fix addressing support for the new NVDIMM label storage
           area access commands (_LSI, _LSR, and _LSW).
      
           The Intel specific version of these commands communicated the
           "Device Locked" status on the label-storage-information command.
      
           However, these new commands (standardized in ACPI 6.2) communicate
           the "Device Locked" status on the label-storage-read command, and
           the driver was missing the indication.
      
           Reading from locked persistent memory is similar to reading
           unmapped PCI memory space, returns all 1's.
      
         - Unit test infrastructure is added to regression test the "Device
           Locked" detection failure.
      
         - A build fix is included to allow the "of_pmem" driver to be built
           as a module and translate an Open Firmware described device to its
           local numa node"
      
      * 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        MAINTAINERS: Add backup maintainers for libnvdimm and DAX
        device-dax: allow MAP_SYNC to succeed
        Revert "libnvdimm, of_pmem: workaround OF_NUMA=n build error"
        libnvdimm, of_pmem: use dev_to_node() instead of of_node_to_nid()
        tools/testing/nvdimm: enable labels for nfit_test.1 dimms
        tools/testing/nvdimm: fix missing newline in nfit_test_dimm 'handle' attribute
        tools/testing/nvdimm: support nfit_test_dimm attributes under nfit_test.1
        tools/testing/nvdimm: allow custom error code injection
        libnvdimm, dimm: handle EACCES failures from label reads
      4c50ceae
  6. 21 Apr, 2018 18 commits