1. 10 Mar, 2019 1 commit
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 92fff53b
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "This is mostly update of the usual drivers: arcmsr, qla2xxx, lpfc,
        hisi_sas, target/iscsi and target/core.
      
        Additionally Christoph refactored gdth as part of the dma changes. The
        major mid-layer change this time is the removal of bidi commands and
        with them the whole of the osd/exofs driver and filesystem. This is a
        major simplification for block and mq in particular"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (240 commits)
        scsi: cxgb4i: validate tcp sequence number only if chip version <= T5
        scsi: cxgb4i: get pf number from lldi->pf
        scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c
        scsi: mpt3sas: Add missing breaks in switch statements
        scsi: aacraid: Fix missing break in switch statement
        scsi: kill command serial number
        scsi: csiostor: drop serial_number usage
        scsi: mvumi: use request tag instead of serial_number
        scsi: dpt_i2o: remove serial number usage
        scsi: st: osst: Remove negative constant left-shifts
        scsi: ufs-bsg: Allow reading descriptors
        scsi: ufs: Allow reading descriptor via raw upiu
        scsi: ufs-bsg: Change the calling convention for write descriptor
        scsi: ufs: Remove unused device quirks
        Revert "scsi: ufs: disable vccq if it's not needed by UFS device"
        scsi: megaraid_sas: Remove a bunch of set but not used variables
        scsi: clean obsolete return values of eh_timed_out
        scsi: sd: Optimal I/O size should be a multiple of physical block size
        scsi: MAINTAINERS: SCSI initiator and target tweaks
        scsi: fcoe: make use of fip_mode enum complete
        ...
      92fff53b
  2. 09 Mar, 2019 13 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · a50243b1
      Linus Torvalds authored
      Pull rdma updates from Jason Gunthorpe:
       "This has been a slightly more active cycle than normal with ongoing
        core changes and quite a lot of collected driver updates.
      
         - Various driver fixes for bnxt_re, cxgb4, hns, mlx5, pvrdma, rxe
      
         - A new data transfer mode for HFI1 giving higher performance
      
         - Significant functional and bug fix update to the mlx5
           On-Demand-Paging MR feature
      
         - A chip hang reset recovery system for hns
      
         - Change mm->pinned_vm to an atomic64
      
         - Update bnxt_re to support a new 57500 chip
      
         - A sane netlink 'rdma link add' method for creating rxe devices and
           fixing the various unregistration race conditions in rxe's
           unregister flow
      
         - Allow lookup up objects by an ID over netlink
      
         - Various reworking of the core to driver interface:
             - drivers should not assume umem SGLs are in PAGE_SIZE chunks
             - ucontext is accessed via udata not other means
             - start to make the core code responsible for object memory
               allocation
             - drivers should convert struct device to struct ib_device via a
               helper
             - drivers have more tools to avoid use after unregister problems"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma: (280 commits)
        net/mlx5: ODP support for XRC transport is not enabled by default in FW
        IB/hfi1: Close race condition on user context disable and close
        RDMA/umem: Revert broken 'off by one' fix
        RDMA/umem: minor bug fix in error handling path
        RDMA/hns: Use GFP_ATOMIC in hns_roce_v2_modify_qp
        cxgb4: kfree mhp after the debug print
        IB/rdmavt: Fix concurrency panics in QP post_send and modify to error
        IB/rdmavt: Fix loopback send with invalidate ordering
        IB/iser: Fix dma_nents type definition
        IB/mlx5: Set correct write permissions for implicit ODP MR
        bnxt_re: Clean cq for kernel consumers only
        RDMA/uverbs: Don't do double free of allocated PD
        RDMA: Handle ucontext allocations by IB/core
        RDMA/core: Fix a WARN() message
        bnxt_re: fix the regression due to changes in alloc_pbl
        IB/mlx4: Increase the timeout for CM cache
        IB/core: Abort page fault handler silently during owning process exit
        IB/mlx5: Validate correct PD before prefetch MR
        IB/mlx5: Protect against prefetch of invalid MR
        RDMA/uverbs: Store PR pointer before it is overwritten
        ...
      a50243b1
    • Linus Torvalds's avatar
      Merge tag 'pci-v5.1-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 2901752c
      Linus Torvalds authored
      Pull PCI updates from Bjorn Helgaas:
      
       - Use match_string() instead of reimplementing it (Andy Shevchenko)
      
       - Enable SERR# forwarding for all bridges (Bharat Kumar Gogada)
      
       - Use Latency Tolerance Reporting if already enabled by platform (Bjorn
         Helgaas)
      
       - Save/restore LTR info for suspend/resume (Bjorn Helgaas)
      
       - Fix DPC use of uninitialized data (Dongdong Liu)
      
       - Probe bridge window attributes only once at enumeration-time to fix
         device accesses during rescan (Bjorn Helgaas)
      
       - Return BAR size (not "size -1 ") from pci_size() to simplify code (Du
         Changbin)
      
       - Use config header type (not class code) identify bridges more
         reliably (Honghui Zhang)
      
       - Work around Intel Denverton incorrect Trace Hub BAR size reporting
         (Alexander Shishkin)
      
       - Reorder pciehp cached state/hardware state updates to avoid missed
         interrupts (Mika Westerberg)
      
       - Turn ibmphp semaphores into completions or mutexes (Arnd Bergmann)
      
       - Mark expected switch fall-through (Mathieu Malaterre)
      
       - Use of_node_name_eq() for node name comparisons (Rob Herring)
      
       - Add ACS and pciehp quirks for HXT SD4800 (Shunyong Yang)
      
       - Consolidate Rohm Vendor ID definitions (Andy Shevchenko)
      
       - Use u32 (not __u32) for things not exposed to userspace (Logan
         Gunthorpe)
      
       - Fix locking semantics of bus and slot reset interfaces (Alex
         Williamson)
      
       - Update PCIEPORTBUS Kconfig help text (Hou Zhiqiang)
      
       - Allow portdrv to claim subtractive decode Ports so PCIe services will
         work for them (Honghui Zhang)
      
       - Report PCIe links that become degraded at run-time (Alexandru
         Gagniuc)
      
       - Blacklist Gigabyte X299 Root Port power management to fix Thunderbolt
         hotplug (Mika Westerberg)
      
       - Revert runtime PM suspend/resume callbacks that broke PME on network
         cable plug (Mika Westerberg)
      
       - Disable Data Link State Changed interrupts to prevent wakeup
         immediately after suspend (Mika Westerberg)
      
       - Extend altera to support Stratix 10 (Ley Foon Tan)
      
       - Allow building altera driver on ARM64 (Ley Foon Tan)
      
       - Replace Douglas with Tom Joseph as Cadence PCI host/endpoint
         maintainer (Lorenzo Pieralisi)
      
       - Add DT support for R-Car RZ/G2E (R8A774C0) (Fabrizio Castro)
      
       - Add dra72x/dra74x/dra76x SoC compatible strings (Kishon Vijay Abraham I)
      
       - Enable x2 mode support for dra72x/dra74x/dra76x SoC (Kishon Vijay
         Abraham I)
      
       - Configure dra7xx PHY to PCIe mode (Kishon Vijay Abraham I)
      
       - Simplify dwc (remove unnecessary header includes, name variables
         consistently, reduce inverted logic, etc) (Gustavo Pimentel)
      
       - Add i.MX8MQ support (Andrey Smirnov)
      
       - Add message to help debug dwc MSI-X mask bit errors (Gustavo
         Pimentel)
      
       - Work around imx7d PCIe PLL erratum (Trent Piepho)
      
       - Don't assert qcom reset GPIO during probe (Bjorn Andersson)
      
       - Skip dwc MSI init if MSIs have been disabled (Lucas Stach)
      
       - Use memcpy_fromio()/memcpy_toio() instead of plain memcpy() in PCI
         endpoint framework (Wen Yang)
      
       - Add interface to discover supported endpoint features to replace a
         bitfield that wasn't flexible enough (Kishon Vijay Abraham I)
      
       - Implement the new supported-feature interface for designware-plat,
         dra7xx, rockchip, cadence (Kishon Vijay Abraham I)
      
       - Fix issues with 64-bit BAR in endpoints (Kishon Vijay Abraham I)
      
       - Add layerscape endpoint mode support (Xiaowei Bao)
      
       - Remove duplicate struct hv_vp_set in favor of struct hv_vpset (Maya
         Nakamura)
      
       - Rework hv_irq_unmask() to use cpumask_to_vpset() instead of
         open-coded reimplementation (Maya Nakamura)
      
       - Align Hyper-V struct retarget_msi_interrupt arguments (Maya Nakamura)
      
       - Fix mediatek MMIO size computation to enable full size of available
         MMIO space (Honghui Zhang)
      
       - Fix mediatek DMA window size computation to allow endpoint DMA access
         to full DRAM address range (Honghui Zhang)
      
       - Fix mvebu prefetchable BAR regression caused by common bridge
         emulation that assumed all bridges had prefetchable windows (Thomas
         Petazzoni)
      
       - Make advk_pci_bridge_emul_ops static (Wei Yongjun)
      
       - Configure MPS settings for VMD root ports (Jon Derrick)
      
      * tag 'pci-v5.1-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (92 commits)
        PCI: Update PCIEPORTBUS Kconfig help text
        PCI: Fix "try" semantics of bus and slot reset
        PCI/LINK: Report degraded links via link bandwidth notification
        dt-bindings: PCI: altera: Add altr,pcie-root-port-2.0
        PCI: altera: Enable driver on ARM64
        PCI: altera: Add Stratix 10 PCIe support
        PCI/PME: Fix possible use-after-free on remove
        PCI: aardvark: Make symbol 'advk_pci_bridge_emul_ops' static
        PCI: dwc: skip MSI init if MSIs have been explicitly disabled
        PCI: hv: Refactor hv_irq_unmask() to use cpumask_to_vpset()
        PCI: hv: Replace hv_vp_set with hv_vpset
        PCI: hv: Add __aligned(8) to struct retarget_msi_interrupt
        PCI: mediatek: Enlarge PCIe2AHB window size to support 4GB DRAM
        PCI: mediatek: Fix memory mapped IO range size computation
        PCI: dwc: Remove superfluous shifting in definitions
        PCI: dwc: Make use of GENMASK/FIELD_PREP
        PCI: dwc: Make use of BIT() in constant definitions
        PCI: dwc: Share code for dw_pcie_rd/wr_other_conf()
        PCI: dwc: Make use of IS_ALIGNED()
        PCI: imx6: Add code to request/control "pcie_aux" clock for i.MX8MQ
        ...
      2901752c
    • Linus Torvalds's avatar
      Merge tag 'media/v5.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 96a6de1a
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
      
       - remove sensor drivers that got converted from soc_camera
      
       - remaining soc_camera drivers got moved to staging
      
       - some documentation cleanups and improvements
      
       - the imx staging driver now supports imx7
      
       - the ov9640, mt9m001 and mt9m111 got converted from soc_camera
      
       - the vim2m driver now does what a m2m convert driver expects to do
      
       - epoll() fixes on media subsystems
      
       - several drivers fixes, typos, cleanups and improvements
      
      * tag 'media/v5.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (346 commits)
        media: dvb/earth-pt1: fix wrong initialization for demod blocks
        media: vim2m: Address some coding style issues
        media: vim2m: don't use BUG()
        media: vim2m: speedup passthrough copy
        media: vim2m: add an horizontal scaler
        media: vim2m: don't accept YUYV anymore as output format
        media: vim2m: add vertical linear scaler
        media: vim2m: better handle cap/out buffers with different sizes
        media: vim2m: use different framesizes for bayer formats
        media: vim2m: add support for VIDIOC_ENUM_FRAMESIZES
        media: vim2m: ensure that width is multiple of two
        media: vim2m: improve debug messages
        media: vim2m: add bayer capture formats
        media: a few more typos at staging, pci, platform, radio and usb
        media: Documentation: fix several typos
        media: staging: fix several typos
        media: include: fix several typos
        media: common: fix several typos
        media: v4l2-core: fix several typos
        media: usb: fix several typos
        ...
      96a6de1a
    • Linus Torvalds's avatar
      Merge tag 'gfs2-5.1.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 · 36011ddc
      Linus Torvalds authored
      Pull gfs2 updates from Bob Peterson:
       "We've only got three patches ready for this merge window:
      
         - Fix a hang related to missed wakeups for glocks from Andreas
           Gruenbacher
      
         - Rework of how gfs2 manages its debugfs files from Greg K-H
      
         - An incorrect assert when truncating or deleting files from Tim
           Smith"
      
      * tag 'gfs2-5.1.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2:
        gfs2: Fix missed wakeups in find_insert_glock
        gfs2: Fix an incorrect gfs2_assert()
        gfs: no need to check return value of debugfs_create functions
      36011ddc
    • Linus Torvalds's avatar
      Merge tag '5.1-rc-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6 · e519a8c2
      Linus Torvalds authored
      Pull smb3 updates from Steve French:
      
       - smb3/cifs fixes including for large i/o error cases
      
       - fixes for three xfstests
      
       - improved crediting (smb3 flow control)
      
       - improved tracing
      
      * tag '5.1-rc-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6: (44 commits)
        fs: cifs: Kconfig: pedantic formatting
        smb3: request more credits on normal (non-large read/write) ops
        CIFS: Mask off signals when sending SMB packets
        CIFS: Return -EAGAIN instead of -ENOTSOCK
        CIFS: Only send SMB2_NEGOTIATE command on new TCP connections
        CIFS: Fix read after write for files with read caching
        smb3: for kerberos mounts display the credential uid used
        cifs: use correct format characters
        smb3: add dynamic trace point for query_info_enter/done
        smb3: add dynamic trace point for smb3_cmd_enter
        smb3: improve dynamic tracing of open and posix mkdir
        smb3: add missing read completion trace point
        smb3: Add tracepoints for read, write and query_dir enter
        smb3: add tracepoints for query dir
        smb3: Update POSIX negotiate context with POSIX ctxt GUID
        cifs: update internal module version number
        CIFS: Try to acquire credits at once for compound requests
        CIFS: Return error code when getting file handle for writeback
        CIFS: Move open file handling to writepages
        CIFS: Move unlocking pages from wdata_send_pages()
        ...
      e519a8c2
    • Linus Torvalds's avatar
      Merge tag 'fscrypt-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt · d1cae948
      Linus Torvalds authored
      Pull fscrypt updates from Eric Biggers:
       "First: Ted, Jaegeuk, and I have decided to add me as a co-maintainer
        for fscrypt, and we're now using a shared git tree. So we've updated
        MAINTAINERS accordingly, and I'm doing the pull request this time.
      
        The actual changes for v5.1 are:
      
         - Remove the fs-specific kconfig options like CONFIG_EXT4_ENCRYPTION
           and make fscrypt support for all fscrypt-capable filesystems be
           controlled by CONFIG_FS_ENCRYPTION, similar to how CONFIG_QUOTA
           works.
      
         - Improve error code for rename() and link() into encrypted
           directories.
      
         - Various cleanups"
      
      * tag 'fscrypt-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt:
        MAINTAINERS: add Eric Biggers as an fscrypt maintainer
        fscrypt: return -EXDEV for incompatible rename or link into encrypted dir
        fscrypt: remove filesystem specific build config option
        f2fs: use IS_ENCRYPTED() to check encryption status
        ext4: use IS_ENCRYPTED() to check encryption status
        fscrypt: remove CRYPTO_CTR dependency
      d1cae948
    • Linus Torvalds's avatar
      Merge tag 'leaks-5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tobin/leaks · 99b25a7f
      Linus Torvalds authored
      Pull leaking_addresses updates from Tobin Harding:
       "Here are two super trivial patches to the leaking addresses script.
      
        One fixes the debugging output which is currently broken in a bunch of
        places, the other removes the --version command line option.
      
        Both patches have been tested and sitting in linux-next tree for a
        month or so"
      
      * tag 'leaks-5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tobin/leaks:
        leaking_addresses: Completely remove --version flag
        leaking_addresses: Fix calls to dprint
      99b25a7f
    • Linus Torvalds's avatar
      Merge tag 'docs-5.1' of git://git.lwn.net/linux · 1a29e857
      Linus Torvalds authored
      Pull documentation updates from Jonathan Corbet:
       "A fairly routine cycle for docs - lots of typo fixes, some new
        documents, and more translations. There's also some LICENSES
        adjustments from Thomas"
      
      * tag 'docs-5.1' of git://git.lwn.net/linux: (74 commits)
        docs: Bring some order to filesystem documentation
        Documentation/locking/lockdep: Drop last two chars of sample states
        doc: rcu: Suspicious RCU usage is a warning
        docs: driver-api: iio: fix errors in documentation
        Documentation/process/howto: Update for 4.x -> 5.x versioning
        docs: Explicitly state that the 'Fixes:' tag shouldn't split lines
        doc: security: Add kern-doc for lsm_hooks.h
        doc: sctp: Merge and clean up rst files
        Docs: Correct /proc/stat path
        scripts/spdxcheck.py: fix C++ comment style detection
        doc: fix typos in license-rules.rst
        Documentation: fix admin-guide/README.rst minimum gcc version requirement
        doc: process: complete removal of info about -git patches
        doc: translations: sync translations 'remove info about -git patches'
        perf-security: wrap paragraphs on 72 columns
        perf-security: elaborate on perf_events/Perf privileged users
        perf-security: document collected perf_events/Perf data categories
        perf-security: document perf_events/Perf resource control
        sysfs.txt: add note on available attribute macros
        docs: kernel-doc: typo "if ... if" -> "if ... is"
        ...
      1a29e857
    • Linus Torvalds's avatar
      Merge tag 'printk-for-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/pmladek/printk · c4703acd
      Linus Torvalds authored
      Pull printk updates from Petr Mladek:
      
       - Allow to sort mixed lines by an extra information about the caller
      
       - Remove no longer used LOG_PREFIX.
      
       - Some clean up and documentation update.
      
      * tag 'printk-for-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/pmladek/printk:
        printk/docs: Add extra integer types to printk-formats
        printk: Remove no longer used LOG_PREFIX.
        lib/vsprintf: Remove %pCr remnant in comment
        printk: Pass caller information to log_store().
        printk: Add caller information to printk() output.
      c4703acd
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-5.1-rc1' of... · a448c643
      Linus Torvalds authored
      Merge tag 'linux-kselftest-5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull kselftest update fromShuah Khan:
      
       - ir test compile warnings fixes
      
       - seccomp test fixes and improvements from Tycho Andersen and Kees Cook
      
       - ftrace fixes to non-POSIX-compliant constructs in colored output code
         and handling absence of tput from Juerg Haefliger
      
      * tag 'linux-kselftest-5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests/ftrace: Handle the absence of tput
        selftests/ftrace: Replace \e with \033
        selftests/ftrace: Replace echo -e with printf
        selftests: ir: skip when non-root user runs the test
        selftests: ir: skip when lirc device doesn't exist.
        selftests: ir: fix warning: "%s" directive output may be truncated ’ directive output may be truncated
        selftests/seccomp: Actually sleep for 1/10th second
        selftests/harness: Update named initializer syntax
        selftests: unshare userns in seccomp pidns testcases
        selftests: set NO_NEW_PRIVS bit in seccomp user tests
        selftests: skip seccomp get_metadata test if not real root
        selftest: include stdio.h in kselftest.h
        selftests: fix typo in seccomp_bpf.c
        selftests: don't kill child immediately in get_metadata() test
      a448c643
    • Linus Torvalds's avatar
      Merge tag 'gcc-plugins-v5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux · 2bb99540
      Linus Torvalds authored
      Pull gcc-plugins updates from Kees Cook:
       "This adds additional type coverage to the existing structleak plugin
        and adds a large set of selftests to help evaluate stack variable
        zero-initialization coverage.
      
        That can be used to test whatever instrumentation might be performing
        zero-initialization: either with the structleak plugin or with Clang's
        coming "-ftrivial-auto-var-init=zero" option.
      
        Summary:
      
         - Add scalar and array initialization coverage
      
         - Refactor Kconfig to make options more clear
      
         - Add self-test module for testing automatic initialization"
      
      * tag 'gcc-plugins-v5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
        lib: Introduce test_stackinit module
        gcc-plugins: structleak: Generalize to all variable types
      2bb99540
    • Linus Torvalds's avatar
      Merge tag 'pstore-v5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux · a39f009a
      Linus Torvalds authored
      Pull pstore cleanups from Kees Cook:
      
       - Remove some needless memory allocations (Yue Hu, Kees Cook)
      
       - Add zero-length checks to avoid no-op calls (Yue Hu)
      
      * tag 'pstore-v5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
        pstore/ram: Avoid needless alloc during header write
        pstore/ram: Add kmsg hlen zero check to ramoops_pstore_write()
        pstore/ram: Move initialization earlier
        pstore: Avoid writing records with zero size
        pstore/ram: Replace dummy_data heap memory with stack memory
      a39f009a
    • Baruch Siach's avatar
      MAINTAINERS: fix typo in Mimi Zohar's address · 5bbf1b6d
      Baruch Siach authored
      Fixes: ("MAINTAINERS: Update from @linux.vnet.ibm.com to @linux.ibm.com")
      Reviewed-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      Signed-off-by: default avatarBaruch Siach <baruch@tkos.co.il>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      5bbf1b6d
  3. 08 Mar, 2019 26 commits
    • Linus Torvalds's avatar
      Merge tag 'io_uring-2019-03-06' of git://git.kernel.dk/linux-block · 38e7571c
      Linus Torvalds authored
      Pull io_uring IO interface from Jens Axboe:
       "Second attempt at adding the io_uring interface.
      
        Since the first one, we've added basic unit testing of the three
        system calls, that resides in liburing like the other unit tests that
        we have so far. It'll take a while to get full coverage of it, but
        we're working towards it. I've also added two basic test programs to
        tools/io_uring. One uses the raw interface and has support for all the
        various features that io_uring supports outside of standard IO, like
        fixed files, fixed IO buffers, and polled IO. The other uses the
        liburing API, and is a simplified version of cp(1).
      
        This adds support for a new IO interface, io_uring.
      
        io_uring allows an application to communicate with the kernel through
        two rings, the submission queue (SQ) and completion queue (CQ) ring.
        This allows for very efficient handling of IOs, see the v5 posting for
        some basic numbers:
      
          https://lore.kernel.org/linux-block/20190116175003.17880-1-axboe@kernel.dk/
      
        Outside of just efficiency, the interface is also flexible and
        extendable, and allows for future use cases like the upcoming NVMe
        key-value store API, networked IO, and so on. It also supports async
        buffered IO, something that we've always failed to support in the
        kernel.
      
        Outside of basic IO features, it supports async polled IO as well.
        This particular feature has already been tested at Facebook months ago
        for flash storage boxes, with 25-33% improvements. It makes polled IO
        actually useful for real world use cases, where even basic flash sees
        a nice win in terms of efficiency, latency, and performance. These
        boxes were IOPS bound before, now they are not.
      
        This series adds three new system calls. One for setting up an
        io_uring instance (io_uring_setup(2)), one for submitting/completing
        IO (io_uring_enter(2)), and one for aux functions like registrating
        file sets, buffers, etc (io_uring_register(2)). Through the help of
        Arnd, I've coordinated the syscall numbers so merge on that front
        should be painless.
      
        Jon did a writeup of the interface a while back, which (except for
        minor details that have been tweaked) is still accurate. Find that
        here:
      
          https://lwn.net/Articles/776703/
      
        Huge thanks to Al Viro for helping getting the reference cycle code
        correct, and to Jann Horn for his extensive reviews focused on both
        security and bugs in general.
      
        There's a userspace library that provides basic functionality for
        applications that don't need or want to care about how to fiddle with
        the rings directly. It has helpers to allow applications to easily set
        up an io_uring instance, and submit/complete IO through it without
        knowing about the intricacies of the rings. It also includes man pages
        (thanks to Jeff Moyer), and will continue to grow support helper
        functions and features as time progresses. Find it here:
      
          git://git.kernel.dk/liburing
      
        Fio has full support for the raw interface, both in the form of an IO
        engine (io_uring), but also with a small test application (t/io_uring)
        that can exercise and benchmark the interface"
      
      * tag 'io_uring-2019-03-06' of git://git.kernel.dk/linux-block:
        io_uring: add a few test tools
        io_uring: allow workqueue item to handle multiple buffered requests
        io_uring: add support for IORING_OP_POLL
        io_uring: add io_kiocb ref count
        io_uring: add submission polling
        io_uring: add file set registration
        net: split out functions related to registering inflight socket files
        io_uring: add support for pre-mapped user IO buffers
        block: implement bio helper to add iter bvec pages to bio
        io_uring: batch io_kiocb allocation
        io_uring: use fget/fput_many() for file references
        fs: add fget_many() and fput_many()
        io_uring: support for IO polling
        io_uring: add fsync support
        Add io_uring IO interface
      38e7571c
    • Linus Torvalds's avatar
      Merge tag 'for-5.1/block-20190302' of git://git.kernel.dk/linux-block · 80201fe1
      Linus Torvalds authored
      Pull block layer updates from Jens Axboe:
       "Not a huge amount of changes in this round, the biggest one is that we
        finally have Mings multi-page bvec support merged. Apart from that,
        this pull request contains:
      
         - Small series that avoids quiescing the queue for sysfs changes that
           match what we currently have (Aleksei)
      
         - Series of bcache fixes (via Coly)
      
         - Series of lightnvm fixes (via Mathias)
      
         - NVMe pull request from Christoph. Nothing major, just SPDX/license
           cleanups, RR mp policy (Hannes), and little fixes (Bart,
           Chaitanya).
      
         - BFQ series (Paolo)
      
         - Save blk-mq cpu -> hw queue mapping, removing a pointer indirection
           for the fast path (Jianchao)
      
         - fops->iopoll() added for async IO polling, this is a feature that
           the upcoming io_uring interface will use (Christoph, me)
      
         - Partition scan loop fixes (Dongli)
      
         - mtip32xx conversion from managed resource API (Christoph)
      
         - cdrom registration race fix (Guenter)
      
         - MD pull from Song, two minor fixes.
      
         - Various documentation fixes (Marcos)
      
         - Multi-page bvec feature. This brings a lot of nice improvements
           with it, like more efficient splitting, larger IOs can be supported
           without growing the bvec table size, and so on. (Ming)
      
         - Various little fixes to core and drivers"
      
      * tag 'for-5.1/block-20190302' of git://git.kernel.dk/linux-block: (117 commits)
        block: fix updating bio's front segment size
        block: Replace function name in string with __func__
        nbd: propagate genlmsg_reply return code
        floppy: remove set but not used variable 'q'
        null_blk: fix checking for REQ_FUA
        block: fix NULL pointer dereference in register_disk
        fs: fix guard_bio_eod to check for real EOD errors
        blk-mq: use HCTX_TYPE_DEFAULT but not 0 to index blk_mq_tag_set->map
        block: optimize bvec iteration in bvec_iter_advance
        block: introduce mp_bvec_for_each_page() for iterating over page
        block: optimize blk_bio_segment_split for single-page bvec
        block: optimize __blk_segment_map_sg() for single-page bvec
        block: introduce bvec_nth_page()
        iomap: wire up the iopoll method
        block: add bio_set_polled() helper
        block: wire up block device iopoll method
        fs: add an iopoll method to struct file_operations
        loop: set GENHD_FL_NO_PART_SCAN after blkdev_reread_part()
        loop: do not print warn message if partition scan is successful
        block: bounce: make sure that bvec table is updated
        ...
      80201fe1
    • Linus Torvalds's avatar
      Merge tag 'for-5.1/libata-20190301' of git://git.kernel.dk/linux-block · 4221b807
      Linus Torvalds authored
      Pull libata updates from Jens Axboe:
       "Pretty quiet round: a few small fixes, comment typo, and most notably
        a low level driver for the PATA Buddha controller"
      
      * tag 'for-5.1/libata-20190301' of git://git.kernel.dk/linux-block:
        ata: libahci: Only warn for AHCI_HFLAG_MULTI_MSI set when genuine custom irq handler implemented
        libata: fix a typo in comment
        ata: macio: Use of_node_name_eq for node name comparisons
        ata: pata_samsung_cf: simplify getting .driver_data
        ata: pata_platform: Add IRQF_SHARED to IRQ flags
        ata: pata_of_platform: Allow to use 16-bit wide data transfer
        ata: add Buddha PATA controller driver
      4221b807
    • Linus Torvalds's avatar
      Merge tag 'gpio-v5.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · 3601fe43
      Linus Torvalds authored
      Pull GPIO updates from Linus Walleij:
       "This is the bulk of GPIO changes for the v5.1 cycle:
      
        Core changes:
      
         - The big change this time around is the irqchip handling in the
           qualcomm pin controllers, closely coupled with the gpiochip. This
           rework, in a classic fall-between-the-chairs fashion has been
           sidestepped for too long.
      
           The Qualcomm IRQchips using the SPMI and SSBI transport mechanisms
           have been rewritten to use hierarchical irqchip. This creates the
           base from which I intend to gradually pull support for hierarchical
           irqchips into the gpiolib irqchip helpers to cut down on duplicate
           code.
      
           We have too many hacks in the kernel because people have been
           working around the missing hierarchical irqchip for years, and once
           it was there, noone understood it for a while. We are now slowly
           adapting to using it.
      
           This is why this pull requests include changes to MFD, SPMI,
           IRQchip core and some ARM Device Trees pertaining to the Qualcomm
           chip family. Since Qualcomm have so many chips and such large
           deployments it is paramount that this platform gets this right, and
           now it (hopefully) does.
      
         - Core support for pull-up and pull-down configuration, also from the
           device tree. When a simple GPIO chip supports an "off or on" pull-up
           or pull-down resistor, we provide a way to set this up using
           machine descriptors or device tree.
      
           If more elaborate control of pull up/down (such as resistance shunt
           setting) is required, drivers should be phased over to use pin
           control. We do not yet provide a userspace ABI for this pull
           up-down setting but I suspect the makers are going to ask for it
           soon enough. PCA953x is the first user of this new API.
      
         - The GPIO mockup driver has been revamped after some discussion
           improving the IRQ simulator in the process.
      
           The idea is to make it possible to use the mockup for both testing
           and virtual prototyping, e.g. when you do not yet have a GPIO
           expander to play with but really want to get something to develop
           code around before hardware is available. It's neat. The blackbox
           testing usecase is currently making its way into kernelci.
      
         - ACPI GPIO core preserves non direction flags when updating flags.
      
         - A new device core helper for devm_platform_ioremap_resource() is
           funneled through the GPIO tree with Greg's ACK.
      
        New drivers:
      
         - TQ-Systems QTMX86 GPIO controllers (using port-mapped I/O)
      
         - Gateworks PLD GPIO driver (vaccumed up from OpenWrt)
      
         - AMD G-Series PCH (Platform Controller Hub) GPIO driver.
      
         - Fintek F81804 & F81966 subvariants.
      
         - PCA953x now supports NXP PCAL6416.
      
        Driver improvements:
      
         - IRQ support on the Nintendo Wii (Hollywood) GPIO.
      
         - get_direction() support for the MVEBU driver.
      
         - Set the right output level on SAMA5D2.
      
         - Drop the unused irq trigger setting on the Spreadtrum driver.
      
         - Wakeup support for PCA953x.
      
         - A slew of cleanups in the various Intel drivers"
      
      * tag 'gpio-v5.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (110 commits)
        gpio: gpio-omap: fix level interrupt idling
        gpio: amd-fch: Set proper output level for direction_output
        x86: apuv2: remove unused variable
        gpio: pca953x: Use PCA_LATCH_INT
        platform/x86: fix PCENGINES_APU2 Kconfig warning
        gpio: pca953x: Fix dereference of irq data in shutdown
        gpio: amd-fch: Fix type error found by sparse
        gpio: amd-fch: Drop const from resource
        gpio: mxc: add check to return defer probe if clock tree NOT ready
        gpio: ftgpio: Register per-instance irqchip
        gpio: ixp4xx: Add DT bindings
        x86: pcengines apuv2 gpio/leds/keys platform driver
        gpio: AMD G-Series PCH gpio driver
        drivers: depend on HAS_IOMEM for devm_platform_ioremap_resource()
        gpio: tqmx86: Set proper output level for direction_output
        gpio: sprd: Change to use SoC compatible string
        gpio: sprd: Use SoC compatible string instead of wildcard string
        gpio: of: Handle both enable-gpio{,s}
        gpio: of: Restrict enable-gpio quirk to regulator-gpio
        gpio: davinci: use devm_platform_ioremap_resource()
        ...
      3601fe43
    • Linus Torvalds's avatar
      Merge tag 'mfd-next-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · cf2e8c54
      Linus Torvalds authored
      Pull MFD updates from Lee Jones:
       "New Drivers:
         - Add STMPE ADC Input driver
         - Add STMicroelectronics STPMIC1 Parent driver
         - Add STMicroelectronics STPMIC1 OnKey Misc driver
         - Add STMicroelectronics STPMIC1 Watchdog driver
         - Add Cirrus Logic Lochnagar Parent driver
         - Add TQ-Systems TQMX86 Parent driver
      
        New Device Support:
         - Add support for ADC to STMPE
      
        New (or moved) Functionality:
         - Move Lightbar functionality to its own driver; cros_ec_lightbar
         - Move VBC functionality to its own driver; cros_ec_vbc
         - Move VBC functionality to its own driver; cros_ec_vbc
         - Move DebugFS functionality to its own driver; cros_ec_debugfs
         - Move SYSFS functionality to its own driver; cros_ec_sysfs
         - Add support for input voltage options; tps65218
      
        Fixes:
         - Use devm_* managed resources; cros_ec
         - Device Tree documentation; stmpe, aspeed-lpc, lochnagar
         - Trivial Clean-ups; stmpe
         - Rip out broken modular code; aat2870-core, adp5520, as3711,
               db8500-prcmu, htc-i2cpld, max8925-core, rc5t583, sta2x11-mfd,
      	 syscon, tps65090, tps65910, tps68470 tps80031, wm831x-spi,
      	 wm831x-i2c, wm831x-core, wm8350-i2c, wm8350-core, wm8400-core
         - Kconfig fixups; INTEL_SOC_PMIC
         - Improve error path; sm501, sec-core
         - Use struct_size() helper; sm501
         - Constify; at91-usart
         - Use pointers instead of copying data; at91-usart
         - Deliver proper return value; cros_ec_dev
         - Trivial formatting/whitespace; sec-core"
      
      * tag 'mfd-next-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (53 commits)
        mfd: mxs-lradc: Mark expected switch fall-through
        mfd: sec-core: Cleanup formatting to a consistent style
        mfd: tqmx86: IO controller with I2C, Wachdog and GPIO
        mfd: intel-lpss: Move linux/pm.h to the local header
        mfd: cros_ec_dev: Return number of bytes read with CROS_EC_DEV_IOCRDMEM
        mfd: tps68470: Drop unused MODULE_DEVICE_TABLE
        mfd: at91-usart: No need to copy mfd_cell in probe
        mfd: at91-usart: Constify at91_usart_spi_subdev and at91_usart_serial_subdev
        mfd: lochnagar: Add support for the Cirrus Logic Lochnagar
        mfd: lochnagar: Add initial binding documentation
        dt-bindings: mfd: aspeed-lpc: Make parameter optional
        mfd: sec-core: Return gracefully instead of BUG() if device cannot match
        mfd: sm501: Use struct_size() in devm_kzalloc()
        mfd: sm501: Fix potential NULL pointer dereference
        mfd: Kconfig: Fix I2C_DESIGNWARE_PLATFORM dependencies
        mfd: tps65218.c: Add input voltage options
        mfd: wm8400-core: Make it explicitly non-modular
        mfd: wm8350-core: Drop unused module infrastructure from non-modular code
        mfd: wm8350-i2c: Make it explicitly non-modular
        mfd: wm831x-core: Drop unused module infrastructure from non-modular code
        ...
      cf2e8c54
    • Linus Torvalds's avatar
      Merge tag 'backlight-next-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight · 04e03618
      Linus Torvalds authored
      Pull backlight fixlet from Lee Jones:
       "Allow GPIO call to sleep in pwm_bl driver"
      
      * tag 'backlight-next-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
        backlight: pwm_bl: Use gpiod_get_value_cansleep() to get initial state
      04e03618
    • Linus Torvalds's avatar
      Merge tag 'rtc-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux · f8d35403
      Linus Torvalds authored
      Pull RTC updates from Alexandre Belloni:
       "There is an unusual amount of new drivers this cycle, and this
        explains the number of insertions.
      
        Other than that, the changes are the usual fixes and feature addition.
      
        Subsystem updates:
         - new quartz-load-femtofarads DT property for quartz load capacitance
         - remove rtc_class_ops.read_callback
      
        New drivers:
         - Abracon AB-RTCMC-32.768kHz-EOZ9
         - Amlogic Meson RTC
         - Cadence RTC IP
         - Microcrystal RV3028
         - Whwave sd3078
      
        Driver updates:
         - cmos: ignore bogus century byte
         - ds1307: rework rx8130 support
         - isl1208: add isl1209 support, nvmem support
         - rs5C372: report invalid time when the oscillator stopped
         - rx8581: add rx8571 support"
      
      * tag 'rtc-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (66 commits)
        rtc: pic32: convert to SPDX identifier
        rtc: pic32: let the core handle range
        rtc: pic32: convert to devm_rtc_allocate_device
        rtc: update my email address
        rtc: rv8803: convert to SPDX identifier
        rtc: rv8803: let the core handle range
        rtc: tx4939: convert to SPDX identifier
        rtc: tx4939: use .set_time
        rtc: tx4939: switch to rtc_time64_to_tm/rtc_tm_to_time64
        rtc: tx4939: set range
        rtc: tx4939: remove useless test
        rtc: zynqmp: let the core handle range
        rtc: zynqmp: fix possible race condition
        rtc: imx-sc: use rtc_time64_to_tm
        rtc: rx8581: Add support for Epson rx8571 RTC
        dt-bindings: rtc: add rx8571 compatible
        rtc: pcf85063: remove dead code
        rtc: remove rtc_class_ops.read_callback
        rtc: add AB-RTCMC-32.768kHz-EOZ9 RTC support
        dt-bindings: rtc: add ABEOZ9
        ...
      f8d35403
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal · 9f24a81e
      Linus Torvalds authored
      Pull thermal soc updates from Eduardo Valentin:
       "Specifics:
      
         - mediatek thermal now supports MT8183
      
         - broadcom thermal now supports Stingray
      
         - qoirq now supports multiple sensors
      
         - fixes on different drivers: rcar, tsens, tegra
      
        Some new drivers are still pending further review and I chose to leave
        them for the next merge window while still sending this material"
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal:
        thermal: rcar_gen3_thermal: Register hwmon sysfs interface
        thermal/qcom/tsens-common : fix possible object reference leak
        thermal: tegra: add get_trend ops
        thermal: tegra: fix memory allocation
        thermal: tegra: remove unnecessary warnings
        thermal: mediatek: add support for MT8183
        dt-bindings: thermal: add binding document for mt8183 thermal controller
        thermal: mediatek: add flag for bank selection
        thermal: mediatek: add thermal controller offset
        thermal: mediatek: add calibration item
        thermal: mediatek: add common index of vts settings.
        thermal: mediatek: fix register index error
        thermal: qoriq: add multiple sensors support
        thermal: broadcom: Add Stingray thermal driver
        dt-bindings: thermal: Add binding document for SR thermal
      9f24a81e
    • Linus Torvalds's avatar
      Merge branch 'stable/for-linus-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft · 564e7411
      Linus Torvalds authored
      Pull ibft updates from Konrad Rzeszutek Wilk:
       "Two tiny fixes - a missing break, and upgrading the subsystem to use
        modern macros"
      
      * 'stable/for-linus-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft:
        iscsi_ibft: use virt_to_phys instead of isa_virt_to_bus
        iscsi_ibft: Fix missing break in switch statement
      564e7411
    • Linus Torvalds's avatar
      Merge branch 'stable/for-linus-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb · e4ff63b4
      Linus Torvalds authored
      Pull swiotlb updates from Konrad Rzeszutek Wilk:
       "Expands the SWIOTLB to have debugfs support (along with bug-fixes),
        and a tiny fix"
      
      * 'stable/for-linus-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb:
        swiotlb: drop pointless static qualifier in swiotlb_create_debugfs()
        swiotlb: checking whether swiotlb buffer is full with io_tlb_used
        swiotlb: add debugfs to track swiotlb buffer usage
        swiotlb: fix comment on swiotlb_bounce()
      e4ff63b4
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 6c3f98fa
      Linus Torvalds authored
      Pull i2c updates from Wolfram Sang:
      
       - the I2C core gained helpers to assist drivers in handling their
         suspended state, and drivers were converted to use it
      
       - two new fault-injectors for stress-testing
      
       - bigger refactoring and feature improvements for the ocores,
         sh_mobile, and tegra drivers
      
       - platform_data removal for the at24 EEPROM driver
      
       - ... and various improvements and bugfixes all over the subsystem
      
      * 'i2c/for-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (69 commits)
        i2c: Allow recovery of the initial IRQ by an I2C client device.
        i2c: ocores: turn incomplete kdoc into a comment
        i2c: designware: Do not allow i2c_dw_xfer() calls while suspended
        i2c: tegra: Only display error messages if DMA setup fails
        i2c: gpio: fault-injector: add 'inject_panic' injector
        i2c: gpio: fault-injector: add 'lose_arbitration' injector
        i2c: tegra: remove multi-master support
        i2c: tegra: remove master fifo support on tegra186
        i2c: tegra: change phrasing, "fallbacking" to "falling back"
        i2c: expand minor range when registering chrdev region
        i2c: aspeed: Add multi-master use case support
        i2c: core-smbus: don't trace smbus_reply data on errors
        i2c: ocores: Add support for bus clock via platform data
        i2c: ocores: Add support for IO mapper registers.
        i2c: ocores: checkpatch fixes
        i2c: ocores: add SPDX tag
        i2c: ocores: add polling interface
        i2c: ocores: do not handle IRQ if IF is not set
        i2c: ocores: stop transfer on timeout
        i2c: tegra: add i2c interface timing support
        ...
      6c3f98fa
    • Linus Torvalds's avatar
      Merge tag 'for-v5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · 1cabd3e0
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
       "Nothing too fancy in the power-supply subsystem this time. There are
        less patches than usual, since I did not have enough time to review
        them in time. The good news is, that all patches have been in
        linux-next for more than two weeks and there are no complicated
        cross-subsystem patchsets this time!
      
        Summary:
      
         - at91-reset: add sam9x60 support
      
         - sc27xx: improve capacity logic
      
         - goldfish_battery: enhance driver by adding many new properties
      
         - isp1704: drop platform data and migrate to gpiod
      
         - misc small fixes and improvements"
      
      * tag 'for-v5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (25 commits)
        power: reset: at91-reset: add support for sam9x60 SoC
        dt-bindings: arm: atmel: add new sam9x60 reset controller binding
        dt-bindings: arm: atmel: add missing samx7 to reset controller
        max17042_battery: fix potential use-after-free on device remove
        power: supply: core: Add a field to support battery max voltage
        dt-bindings: power: supply: Add voltage-max-design-microvolt property
        bq27x00: use cached flags
        power: supply: ds2782: fix possible use-after-free on remove
        power: supply: bq25890: show max charge current/voltage as configured
        power: supply: sc27xx: Fix capacity saving function
        power: supply: sc27xx: Fix the incorrect formula when converting capacity to coulomb counter
        power: supply: sc27xx: Add one property to read charge voltage
        dt-bindings: power: sc27xx: Add one IIO channel to read charge voltage
        drivers: power: supply: goldfish_battery: Add support for reading more properties
        power: supply: charger-manager: Fix trivial language typos
        cpcap-charger: generate events for userspace
        power: supply: remove some duplicated includes
        power: twl4030: fix a missing check of return value
        drivers: power: supply: goldfish_battery: Use tabs for alignment
        drivers: power: supply: goldfish_battery: Fix alignment
        ...
      1cabd3e0
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · 7427e286
      Linus Torvalds authored
      Pull HIS update from Sebastian Reichel:
       "Replace DEFINE_SIMPLE_ATTRIBUTE with DEFINE_DEBUGFS_ATTRIBUTE"
      
      * tag 'hsi-for-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
        HSI: omap_ssi_port: fix debugfs_simple_attr.cocci warnings
      7427e286
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.1' of git://github.com/cminyard/linux-ipmi · 039cd25f
      Linus Torvalds authored
      Pull IPMI updates from Corey Minyard:
       "A couple of bug fixes and a bunch of code cleanup:
      
         - Fix a use after free error in a certain error situation.
      
         - Fix some flag handling issues in the SSIF (I2C) IPMI driver.
      
         - A bunch of cleanups, spacing issues, converting pr_xxx to dev_xxx,
           use standard UUID handling, and some other minor stuff.
      
         - The IPMI code was creating a platform device if none was supplied.
           Instead of doing that, have every source that creates an IPMI
           device supply a device struct. This fixes several issues,including
           a crash in one situation, and cleans things up a bit"
      
      * tag 'for-linus-5.1' of git://github.com/cminyard/linux-ipmi:
        ipmi_si: Potential array underflow in hotmod_handler()
        ipmi_si: Remove hacks for adding a dummy platform devices
        ipmi_si: Consolidate scanning the platform bus
        ipmi_si: Remove hotmod devices on removal and exit
        ipmi_si: Remove hardcode IPMI devices by scanning the platform bus
        ipmi_si: Switch hotmod to use a platform device
        ipmi: Consolidate the adding of platform devices
        ipmi_si: Rename addr_type to addr_space to match what it does
        ipmi_si: Convert some types into unsigned
        ipmi_si: Fix crash when using hard-coded device
        ipmi: Use dedicated API for copying a UUID
        ipmi: Use defined constant for UUID representation
        ipmi:ssif: Change some pr_xxx to dev_xxx calls
        ipmi: kcs_bmc: handle devm_kasprintf() failure case
        ipmi: Fix return value when a message is truncated
        ipmi: clean an indentation issue, remove extraneous space
        ipmi: Make the smi watcher be disabled immediately when not needed
        ipmi: Fix how the lower layers are told to watch for messages
        ipmi: Fix SSIF flag requests
        ipmi_si: fix use-after-free of resource->name
      039cd25f
    • Linus Torvalds's avatar
      Merge branch 'ras-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e13284da
      Linus Torvalds authored
      Pull RAS updates from Borislav Petkov:
       "This time around we have in store:
      
         - Disable MC4_MISC thresholding banks on all AMD family 0x15 models
           (Shirish S)
      
         - AMD MCE error descriptions update and error decode improvements
           (Yazen Ghannam)
      
         - The usual smaller conversions and fixes"
      
      * 'ras-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mce: Improve error message when kernel cannot recover, p2
        EDAC/mce_amd: Decode MCA_STATUS in bit definition order
        EDAC/mce_amd: Decode MCA_STATUS[Scrub] bit
        EDAC, mce_amd: Print ExtErrorCode and description on a single line
        EDAC, mce_amd: Match error descriptions to latest documentation
        x86/MCE/AMD, EDAC/mce_amd: Add new error descriptions for some SMCA bank types
        x86/MCE/AMD, EDAC/mce_amd: Add new McaTypes for CS, PSP, and SMU units
        x86/MCE/AMD, EDAC/mce_amd: Add new MP5, NBIO, and PCIE SMCA bank types
        RAS: Add a MAINTAINERS entry
        RAS: Use consistent types for UUIDs
        x86/MCE/AMD: Carve out the MC4_MISC thresholding quirk
        x86/MCE/AMD: Turn off MC4_MISC thresholding on all family 0x15 models
        x86/MCE: Switch to use the new generic UUID API
      e13284da
    • Linus Torvalds's avatar
      Merge tag 'edac_for_5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 1b37b8c4
      Linus Torvalds authored
      Pull EDAC updates from Borislav Petkov:
      
       - A new EDAC AST 2500 SoC driver (Stefan M Schaeckeler)
      
       - New i10nm EDAC driver for Intel 10nm CPUs (Qiuxu Zhuo and Tony Luck)
      
       - Altera SDRAM functionality carveout for separate enablement of RAS
         and SDRAM capabilities on some Altera chips. (Thor Thayer)
      
       - The usual round of cleanups and fixes
      
      And last but not least: recruit James Morse as a reviewer for the ARM
      side.
      
      * tag 'edac_for_5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC/altera: Add separate SDRAM EDAC config
        EDAC, altera: Add missing of_node_put()
        EDAC, skx_common: Add code to recognise new compound error code
        EDAC, i10nm: Fix randconfig builds
        EDAC, i10nm: Add a driver for Intel 10nm server processors
        EDAC, skx_edac: Delete duplicated code
        EDAC, skx_common: Separate common code out from skx_edac
        EDAC: Do not check return value of debugfs_create() functions
        EDAC: Add James Morse as a reviewer
        dt-bindings, EDAC: Add Aspeed AST2500
        EDAC, aspeed: Add an Aspeed AST2500 EDAC driver
      1b37b8c4
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · c6400e5c
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - support for Pro Pen slim, from Jason Gerecke
      
       - power management improvements to Intel-ISH driver, from Song Hongyan
      
       - UCLogic driver revamp in order to be able to support wider range of
         Huion tablets, from Nikolai Kondrashov
      
       - Asus Transbook support, from NOGUCHI Hiroshi
      
       - other assorted small bugfixes / cleanups and device ID additions
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (46 commits)
        HID: Remove Waltop tablets from hid_have_special_driver
        HID: Remove KYE tablets from hid_have_special_driver
        HID: Remove hid-uclogic entries from hid_have_special_driver
        HID: uclogic: Do not initialize non-USB devices
        HID: uclogic: Add support for Ugee G5
        HID: uclogic: Support Gray-coded rotary encoders
        HID: uclogic: Support faking Wacom pad device ID
        HID: uclogic: Add support for XP-Pen Deco 01
        HID: uclogic: Add support for XP-Pen Star G640
        HID: uclogic: Add support for XP-Pen Star G540
        HID: uclogic: Add support for Ugee EX07S frame controls
        HID: uclogic: Add support for Ugee M540
        HID: uclogic: Add support for Ugee 2150
        HID: uclogic: Support v2 protocol
        HID: uclogic: Support fragmented high-res reports
        HID: uclogic: Support in-range reporting emulation
        HID: uclogic: Designate current protocol v1
        HID: uclogic: Re-initialize tablets on resume
        HID: uclogic: Extract tablet parameter discovery into a module
        HID: uclogic: Extract report descriptors to a module
        ...
      c6400e5c
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching · b7af27bf
      Linus Torvalds authored
      Pull livepatching updates from Jiri Kosina:
      
       - support for something we call 'atomic replace', and allows for much
         better handling of cumulative patches (which is something very useful
         for distros), from Jason Baron with help of Petr Mladek and Joe
         Lawrence
      
       - improvement of handling of tasks blocking finalization, from Miroslav
         Benes
      
       - update of MAINTAINERS file to reflect move towards group
         maintainership
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching: (22 commits)
        livepatch/selftests: use "$@" to preserve argument list
        livepatch: Module coming and going callbacks can proceed with all listed patches
        livepatch: Proper error handling in the shadow variables selftest
        livepatch: return -ENOMEM on ptr_id() allocation failure
        livepatch: Introduce klp_for_each_patch macro
        livepatch: core: Return EOPNOTSUPP instead of ENOSYS
        selftests/livepatch: add DYNAMIC_DEBUG config dependency
        livepatch: samples: non static warnings fix
        livepatch: update MAINTAINERS
        livepatch: Remove signal sysfs attribute
        livepatch: Send a fake signal periodically
        selftests/livepatch: introduce tests
        livepatch: Remove ordering (stacking) of the livepatches
        livepatch: Atomic replace and cumulative patches documentation
        livepatch: Remove Nop structures when unused
        livepatch: Add atomic replace
        livepatch: Use lists to manage patches, objects and functions
        livepatch: Simplify API by removing registration step
        livepatch: Don't block the removal of patches loaded after a forced transition
        livepatch: Consolidate klp_free functions
        ...
      b7af27bf
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2019-03-06' of git://anongit.freedesktop.org/drm/drm · 851ca779
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "This is the main drm pull request for the 5.1 merge window.
      
        The big changes I'd highlight are:
         - nouveau has HMM support now, there is finally an in-tree user so we
           can quieten down the rip it out people.
         - i915 now enables fastboot by default on Skylake+
         - Displayport Multistream support has been refactored and should
           hopefully be more reliable.
      
        Core:
         - header cleanups aiming towards removing drmP.h
         - dma-buf fence seqnos to 64-bits
         - common helper for DP mst hotplug for radeon,i915,amdgpu + new
           refcounting scheme
         - MST i2c improvements
         - drm_syncobj_cb removal
         - ARM FB compression fourcc
         - P010 + P016 fourcc
         - allwinner tiled format modifier
         - i2c over aux I2C_M_STOP support
         - DRM_AUTH handling fixes
      
        TTM:
         - ref/unref renaming
      
        New driver:
         - ARM komeda display driver
      
        scheduler:
         - refactor mirror list handling
         - rework hw fence processing
         - 0 run queue entity fix
      
        bridge:
         - TI DS90C185 LVDS bridge
         - thc631lvdm83d bridge improvements
         - cadence + allwinner DSI ported to generic phy
      
        panels:
         - Sitronix ST7701 panel
         - Kingdisplay KD097D04
         - LeMaker BL035-RGB-002
         - PDA 91-00156-A0
         - Innolux EE101IA-01D
      
        i915:
         - Enable fastboot by default on SKL+/VLV/CHV
         - Export RPCS configuration for ICL media driver
         - Coffelake PCI ID
         - CNL clocks setup fixes
         - ACPI/PMIC support for MIPI/DSI
         - Per-engine WA init for all engines
         - Shrinker locking fixes
         - Kerneldoc updates
         - Lots of ring improvements and reset fixes
         - Coffeelake GVT Support
         - VFIO GVT EDID Region support
         - runtime PM wakeref tracking
         - ILK->IVB primary plane enable delays
         - userptr mutex locking fixes
         - DSI fixes
         - LVDS/TV cleanups
         - HW readout fixes
         - LUT robustness fixes
         - ICL display and watermark fixes
         - gem mmap race fix
      
        amdgpu:
         - add scheduled dependencies interface
         - DCC on scanout surfaces
         - vega10/20 BACO support
         - Multiple IH rings on soc15
         - XGMI locking fixes
         - DC i2c/aux cleanups
         - runtime SMU debug interface
         - Kexec improvmeents
         - SR-IOV fixes
         - DC freesync + ABM fixes
         - GDS fixes
         - GPUVM fixes
         - vega20 PCIE DPM switching fixes
         - Context priority handling fixes
      
        radeon:
         - fix missing break in evergreen parser
      
        nouveau:
         - SVM support via HMM
      
        msm:
         - QCOM Compressed modifier support
      
        exynos:
         - s5pv210 rotator support
      
        imx:
         - zpos property support
         - pending update fixes
      
        v3d:
         - cache flush improvments
      
        vc4:
         - reflection support
         - HDMI overscan support
      
        tegra:
         - CEC refactoring
         - HDMI audio fixes
         - Tegra186 prep work
         - SOR crossbar device tree fixes
      
        sun4i:
         - implicit fencing support
         - YUV and scalar support improvements
         - A23 support
         - tiling fixes
      
        atmel-hlcdc:
         - clipping and rotation property fixes
      
        qxl:
         - BO and PRIME improvements
         - generic fbdev emulation
      
        dw-hdmi:
         - HDMI 2.0 2160p
         - YUV420 ouput
      
        rockchip:
         - implicit fencing support
         - reflection proerties
      
        virtio-gpu:
         - use generic fbdev emulation
      
        tilcdc:
         - cpufreq vs crtc init fix
      
        rcar-du:
         - R8A774C0 support
         - D3/E3 RGB output routing fixes and DPAD0 support
         - RA87744 LVDS support
      
        bochs:
         - atomic and generic fbdev emulation
         - ID mismatch error on bochs load
      
        meson:
         - remove firmware fbs"
      
      * tag 'drm-next-2019-03-06' of git://anongit.freedesktop.org/drm/drm: (1130 commits)
        drm/amd/display: Use vrr friendly pageflip throttling in DC.
        drm/imx: only send commit done event when all state has been applied
        drm/imx: allow building under COMPILE_TEST
        drm/imx: imx-tve: depend on COMMON_CLK
        drm/imx: ipuv3-plane: add zpos property
        drm/imx: ipuv3-plane: add function to query atomic update status
        gpu: ipu-v3: prg: add function to get channel configure status
        gpu: ipu-v3: pre: add double buffer status readback
        drm/amdgpu: Bump amdgpu version for context priority override.
        drm/amdgpu/powerplay: fix typo in BACO header guards
        drm/amdgpu/powerplay: fix return codes in BACO code
        drm/amdgpu: add missing license on baco files
        drm/bochs: Fix the ID mismatch error
        drm/nouveau/dmem: use dma addresses during migration copies
        drm/nouveau/dmem: use physical vram addresses during migration copies
        drm/nouveau/dmem: extend copy function to allow direct use of physical addresses
        drm/nouveau/svm: new ioctl to migrate process memory to GPU memory
        drm/nouveau/dmem: device memory helpers for SVM
        drm/nouveau/svm: initial support for shared virtual memory
        drm/nouveau: prepare for enabling svm with existing userspace interfaces
        ...
      851ca779
    • Andreas Gruenbacher's avatar
      gfs2: Fix missed wakeups in find_insert_glock · 605b0487
      Andreas Gruenbacher authored
      Mark Syms has reported seeing tasks that are stuck waiting in
      find_insert_glock.  It turns out that struct lm_lockname contains four padding
      bytes on 64-bit architectures that function glock_waitqueue doesn't skip when
      hashing the glock name.  As a result, we can end up waking up the wrong
      waitqueue, and the waiting tasks may be stuck forever.
      
      Fix that by using ht_parms.key_len instead of sizeof(struct lm_lockname) for
      the key length.
      Reported-by: default avatarMark Syms <mark.syms@citrix.com>
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Signed-off-by: default avatarBob Peterson <rpeterso@redhat.com>
      605b0487
    • Russell King's avatar
      gpio: gpio-omap: fix level interrupt idling · d01849f7
      Russell King authored
      Tony notes that the GPIO module does not idle when level interrupts are
      in use, as the wakeup appears to get stuck.
      
      After extensive investigation, it appears that the wakeup will only be
      cleared if the interrupt status register is cleared while the interrupt
      is enabled. However, we are currently clearing it with the interrupt
      disabled for level-based interrupts.
      
      It is acknowledged that this observed behaviour conflicts with a
      statement in the TRM:
      
      CAUTION
        After servicing the interrupt, the status bit in the interrupt status
        register (GPIOi.GPIO_IRQSTATUS_0 or GPIOi.GPIO_IRQSTATUS_1) must be
        reset and the interrupt line released (by setting the corresponding
        bit of the interrupt status register to 1) before enabling an
        interrupt for the GPIO channel in the interrupt-enable register
        (GPIOi.GPIO_IRQSTATUS_SET_0 or GPIOi.GPIO_IRQSTATUS_SET_1) to prevent
        the occurrence of unexpected interrupts when enabling an interrupt
        for the GPIO channel.
      
      However, this does not appear to be a practical problem.
      
      Further, as reported by Grygorii Strashko <grygorii.strashko@ti.com>,
      the TI Android kernel tree has an earlier similar patch as "GPIO: OMAP:
      Fix the sequence to clear the IRQ status" saying:
      
       if the status is cleared after disabling the IRQ then sWAKEUP will not
       be cleared and gates the module transition
      
      When we unmask the level interrupt after the interrupt has been handled,
      enable the interrupt and only then clear the interrupt. If the interrupt
      is still pending, the hardware will re-assert the interrupt status.
      
      Should the caution note in the TRM prove to be a problem, we could
      use a clear-enable-clear sequence instead.
      
      Cc: Aaro Koskinen <aaro.koskinen@iki.fi>
      Cc: Keerthy <j-keerthy@ti.com>
      Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
      Signed-off-by: default avatarRussell King <rmk+kernel@armlinux.org.uk>
      [tony@atomide.com: updated comments based on an earlier TI patch]
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      Acked-by: default avatarGrygorii Strashko <grygorii.strashko@ti.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      d01849f7
    • Axel Lin's avatar
      gpio: amd-fch: Set proper output level for direction_output · f777cda3
      Axel Lin authored
      Current amd_fch_gpio_direction_output implementation ignores the value
      argument, fix it so direction_output will set proper output level.
      Signed-off-by: default avatarAxel Lin <axel.lin@ingics.com>
      Reviewed-by: default avatarAndy Shevchenko <andy.shevchenko@gmail.com>
      Reviewed-by: default avatarEnrico Weigelt <info@metux.net>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      f777cda3
    • Arnd Bergmann's avatar
      x86: apuv2: remove unused variable · deb63b0b
      Arnd Bergmann authored
      The driver was newly introduced but the version that got merged
      produces a harmless compiler warning:
      
      drivers/platform/x86/pcengines-apuv2.c: In function 'apu_board_init':
      drivers/platform/x86/pcengines-apuv2.c:211:6: error: unused variable 'rc' [-Werror=unused-variable]
      
      Remove the evidently useless variable.
      
      Fixes: f8eb0235 ("x86: pcengines apuv2 gpio/leds/keys platform driver")
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Reviewed-By: default avatarEnrico Weigelt, metux IT consult <info@metux.net>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      deb63b0b
    • Andy Shevchenko's avatar
      gpio: pca953x: Use PCA_LATCH_INT · 2870b3c5
      Andy Shevchenko authored
      The commit 0cdf21b3
      
        ("gpio: pca953x: set the PCA_PCAL flag also when matching by DT")
      
      introduces a helper macro which tells that chip supports latched interrupts,
      but the macro was never used for ACPI or legacy enumeration.
      
      So, make use of it for legacy and ACPI enumeration.
      
      Cc: H. Nikolaus Schaller <hns@goldelico.com>
      Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      2870b3c5
    • Randy Dunlap's avatar
      platform/x86: fix PCENGINES_APU2 Kconfig warning · a422bf11
      Randy Dunlap authored
      Fix Kconfig warning for PCENGINES_APU2 symbol:
      
      WARNING: unmet direct dependencies detected for KEYBOARD_GPIO_POLLED
        Depends on [n]: !UML && INPUT [=y] && INPUT_KEYBOARD [=n] && GPIOLIB [=y]
        Selected by [y]:
        - PCENGINES_APU2 [=y] && X86 [=y] && X86_PLATFORM_DEVICES [=y]
      
      Add INPUT_KEYBOARD dependency for KEYBOARD_GPIO_POLLED.
      Add LEDS_CLASS dependency for LEDS_GPIO.
      
      Fixes: f8eb0235 ("x86: pcengines apuv2 gpio/leds/keys platform driver")
      Reported-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Cc: Enrico Weigelt, metux IT consult <info@metux.net>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      a422bf11
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · b5dd0c65
      Linus Torvalds authored
      Merge more updates from Andrew Morton:
      
       - some of the rest of MM
      
       - various misc things
      
       - dynamic-debug updates
      
       - checkpatch
      
       - some epoll speedups
      
       - autofs
      
       - rapidio
      
       - lib/, lib/lzo/ updates
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (83 commits)
        samples/mic/mpssd/mpssd.h: remove duplicate header
        kernel/fork.c: remove duplicated include
        include/linux/relay.h: fix percpu annotation in struct rchan
        arch/nios2/mm/fault.c: remove duplicate include
        unicore32: stop printing the virtual memory layout
        MAINTAINERS: fix GTA02 entry and mark as orphan
        mm: create the new vm_fault_t type
        arm, s390, unicore32: remove oneliner wrappers for memblock_alloc()
        arch: simplify several early memory allocations
        openrisc: simplify pte_alloc_one_kernel()
        sh: prefer memblock APIs returning virtual address
        microblaze: prefer memblock API returning virtual address
        powerpc: prefer memblock APIs returning virtual address
        lib/lzo: separate lzo-rle from lzo
        lib/lzo: implement run-length encoding
        lib/lzo: fast 8-byte copy on arm64
        lib/lzo: 64-bit CTZ on arm64
        lib/lzo: tidy-up ifdefs
        ipc/sem.c: replace kvmalloc/memset with kvzalloc and use struct_size
        ipc: annotate implicit fall through
        ...
      b5dd0c65