1. 09 Jul, 2019 2 commits
  2. 24 Jun, 2019 1 commit
    • Jens Axboe's avatar
      io_uring: add support for sqe links · 9e645e11
      Jens Axboe authored
      With SQE links, we can create chains of dependent SQEs. One example
      would be queueing an SQE that's a read from one file descriptor, with
      the linked SQE being a write to another with the same set of buffers.
      
      An SQE link will not stall the pipeline, it'll just ensure that
      dependent SQEs aren't issued before the previous link has completed.
      
      Any error at submission or completion time will break the chain of SQEs.
      For completions, this also includes short reads or writes, as the next
      SQE could depend on the previous one being fully completed.
      
      Any SQE in a chain that gets canceled due to any of the above errors,
      will get an CQE fill with -ECANCELED as the error value.
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      9e645e11
  3. 31 May, 2019 11 commits
  4. 29 May, 2019 3 commits
  5. 27 May, 2019 2 commits
    • Jan Kara's avatar
      block: Don't revalidate bdev of hidden gendisk · 31cb1d64
      Jan Kara authored
      When hidden gendisk is revalidated, there's no point in revalidating
      associated block device as there's none. We would thus just create new
      bdev inode, report "detected capacity change from 0 to XXX" message and
      evict the bdev inode again. Avoid this pointless dance and confusing
      message in the kernel log.
      Reviewed-by: default avatarHannes Reinecke <hare@suse.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJan Kara <jack@suse.cz>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      31cb1d64
    • Jan Kara's avatar
      loop: Don't change loop device under exclusive opener · 33ec3e53
      Jan Kara authored
      Loop module allows calling LOOP_SET_FD while there are other openers of
      the loop device. Even exclusive ones. This can lead to weird
      consequences such as kernel deadlocks like:
      
      mount_bdev()				lo_ioctl()
        udf_fill_super()
          udf_load_vrs()
            sb_set_blocksize() - sets desired block size B
            udf_tread()
              sb_bread()
                __bread_gfp(bdev, block, B)
      					  loop_set_fd()
      					    set_blocksize()
                  - now __getblk_slow() indefinitely loops because B != bdev
                    block size
      
      Fix the problem by disallowing LOOP_SET_FD ioctl when there are
      exclusive openers of a loop device.
      
      [Deliberately chosen not to CC stable as a user with priviledges to
      trigger this race has other means of taking the system down and this
      has a potential of breaking some weird userspace setup]
      
      Reported-and-tested-by: syzbot+10007d66ca02b08f0e60@syzkaller.appspotmail.com
      Signed-off-by: default avatarJan Kara <jack@suse.cz>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      33ec3e53
  6. 26 May, 2019 1 commit
  7. 25 May, 2019 5 commits
  8. 24 May, 2019 15 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus-20190524' of git://git.kernel.dk/linux-block · 7fbc78e3
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
      
       - NVMe pull request from Keith, with fixes from a few folks.
      
       - bio and sbitmap before atomic barrier fixes (Andrea)
      
       - Hang fix for blk-mq freeze and unfreeze (Bob)
      
       - Single segment count regression fix (Christoph)
      
       - AoE now has a new maintainer
      
       - tools/io_uring/ Makefile fix, and sync with liburing (me)
      
      * tag 'for-linus-20190524' of git://git.kernel.dk/linux-block: (23 commits)
        tools/io_uring: sync with liburing
        tools/io_uring: fix Makefile for pthread library link
        blk-mq: fix hang caused by freeze/unfreeze sequence
        block: remove the bi_seg_{front,back}_size fields in struct bio
        block: remove the segment size check in bio_will_gap
        block: force an unlimited segment size on queues with a virt boundary
        block: don't decrement nr_phys_segments for physically contigous segments
        sbitmap: fix improper use of smp_mb__before_atomic()
        bio: fix improper use of smp_mb__before_atomic()
        aoe: list new maintainer for aoe driver
        nvme-pci: use blk-mq mapping for unmanaged irqs
        nvme: update MAINTAINERS
        nvme: copy MTFA field from identify controller
        nvme: fix memory leak for power latency tolerance
        nvme: release namespace SRCU protection before performing controller ioctls
        nvme: merge nvme_ns_ioctl into nvme_ioctl
        nvme: remove the ifdef around nvme_nvm_ioctl
        nvme: fix srcu locking on error return in nvme_get_ns_from_disk
        nvme: Fix known effects
        nvme-pci: Sync queues on reset
        ...
      7fbc78e3
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-5.2-rc2' of... · 7f8b40e3
      Linus Torvalds authored
      Merge tag 'linux-kselftest-5.2-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull Kselftest fixes from Shuah Khan:
      
       - Two fixes to regressions introduced in kselftest Makefile test run
         output refactoring work (Kees Cook)
      
       - Adding Atom support to syscall_arg_fault test (Tong Bo)
      
      * tag 'linux-kselftest-5.2-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests/timers: Add missing fflush(stdout) calls
        selftests: Remove forced unbuffering for test running
        selftests/x86: Support Atom for syscall_arg_fault test
      7f8b40e3
    • Linus Torvalds's avatar
      Merge tag 'devicetree-fixes-for-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · e7bd3e24
      Linus Torvalds authored
      Pull Devicetree fixes from Rob Herring:
      
       - Update checkpatch.pl to use DT vendor-prefixes.yaml
      
       - Fix DT binding references to files converted to DT schema
      
       - Clean-up Arm CPU binding examples to match schema
      
       - Add Sifive block versioning scheme documentation
      
       - Pass binding directory base to validation tools for reference lookups
      
      * tag 'devicetree-fixes-for-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
        checkpatch.pl: Update DT vendor prefix check
        dt: bindings: mtd: replace references to nand.txt with nand-controller.yaml
        dt-bindings: interrupt-controller: arm,gic: Fix schema errors in example
        dt-bindings: arm: Clean up CPU binding examples
        dt: fix refs that were renamed to json with the same file name
        dt-bindings: Pass binding directory to validation tools
        dt-bindings: sifive: describe sifive-blocks versioning
      e7bd3e24
    • Linus Torvalds's avatar
      Merge tag 'spdx-5.2-rc2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core · 86c2f5d6
      Linus Torvalds authored
      Pule more SPDX updates from Greg KH:
       "Here is another set of reviewed patches that adds SPDX tags to
        different kernel files, based on a set of rules that are being used to
        parse the comments to try to determine that the license of the file is
        "GPL-2.0-or-later".
      
        Only the "obvious" versions of these matches are included here, a
        number of "non-obvious" variants of text have been found but those
        have been postponed for later review and analysis.
      
        These patches have been out for review on the linux-spdx@vger mailing
        list, and while they were created by automatic tools, they were
        hand-verified by a bunch of different people, all whom names are on
        the patches are reviewers"
      
      * tag 'spdx-5.2-rc2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (85 commits)
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 125
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 123
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 122
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 121
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 120
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 119
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 116
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 114
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 113
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 112
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 111
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 110
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 106
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 105
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 104
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 103
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 102
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 101
        treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 98
        ...
      86c2f5d6
    • Waiman Long's avatar
      locking/lock_events: Use this_cpu_add() when necessary · 51816e9e
      Waiman Long authored
      The kernel test robot has reported that the use of __this_cpu_add()
      causes bug messages like:
      
        BUG: using __this_cpu_add() in preemptible [00000000] code: ...
      
      Given the imprecise nature of the count and the possibility of resetting
      the count and doing the measurement again, this is not really a big
      problem to use the unprotected __this_cpu_*() functions.
      
      To make the preemption checking code happy, the this_cpu_*() functions
      will be used if CONFIG_DEBUG_PREEMPT is defined.
      
      The imprecise nature of the locking counts are also documented with
      the suggestion that we should run the measurement a few times with the
      counts reset in between to get a better picture of what is going on
      under the hood.
      
      Fixes: a8654596 ("locking/rwsem: Enable lock event counting")
      Suggested-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarWaiman Long <longman@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      51816e9e
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 0a72ef89
      Linus Torvalds authored
      Pull more arm64 fixes from Will Deacon:
      
       - Fix incorrect LDADD instruction encoding in our disassembly macros
      
       - Disable the broken ARM64_PSEUDO_NMI support for now
      
       - Add workaround for Cortex-A76 CPU erratum #1463225
      
       - Handle Cortex-A76/Neoverse-N1 erratum #1418040 w/ existing workaround
      
       - Fix IORT build failure if IOMMU_SUPPORT=n
      
       - Fix place-relative module relocation range checking and its
         interaction with KASLR
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: insn: Add BUILD_BUG_ON() for invalid masks
        arm64: insn: Fix ldadd instruction encoding
        arm64: Kconfig: Make ARM64_PSEUDO_NMI depend on BROKEN for now
        arm64: Handle erratum 1418040 as a superset of erratum 1188873
        arm64/module: deal with ambiguity in PRELxx relocation ranges
        ACPI/IORT: Fix build error when IOMMU_SUPPORT is disabled
        arm64/kernel: kaslr: reduce module randomization range to 2 GB
        arm64: errata: Add workaround for Cortex-A76 erratum #1463225
        arm64: Remove useless message during oops
      0a72ef89
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v5.2-2' of git://git.infradead.org/linux-platform-drivers-x86 · c50bbf61
      Linus Torvalds authored
      Pull x86 platform driver fixes from Andy Shevchenko:
       "Some of Intel Cherrytrail based platforms depend on PMC clock to be
        always on. Here are a couple of quirks to the driver to support
        affected hardware"
      
      * tag 'platform-drivers-x86-v5.2-2' of git://git.infradead.org/linux-platform-drivers-x86:
        platform/x86: pmc_atom: Add several Beckhoff Automation boards to critclk_systems DMI table
        platform/x86: pmc_atom: Add Lex 3I380D industrial PC to critclk_systems DMI table
      c50bbf61
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal · 49bbd8bb
      Linus Torvalds authored
      Pull thermal SoC fixes from Eduardo Valentin:
      
       - revert pinctrl settings on rockchip which causes boot failure on
         rk3288. The proper follow-up patch is being discussed, meanwhile
         the revert gets those booting again.
      
       - minor fixes on rcar and tegra
      
      * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal:
        thermal: rcar_gen3_thermal: Update temperature conversion method
        thermal: rcar_gen3_thermal: Update calculation formula of IRQTEMP
        thermal: rcar_gen3_thermal: Update value of Tj_1
        thermal: tegra: Make tegra210_tsensor_thermtrips static
        Revert "thermal: rockchip: fix up the tsadc pinctrl setting error"
      49bbd8bb
    • Linus Torvalds's avatar
      Merge tag 'mmc-v5.2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · e50e6798
      Linus Torvalds authored
      Pull MMC fixes from Ulf Hansson:
       "Fix HS50 data hold time problem for a few variants of sdhci-iproc"
      
      * tag 'mmc-v5.2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
        mmc: sdhci-iproc: Set NO_HISPD bit to fix HS50 data hold time problem
        mmc: sdhci-iproc: cygnus: Set NO_HISPD bit to fix HS50 data hold time problem
      e50e6798
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2019-05-24-1' of git://anongit.freedesktop.org/drm/drm · a3b25d15
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Nothing too unusual here for rc2. Except the amdgpu DMCU firmware
        loading fix caused build breakage with a different set of Kconfig
        options. I've just reverted it for now until the AMD folks can rewrite
        it to avoid that problem.
      
        i915:
         - boosting fix
         - bump ready task fixes
         - GVT - reset fix, error return, TRTT handling fix
      
        amdgpu:
         - DMCU firmware loading fix
         - Polaris 10 pci id for kfd
         - picasso screen corruption fix
         - SR-IOV fixes
         - vega driver reload fixes
         - SMU locking fix
         - compute profile fix for kfd
      
        vmwgfx:
         - integer overflow fixes
         - dma sg fix
      
        sun4i:
         - HDMI phy fixes
      
        gma500:
         - LVDS detection fix
      
        panfrost:
         - devfreq selection fix"
      
      * tag 'drm-fixes-2019-05-24-1' of git://anongit.freedesktop.org/drm/drm: (32 commits)
        Revert "drm/amd/display: Don't load DMCU for Raven 1"
        drm/panfrost: Select devfreq
        drm/gma500/cdv: Check vbt config bits when detecting lvds panels
        drm/vmwgfx: integer underflow in vmw_cmd_dx_set_shader() leading to an invalid read
        drm/vmwgfx: NULL pointer dereference from vmw_cmd_dx_view_define()
        drm/vmwgfx: Use the dma scatter-gather iterator to get dma addresses
        drm/vmwgfx: Fix compat mode shader operation
        drm/vmwgfx: Fix user space handle equal to zero
        drm/vmwgfx: Don't send drm sysfs hotplug events on initial master set
        drm/i915/gvt: Fix an error code in ppgtt_populate_spt_by_guest_entry()
        drm/i915/gvt: do not let TRTTE and 0x4dfc write passthrough to hardware
        drm/i915/gvt: add 0x4dfc to gen9 save-restore list
        drm/i915/gvt: Tiled Resources mmios are in-context mmios for gen9+
        drm/i915/gvt: use cmd to restore in-context mmios to hw for gen9 platform
        drm/i915/gvt: emit init breadcrumb for gvt request
        drm/amdkfd: Fix compute profile switching
        drm/amdgpu: skip fw pri bo alloc for SRIOV
        drm/amd/powerplay: fix locking in smu_feature_set_supported()
        drm/amdgpu/gmc9: set vram_width properly for SR-IOV
        drm/amdgpu/soc15: skip reset on init
        ...
      a3b25d15
    • Thomas Gleixner's avatar
      treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 125 · 060358de
      Thomas Gleixner authored
      Based on 1 normalized pattern(s):
      
        osl gpl code release authorized by [jalil] [fadavi] this program is
        free software you can redistribute it and or modify it under the
        terms of the gnu general public license as published by the free
        software foundation either version 2 or at your option any later
        version this program is distributed in the hope that it will be
        useful but without any warranty without even the implied warranty of
        merchantability or fitness for a particular purpose see the gnu
        general public license for more details you should have received a
        copy of the gnu general public license along with this program see
        the file copying if not write to the free software foundation 675
        mass ave cambridge ma 02139 usa
      
      extracted by the scancode license scanner the SPDX license identifier
      
        GPL-2.0-or-later
      
      has been chosen to replace the boilerplate/reference in 1 file(s).
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Reviewed-by: default avatarAllison Randal <allison@lohutok.net>
      Reviewed-by: default avatarRichard Fontana <rfontana@redhat.com>
      Cc: linux-spdx@vger.kernel.org
      Link: https://lkml.kernel.org/r/20190523091651.689335553@linutronix.deSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      060358de
    • Thomas Gleixner's avatar
      treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 123 · 9dd0abd2
      Thomas Gleixner authored
      Based on 1 normalized pattern(s):
      
        this program is free software you can redistribute it and or modify
        it under the terms and conditions of the gnu general public license
        version 2 or later as published by the free software foundation this
        program is distributed in the hope that it will be useful but
        without any warranty without even the implied warranty of
        merchantability or fitness for a particular purpose see the gnu
        general public license for more details you should have received a
        copy of the gnu general public license along with this program if
        not see http www gnu org licenses
      
      extracted by the scancode license scanner the SPDX license identifier
      
        GPL-2.0-or-later
      
      has been chosen to replace the boilerplate/reference in 7 file(s).
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Reviewed-by: default avatarRichard Fontana <rfontana@redhat.com>
      Reviewed-by: default avatarAllison Randal <allison@lohutok.net>
      Cc: linux-spdx@vger.kernel.org
      Link: https://lkml.kernel.org/r/20190523091651.504392586@linutronix.deSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      9dd0abd2
    • Thomas Gleixner's avatar
      treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 122 · 236b83a3
      Thomas Gleixner authored
      Based on 1 normalized pattern(s):
      
        this program is free software you can redistribute it and or modify
        it under the terms of the gnu general public license version 2 or at
        your option any later version this program is distributed in the
        hope that it will be useful but without any warranty without even
        the implied warranty of merchantability or fitness for a particular
        purpose see the gnu general public license for more details
      
      extracted by the scancode license scanner the SPDX license identifier
      
        GPL-2.0-or-later
      
      has been chosen to replace the boilerplate/reference in 2 file(s).
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Reviewed-by: default avatarAllison Randal <allison@lohutok.net>
      Reviewed-by: default avatarRichard Fontana <rfontana@redhat.com>
      Cc: linux-spdx@vger.kernel.org
      Link: https://lkml.kernel.org/r/20190523091651.414247666@linutronix.deSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      236b83a3
    • Thomas Gleixner's avatar
      treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 121 · 10145f7c
      Thomas Gleixner authored
      Based on 1 normalized pattern(s):
      
        licensed under the gplv2 or at your option any later version
      
      extracted by the scancode license scanner the SPDX license identifier
      
        GPL-2.0-or-later
      
      has been chosen to replace the boilerplate/reference in 1 file(s).
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Reviewed-by: default avatarAllison Randal <allison@lohutok.net>
      Reviewed-by: default avatarRichard Fontana <rfontana@redhat.com>
      Cc: linux-spdx@vger.kernel.org
      Link: https://lkml.kernel.org/r/20190523091651.323272658@linutronix.deSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      10145f7c
    • Thomas Gleixner's avatar
      treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 120 · 588cb88c
      Thomas Gleixner authored
      Based on 1 normalized pattern(s):
      
        this program is free software you can redistribute it and or modify
        it under the terms of the gnu general public license as published by
        the free software foundation either version 2 of the license or at
        your option any later version this program is distributed in the
        hope that it will be useful but without any warranty without even
        the implied warranty of merchantability or fitness for a particular
        purpose see the gnu general public license for more details you
        should have received a copy of the gnu general public license along
        with this program if not see the file copying or write to the free
        software foundation inc
      
      extracted by the scancode license scanner the SPDX license identifier
      
        GPL-2.0-or-later
      
      has been chosen to replace the boilerplate/reference in 12 file(s).
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Reviewed-by: default avatarRichard Fontana <rfontana@redhat.com>
      Reviewed-by: default avatarAllison Randal <allison@lohutok.net>
      Cc: linux-spdx@vger.kernel.org
      Link: https://lkml.kernel.org/r/20190523091651.231300438@linutronix.deSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      588cb88c