Skip to content
  1. Apr 10, 2021
    • Linus Torvalds's avatar
      Merge tag 'io_uring-5.12-2021-04-09' of git://git.kernel.dk/linux-block · 3b978435
      Linus Torvalds authored
      Pull io_uring fixes from Jens Axboe:
       "Two minor fixups for the reissue logic, and one for making sure that
        unbounded work is canceled on io-wq exit"
      
      * tag 'io_uring-5.12-2021-04-09' of git://git.kernel.dk/linux-block:
        io-wq: cancel unbounded works on io-wq destroy
        io_uring: fix rw req completion
        io_uring: clear F_REISSUE right after getting it
      3b978435
    • Linus Torvalds's avatar
      Merge tag 'devicetree-fixes-for-5.12-2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · a2521822
      Linus Torvalds authored
      Pull devicetree fixes from Rob Herring:
      
       - Fix fw_devlink failure with ".*,nr-gpios" properties
      
       - Doc link reference fixes from Mauro
      
       - Fixes for unaligned FDT handling found on OpenRisc. First, avoid
         crash with better error handling when unflattening an unaligned FDT.
         Second, fix memory allocations for FDTs to ensure alignment.
      
      * tag 'devicetree-fixes-for-5.12-2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
        of: property: fw_devlink: do not link ".*,nr-gpios"
        dt-bindings:iio:adc: update motorola,cpcap-adc.yaml reference
        dt-bindings: fix references for iio-bindings.txt
        dt-bindings: don't use ../dir for doc references
        of: unittest: overlay: ensure proper alignment of copied FDT
        of: properly check for error returned by fdt_get_name()
      a2521822
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2021-04-10' of git://anongit.freedesktop.org/drm/drm · a85f165e
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Was relatively quiet this week, but still a few pulls came in, pretty
        much small fixes across the board, a couple of regression fixes in the
        amdgpu/radeon code, msm has a few minor fixes across the board, a
        panel regression fix also.
      
        amdgpu:
         - DCN3 fix
         - Fix CAC setting regression for TOPAZ
         - Fix ttm regression
      
        radeon:
         - Fix ttm regression
      
        msm:
         - a5xx/a6xx timestamp fix
         - microcode version check
         - fail path fix
         - block programming fix
         - error removal fix
      
        i915:
         - Fix invalid access to ACPI _DSM objects
      
        xen:
         - Fix use-after-free in xen
         - minor duplicate defintion cleanup
      
        vc4:
         - Reduce fifo threshold on hvs4 to fix a fifo full error
         - minor redunantant assignment cleanup
      
        panel:
         - Disable TE support for Droid4 and N950"
      
      * tag 'drm-fixes-2021-04-10' of git://anongit.freedesktop.org/drm/drm:
        drm/vc4: crtc: Reduce PV fifo threshold on hvs4
        drm/vc4: plane: Remove redundant assignment
        drm/amdgpu/smu7: fix CAC setting on TOPAZ
        drm/radeon: Fix size overflow
        drm/amdgpu: Fix size overflow
        drm/i915: Fix invalid access to ACPI _DSM objects
        drm/amd/display: Add missing mask for DCN3
        drm/panel: panel-dsi-cm: disable TE for now
        drm/msm/disp/dpu1: program 3d_merge only if block is attached
        drm/msm: a6xx: fix version check for the A650 SQE microcode
        drm/msm: Fix a5xx/a6xx timestamps
        drm/msm: Fix removal of valid error case when checking speed_bin
        drm/msm: Set drvdata to NULL when msm_drm_init() fails
        drivers: gpu: drm: xen_drm_front_drm_info is declared twice
        gpu/xen: Fix a use after free in xen_drm_drv_init
      a85f165e
    • Ilya Lipnitskiy's avatar
      of: property: fw_devlink: do not link ".*,nr-gpios" · d473d32c
      Ilya Lipnitskiy authored
      [<vendor>,]nr-gpios property is used by some GPIO drivers[0] to indicate
      the number of GPIOs present on a system, not define a GPIO. nr-gpios is
      not configured by #gpio-cells and can't be parsed along with other
      "*-gpios" properties.
      
      nr-gpios without the "<vendor>," prefix is not allowed by the DT
      spec[1], so only add exception for the ",nr-gpios" suffix and let the
      error message continue being printed for non-compliant implementations.
      
      [0] nr-gpios is referenced in Documentation/devicetree/bindings/gpio:
       - gpio-adnp.txt
       - gpio-xgene-sb.txt
       - gpio-xlp.txt
       - snps,dw-apb-gpio.yaml
      
      [1] Link: https://github.com/devicetree-org/dt-schema/blob/cb53a16a1eb3e2169ce170c071e47940845ec26e/schemas/gpio/gpio-consumer.yaml#L20
      
      Fixes errors such as:
        OF: /palmbus@300000/gpio@600: could not find phandle
      
      Fixes: 7f00be96
      
       ("of: property: Add device link support for interrupt-parent, dmas and -gpio(s)")
      Signed-off-by: default avatarIlya Lipnitskiy <ilya.lipnitskiy@gmail.com>
      Cc: Saravana Kannan <saravanak@google.com>
      Cc: stable@vger.kernel.org # v5.5+
      Link: https://lore.kernel.org/r/20210405222540.18145-1-ilya.lipnitskiy@gmail.com
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      d473d32c
    • Mauro Carvalho Chehab's avatar
      dt-bindings:iio:adc: update motorola,cpcap-adc.yaml reference · 21d6ff39
      Mauro Carvalho Chehab authored
      Changeset 1ca9d1b1 ("dt-bindings:iio:adc:motorola,cpcap-adc yaml conversion")
      renamed: Documentation/devicetree/bindings/iio/adc/cpcap-adc.txt
      to: Documentation/devicetree/bindings/iio/adc/motorola,cpcap-adc.yaml.
      
      Update its cross-reference accordingly.
      
      Fixes: 1ca9d1b1
      
       ("dt-bindings:iio:adc:motorola,cpcap-adc yaml conversion")
      Acked-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
      Link: https://lore.kernel.org/r/3e205e5fa701e4bc15d39d6ac1f57717df2bb4c6.1617972339.git.mchehab+huawei@kernel.org
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      21d6ff39
    • Mauro Carvalho Chehab's avatar
      dt-bindings: fix references for iio-bindings.txt · 8235ef15
      Mauro Carvalho Chehab authored
      The iio-bindings.txt was converted into two files and merged
      at the dt-schema git tree at:
      
      	https://github.com/devicetree-org/dt-schema
      
      Yet, some documents still refer to the old file. Fix their
      references, in order to point to the right URL.
      
      Fixes: dba91f82
      
       ("dt-bindings:iio:iio-binding.txt Drop file as content now in dt-schema")
      Acked-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
      Acked-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
      Link: https://lore.kernel.org/r/4efd81eca266ca0875d3bf9d1672097444146c69.1617972339.git.mchehab+huawei@kernel.org
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      8235ef15
    • Mauro Carvalho Chehab's avatar
      dt-bindings: don't use ../dir for doc references · f6d6c699
      Mauro Carvalho Chehab authored
      
      
      As documents have been renamed and moved around, their
      references will break, but this will be unnoticed, as the
      script which checks for it won't handle "../" references.
      
      So, replace them by the full patch.
      
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
      Link: https://lore.kernel.org/r/68d3a1244119d1f2829c375b0ef554cf348bc89f.1617972339.git.mchehab+huawei@kernel.org
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      f6d6c699
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2021-04-09' of... · bd119f47
      Dave Airlie authored
      
      Merge tag 'drm-intel-fixes-2021-04-09' of git://anongit.freedesktop.org/drm/drm-intel into drm-fixes
      
      - Fix invalid access to ACPI _DSM objects (Takashi)
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/YHAW6NInrybUoat6@intel.com
      bd119f47
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2021-04-09' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes · d416bd0b
      Dave Airlie authored
      
      
      drm-misc-fixes for v5.12-rc7:
      - Fix use-after-free in xen.
      - Reduce fifo threshold on hvs4 to fix a fifo full error.
      - Disable TE support for Droid4 and N950.
      - Small compiler fixes.
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/e7647dd9-60c3-9dfd-a377-89d717212e13@linux.intel.com
      d416bd0b
    • Linus Torvalds's avatar
      Merge tag 'selinux-pr-20210409' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux · 60144b23
      Linus Torvalds authored
      Pull selinux fixes from Paul Moore:
       "Three SELinux fixes.
      
        These fix known problems relating to (re)loading SELinux policy or
        changing the policy booleans, and pass our test suite without problem"
      
      * tag 'selinux-pr-20210409' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:
        selinux: fix race between old and new sidtab
        selinux: fix cond_list corruption when changing booleans
        selinux: make nslot handling in avtab more robust
      60144b23
    • Linus Torvalds's avatar
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · 189fefc7
      Linus Torvalds authored
      Pull vdpa/mlx5 fixes from Michael Tsirkin:
       "Last minute fixes.
      
        These all look like something we are better off having
        than not ..."
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        vdpa/mlx5: Fix suspend/resume index restoration
        vdpa/mlx5: Fix wrong use of bit numbers
        vdpa/mlx5: Retrieve BAR address suitable any function
        vdpa/mlx5: Use the correct dma device when registering memory
        vdpa/mlx5: should exclude header length and fcs from mtu
      189fefc7
    • Linus Torvalds's avatar
      Merge tag 'rproc-v5.12-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc · 3766fcf5
      Linus Torvalds authored
      Pull remoteproc fixes from Bjorn Andersson:
       "This fixes an issue with firmware loading on the TI K3 PRU, fixes
        compatibility with GNU binutils for the same and resolves link error
        due to a 64-bit division in the Qualcomm PIL info.
      
        It also recognizes Mathieu Poirier as co-maintainer of the remoteproc
        and rpmsg subsystems"
      
      * tag 'rproc-v5.12-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc:
        remoteproc: pru: Fix firmware loading crashes on K3 SoCs
        remoteproc: pru: Fix loading of GNU Binutils ELF
        MAINTAINERS: Add co-maintainer for remoteproc/RPMSG subsystems
        remoteproc: qcom: pil_info: avoid 64-bit division
      3766fcf5
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.12b-rc7-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 0b760887
      Linus Torvalds authored
      Pull xen fix from Juergen Gross:
       "A single fix of a 5.12 patch for the rather uncommon problem of
        running as a Xen guest with a real time kernel config"
      
      * tag 'for-linus-5.12b-rc7-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/evtchn: Change irq_info lock to raw_spinlock_t
      0b760887
    • Linus Torvalds's avatar
      Merge tag 'acpi-5.12-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · ccd6c35c
      Linus Torvalds authored
      Pull ACPI fix from Rafael Wysocki:
       "Fix a build issue introduced by a previous fix in the ACPI processor
        driver (Vitaly Kuznetsov)"
      
      * tag 'acpi-5.12-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: processor: Fix build when CONFIG_ACPI_PROCESSOR=m
      ccd6c35c
    • Eli Cohen's avatar
      vdpa/mlx5: Fix suspend/resume index restoration · bc04d93e
      Eli Cohen authored
      When we suspend the VM, the VDPA interface will be reset. When the VM is
      resumed again, clear_virtqueues() will clear the available and used
      indices resulting in hardware virqtqueue objects becoming out of sync.
      We can avoid this function alltogether since qemu will clear them if
      required, e.g. when the VM went through a reboot.
      
      Moreover, since the hw available and used indices should always be
      identical on query and should be restored to the same value same value
      for virtqueues that complete in order, we set the single value provided
      by set_vq_state(). In get_vq_state() we return the value of hardware
      used index.
      
      Fixes: b35ccebe ("vdpa/mlx5: Restore the hardware used index after change map")
      Fixes: 1a86b377
      
       ("vdpa/mlx5: Add VDPA driver for supported mlx5 devices")
      Signed-off-by: default avatarEli Cohen <elic@nvidia.com>
      Link: https://lore.kernel.org/r/20210408091047.4269-6-elic@nvidia.com
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Acked-by: default avatarJason Wang <jasowang@redhat.com>
      bc04d93e
    • Eli Cohen's avatar
      vdpa/mlx5: Fix wrong use of bit numbers · 4b454a82
      Eli Cohen authored
      VIRTIO_F_VERSION_1 is a bit number. Use BIT_ULL() with mask
      conditionals.
      
      Also, in mlx5_vdpa_is_little_endian() use BIT_ULL for consistency with
      the rest of the code.
      
      Fixes: 1a86b377
      
       ("vdpa/mlx5: Add VDPA driver for supported mlx5 devices")
      Signed-off-by: default avatarEli Cohen <elic@nvidia.com>
      Link: https://lore.kernel.org/r/20210408091047.4269-5-elic@nvidia.com
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Acked-by: default avatarJason Wang <jasowang@redhat.com>
      4b454a82
    • Eli Cohen's avatar
      vdpa/mlx5: Retrieve BAR address suitable any function · b2ae0a2d
      Eli Cohen authored
      struct mlx5_core_dev has a bar_addr field that contains the correct bar
      address for the function regardless of whether it is pci function or sub
      function. Use it.
      
      Fixes: 1958fc2f
      
       ("net/mlx5: SF, Add auxiliary device driver")
      Signed-off-by: default avatarEli Cohen <elic@nvidia.com>
      Reviewed-by: default avatarParav Pandit <parav@nvidia.com>
      Link: https://lore.kernel.org/r/20210408091047.4269-4-elic@nvidia.com
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Acked-by: default avatarJason Wang <jasowang@redhat.com>
      b2ae0a2d
    • Eli Cohen's avatar
      vdpa/mlx5: Use the correct dma device when registering memory · d13a15d5
      Eli Cohen authored
      In cases where the vdpa instance uses a SF (sub function), the DMA
      device is the parent device. Use a function to retrieve the correct DMA
      device.
      
      Fixes: 1958fc2f
      
       ("net/mlx5: SF, Add auxiliary device driver")
      Signed-off-by: default avatarEli Cohen <elic@nvidia.com>
      Reviewed-by: default avatarParav Pandit <parav@nvidia.com>
      Link: https://lore.kernel.org/r/20210408091047.4269-3-elic@nvidia.com
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Acked-by: default avatarJason Wang <jasowang@redhat.com>
      d13a15d5
    • Si-Wei Liu's avatar
      vdpa/mlx5: should exclude header length and fcs from mtu · d084d996
      Si-Wei Liu authored
      When feature VIRTIO_NET_F_MTU is negotiated on mlx5_vdpa,
      22 extra bytes worth of MTU length is shown in guest.
      This is because the mlx5_query_port_max_mtu API returns
      the "hardware" MTU value, which does not just contain the
       Ethernet payload, but includes extra lengths starting
      from the Ethernet header up to the FCS altogether.
      
      Fix the MTU so packets won't get dropped silently.
      
      Fixes: 1a86b377
      
       ("vdpa/mlx5: Add VDPA driver for supported mlx5 devices")
      Signed-off-by: default avatarSi-Wei Liu <si-wei.liu@oracle.com>
      Acked-by: default avatarJason Wang <jasowang@redhat.com>
      Acked-by: default avatarEli Cohen <elic@nvidia.com>
      Link: https://lore.kernel.org/r/20210408091047.4269-2-elic@nvidia.com
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      d084d996
    • Hans de Goede's avatar
      Bluetooth: btusb: Revert Fix the autosuspend enable and disable · 89591522
      Hans de Goede authored
      drivers/usb/core/hub.c: usb_new_device() contains the following:
      
              /* By default, forbid autosuspend for all devices.  It will be
               * allowed for hubs during binding.
               */
              usb_disable_autosuspend(udev);
      
      So for anything which is not a hub, such as btusb devices, autosuspend is
      disabled by default and we must call usb_enable_autosuspend(udev) to
      enable it.
      
      This means that the "Fix the autosuspend enable and disable" commit,
      which drops the usb_enable_autosuspend() call when the enable_autosuspend
      module option is true, is completely wrong, revert it.
      
      This reverts commit 7bd9fb05.
      
      Cc: Hui Wang <hui.wang@canonical.com>
      Fixes: 7bd9fb05
      
       ("Bluetooth: btusb: Fix the autosuspend enable and disable")
      Acked-by: default avatarHui Wang <hui.wang@canonical.com>
      Acked-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      89591522
  2. Apr 09, 2021
    • Linus Torvalds's avatar
      Merge tag '5.12-rc6-smb3' of git://git.samba.org/sfrench/cifs-2.6 · 17e7124a
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "Three cifs/smb3 fixes, two for stable: a reconnect fix and a fix for
        display of devnames with special characters"
      
      * tag '5.12-rc6-smb3' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: escape spaces in share names
        fs: cifs: Remove unnecessary struct declaration
        cifs: On cifs_reconnect, resolve the hostname again.
      17e7124a
    • Dave Airlie's avatar
      Merge tag 'drm-msm-fixes-2021-04-02' of https://gitlab.freedesktop.org/drm/msm into drm-fixes · 2e99cd7a
      Dave Airlie authored
      
      
      some more minor fixes:
      - a5xx/a6xx timestamp fix
      - microcode version check
      - fail path fix
      - block programming fix
      - error removal fix.
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Rob Clark <robdclark@gmail.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/CAF6AEGsMj7Nv3vVaVWMxPy8Y=Z_SnZmVKhKgKDxDYTr9rGN_+w@mail.gmail.com
      2e99cd7a
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · 4fa56ad0
      Linus Torvalds authored
      Pull rdma fixes from Jason Gunthorpe:
       "Nothing very exciting here, just a few small bug fixes. No red flags
        for this release have shown up.
      
         - Regression from the last pull request in cxgb4 related to the ipv6
           fixes
      
         - KASAN crasher in rtrs
      
         - oops in hfi1 related to a buggy BIOS
      
         - Userspace could oops qedr's XRC support
      
         - Uninitialized memory when parsing a LS_NLA_TYPE_DGID netlink
           message"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
        RDMA/addr: Be strict with gid size
        RDMA/qedr: Fix kernel panic when trying to access recv_cq
        IB/hfi1: Fix probe time panic when AIP is enabled with a buggy BIOS
        RDMA/cxgb4: check for ipv6 address properly while destroying listener
        RDMA/rtrs-clt: Close rtrs client conn before destroying rtrs clt session files
      4fa56ad0
    • Frank Rowand's avatar
      of: unittest: overlay: ensure proper alignment of copied FDT · 48d499bd
      Frank Rowand authored
      The Devicetree standard specifies an 8 byte alignment of the FDT.
      Code in libfdt expects this alignment for an FDT image in memory.
      kmemdup() returns 4 byte alignment on openrisc.  Replace kmemdup()
      with kmalloc(), align pointer, memcpy() to get proper alignment.
      
      The 4 byte alignment exposed a related bug which triggered a crash
      on openrisc with:
      commit 79edff12
      
       ("scripts/dtc: Update to upstream version v1.6.0-51-g183df9e9c2b9")
      as reported in:
      https://lore.kernel.org/lkml/20210327224116.69309-1-linux@roeck-us.net/
      
      Reported-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: default avatarFrank Rowand <frank.rowand@sony.com>
      Link: https://lore.kernel.org/r/20210408204508.2276230-1-frowand.list@gmail.com
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      48d499bd
    • Pavel Begunkov's avatar
      io-wq: cancel unbounded works on io-wq destroy · c60eb049
      Pavel Begunkov authored
      
      
      WARNING: CPU: 5 PID: 227 at fs/io_uring.c:8578 io_ring_exit_work+0xe6/0x470
      RIP: 0010:io_ring_exit_work+0xe6/0x470
      Call Trace:
       process_one_work+0x206/0x400
       worker_thread+0x4a/0x3d0
       kthread+0x129/0x170
       ret_from_fork+0x22/0x30
      
      INFO: task lfs-openat:2359 blocked for more than 245 seconds.
      task:lfs-openat      state:D stack:    0 pid: 2359 ppid:     1 flags:0x00000004
      Call Trace:
       ...
       wait_for_completion+0x8b/0xf0
       io_wq_destroy_manager+0x24/0x60
       io_wq_put_and_exit+0x18/0x30
       io_uring_clean_tctx+0x76/0xa0
       __io_uring_files_cancel+0x1b9/0x2e0
       do_exit+0xc0/0xb40
       ...
      
      Even after io-wq destroy has been issued io-wq worker threads will
      continue executing all left work items as usual, and may hang waiting
      for I/O that won't ever complete (aka unbounded).
      
      [<0>] pipe_read+0x306/0x450
      [<0>] io_iter_do_read+0x1e/0x40
      [<0>] io_read+0xd5/0x330
      [<0>] io_issue_sqe+0xd21/0x18a0
      [<0>] io_wq_submit_work+0x6c/0x140
      [<0>] io_worker_handle_work+0x17d/0x400
      [<0>] io_wqe_worker+0x2c0/0x330
      [<0>] ret_from_fork+0x22/0x30
      
      Cancel all unbounded I/O instead of executing them. This changes the
      user visible behaviour, but that's inevitable as io-wq is not per task.
      
      Suggested-by: default avatarJens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
      Link: https://lore.kernel.org/r/cd4b543154154cba055cf86f351441c2174d7f71.1617842918.git.asml.silence@gmail.com
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      c60eb049
    • Pavel Begunkov's avatar
      io_uring: fix rw req completion · 97284637
      Pavel Begunkov authored
      WARNING: at fs/io_uring.c:8578 io_ring_exit_work.cold+0x0/0x18
      
      As reissuing is now passed back by REQ_F_REISSUE and kiocb_done()
      internally uses __io_complete_rw(), it may stop after setting the flag
      so leaving a dangling request.
      
      There are tricky edge cases, e.g. reading beyound file, boundary, so
      the easiest way is to hand code reissue in kiocb_done() as
      __io_complete_rw() was doing for us before.
      
      Fixes: 230d50d4
      
       ("io_uring: move reissue into regular IO path")
      Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
      Link: https://lore.kernel.org/r/f602250d292f8a84cca9a01d747744d1e797be26.1617842918.git.asml.silence@gmail.com
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      97284637
    • Leon Romanovsky's avatar
      RDMA/addr: Be strict with gid size · d1c803a9
      Leon Romanovsky authored
      The nla_len() is less than or equal to 16.  If it's less than 16 then end
      of the "gid" buffer is uninitialized.
      
      Fixes: ae43f828
      
       ("IB/core: Add IP to GID netlink offload")
      Link: https://lore.kernel.org/r/20210405074434.264221-1-leon@kernel.org
      Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: default avatarMark Bloch <mbloch@nvidia.com>
      Signed-off-by: default avatarLeon Romanovsky <leonro@nvidia.com>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      d1c803a9
    • Linus Torvalds's avatar
      Merge tag 's390-5.12-6' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 3fb4f979
      Linus Torvalds authored
      Pull s390 fixes from Heiko Carstens:
      
       - fix incorrect dereference of the ext_params2 external interrupt
         parameter, which leads to an instant kernel crash if a pfault
         interrupt occurs.
      
       - add forgotten stack unwinder support, and fix memory leak for the
         new machine check handler stack.
      
       - fix inline assembly register clobbering due to KASAN code
         instrumentation.
      
      * tag 's390-5.12-6' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/setup: use memblock_free_late() to free old stack
        s390/irq: fix reading of ext_params2 field from lowcore
        s390/unwind: add machine check handler stack
        s390/cpcmd: fix inline assembly register clobbering
      3fb4f979
    • Linus Torvalds's avatar
      Merge tag 'sound-5.12-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · e0a472ff
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "This batch became unexpectedly bigger due to the pending ASoC patches,
        but all look small and fine device-specific fixes.
      
        Many of the commits are for ASoC Intel drivers, while the rest are for
        ASoC small codec/platform fixes and HD-audio quirks"
      
      * tag 'sound-5.12-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (21 commits)
        ALSA: hda/realtek: Fix speaker amp setup on Acer Aspire E1
        ALSA: aloop: Fix initialization of controls
        ALSA: hda/conexant: Apply quirk for another HP ZBook G5 model
        ASoC: fsl_esai: Fix TDM slot setup for I2S mode
        ASoC: codecs: lpass-rx-macro: set npl clock rate correctly
        ASoC: codecs: lpass-tx-macro: set npl clock rate correctly
        ASoC: sunxi: sun4i-codec: fill ASoC card owner
        ASoC: cygnus: fix for_each_child.cocci warnings
        ASoC: max98373: Added 30ms turn on/off time delay
        ASoC: max98373: Changed amp shutdown register ...
      e0a472ff
  3. Apr 08, 2021
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · d381b05e
      Linus Torvalds authored
      Pull kvm fix from Paolo Bonzini:
       "A lone x86 patch, for a bug found while developing a backport to
        stable versions"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: x86/mmu: preserve pending TLB flush across calls to kvm_tdp_mmu_zap_sp
      d381b05e
    • Linus Torvalds's avatar
      Merge tag 'for-linus-2021-04-08' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux · 4ea51e0e
      Linus Torvalds authored
      Pull close_range() fix from Christian Brauner:
       "Syzbot reported a bug in close_range.
      
        Debugging this showed we didn't recalculate the current maximum fd
        number for CLOSE_RANGE_UNSHARE | CLOSE_RANGE_CLOEXEC after we unshared
        the file descriptors table. As a result, max_fd could exceed the
        current fdtable maximum causing us to set excessive bits.
      
        As a concrete example, let's say the user requested everything from fd
        4 to ~0UL to be closed and their current fdtable size is 256 with
        their highest open fd being 4. With CLOSE_RANGE_UNSHARE the caller
        will end up with a new fdtable which has room for 64 file descriptors
        since that is the lowest fdtable size we accept. But now max_fd will
        still point to 255 and needs to be adjusted. Fix this by retrieving
        the correct maximum fd value in __range_cloexec().
      
        I've carried this fix for a little while but since there was no
        linux-next release over easter I waited until now.
      
        With this change close_range() can be further simplified but imho we
        are in no hurry to do that and so I'll defer this for the 5.13 merge
        window"
      
      * tag 'for-linus-2021-04-08' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux:
        file: fix close_range() for unshare+cloexec
      4ea51e0e
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 035d8069
      Linus Torvalds authored
      Pull umount fix from Al Viro:
       "Brown paperbag time: dumb braino in the series that went into 5.7
        broke the 'don't step into ->d_weak_revalidate() when umount(2) looks
        the victim up' behaviour.
      
        Spotted only now - saw
      
              if (!err && unlikely(nd->flags & LOOKUP_MOUNTPOINT)) {
                      err = handle_lookup_down(nd);
                      nd->flags &= ~LOOKUP_JUMPED; // no d_weak_revalidate(), please...
              }
      
        and went "why do we clear that flag here - nothing below that point is
        going to check it anyway" / "wait a minute, what is it doing *after*
        complete_walk() (which is where we check that flag and call
        ->d_weak_revalidate())" / "how could that possibly _not_ break?",
        followed by reproducing the breakage and verifying that the obvious
        fix of that braino does, indeed, fix it.
      
        The reproducer is (assuming that $DIR exists and is exported r/w to
        localhost)
      
            mkdir $DIR/a
            mkdir /tmp/foo
            mount --bind /tmp/foo /tmp/foo
            mkdir /tmp/foo/a
            mkdir /tmp/foo/b
            mount -t nfs4 localhost:$DIR/a /tmp/foo/a
            mount -t nfs4 localhost:$DIR /tmp/foo/b
            rmdir /tmp/foo/b/a
            umount /tmp/foo/b
            umount /tmp/foo/a
            umount -l /tmp/foo      # will get everything under /tmp/foo, no matter what
      
        Correct behaviour is successful umount; broken kernels (5.7-rc1 and
        later) get
      
            umount.nfs4: /tmp/foo/a: Stale file handle
      
        Note that bind mount is there to be able to recover - on broken
        kernels we'd get stuck with impossible-to-umount filesystem if not for
        that.
      
        FWIW, that braino had been posted for review back then, at least
        twice. Unfortunately, the call of complete_walk() was outside of diff
        context, so the bogosity hadn't been immediately obvious from the
        patch alone ;-/"
      
      * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        LOOKUP_MOUNTPOINT: we are cleaning "jumped" flag too late
      035d8069
    • Dom Cobley's avatar
      drm/vc4: crtc: Reduce PV fifo threshold on hvs4 · eb9dfdd1
      Dom Cobley authored
      Experimentally have found PV on hvs4 reports fifo full
      error with expected settings and does not with one less
      
      This appears as:
      [drm:drm_atomic_helper_wait_for_flip_done] *ERROR* [CRTC:82:crtc-3] flip_done timed out
      
      with bit 10 of PV_STAT set "HVS driving pixels when the PV FIFO is full"
      
      Fixes: c8b75bca
      
       ("drm/vc4: Add KMS support for Raspberry Pi.")
      Signed-off-by: default avatarDom Cobley <popcornmix@gmail.com>
      Signed-off-by: default avatarMaxime Ripard <maxime@cerno.tech>
      Link: https://patchwork.freedesktop.org/patch/msgid/20210318161328.1471556-3-maxime@cerno.tech
      eb9dfdd1
    • Maxime Ripard's avatar
      drm/vc4: plane: Remove redundant assignment · 35d65ab3
      Maxime Ripard authored
      
      
      The vc4_plane_atomic_async_update function assigns twice in a row the
      src_h field in the drm_plane_state structure to the same value. Remove
      the second one.
      
      Reviewed-by: default avatarDave Stevenson <dave.stevenson@raspberrypi.com>
      Signed-off-by: default avatarMaxime Ripard <maxime@cerno.tech>
      Link: https://patchwork.freedesktop.org/patch/msgid/20210318161328.1471556-2-maxime@cerno.tech
      35d65ab3
    • Paolo Bonzini's avatar
      KVM: x86/mmu: preserve pending TLB flush across calls to kvm_tdp_mmu_zap_sp · 315f02c6
      Paolo Bonzini authored
      Right now, if a call to kvm_tdp_mmu_zap_sp returns false, the caller
      will skip the TLB flush, which is wrong.  There are two ways to fix
      it:
      
      - since kvm_tdp_mmu_zap_sp will not yield and therefore will not flush
        the TLB itself, we could change the call to kvm_tdp_mmu_zap_sp to
        use "flush |= ..."
      
      - or we can chain the flush argument through kvm_tdp_mmu_zap_sp down
        to __kvm_tdp_mmu_zap_gfn_range.  Note that kvm_tdp_mmu_zap_sp will
        neither yield nor flush, so flush would never go from true to
        false.
      
      This patch does the former to simplify application to stable kernels,
      and to make it further clearer that kvm_tdp_mmu_zap_sp will not flush.
      
      Cc: seanjc@google.com
      Fixes: 048f4980 ("KVM: x86/mmu: Ensure TLBs are flushed for TDP MMU during NX zapping")
      Cc: <stable@vger.kernel.org> # 5.10.x: 048f4980: KVM: x86/mmu: Ensure TLBs are flushed for TDP MMU during NX zapping
      Cc: <stable@vger.kernel.org> # 5.10.x: 33a31641
      
      : KVM: x86/mmu: Don't allow TDP MMU to yield when recovering NX pages
      Cc: <stable@vger.kernel.org>
      Reviewed-by: default avatarSean Christopherson <seanjc@google.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      315f02c6
    • Takashi Iwai's avatar
      ALSA: hda/realtek: Fix speaker amp setup on Acer Aspire E1 · c8426b27
      Takashi Iwai authored
      
      
      We've got a report about Acer Aspire E1 (PCI SSID 1025:0840) that
      loses the speaker output after resume.  With the comparison of COEF
      dumps, it was identified that the COEF 0x0d bits 0x6000 corresponds to
      the speaker amp.
      
      This patch adds the specific quirk for the device to restore the COEF
      bits at the codec (re-)initialization.
      
      BugLink: https://bugzilla.suse.com/show_bug.cgi?id=1183869
      Cc: <stable@vger.kernel.org>
      Link: https://lore.kernel.org/r/20210407095730.12560-1-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      c8426b27
    • Dave Airlie's avatar
      Merge tag 'amd-drm-fixes-5.12-2021-04-08' of... · 2bbbb07d
      Dave Airlie authored
      
      Merge tag 'amd-drm-fixes-5.12-2021-04-08' of https://gitlab.freedesktop.org/agd5f/linux into drm-fixes
      
      amd-drm-fixes-5.12-2021-04-08:
      
      amdgpu:
      - DCN3 fix
      - Fix CAC setting regression for TOPAZ
      - Fix ttm regression
      
      radeon:
      - Fix ttm regression
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Alex Deucher <alexander.deucher@amd.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20210408045512.3879-1-alexander.deucher@amd.com
      2bbbb07d
    • Alex Deucher's avatar
      drm/amdgpu/smu7: fix CAC setting on TOPAZ · cdcc108a
      Alex Deucher authored
      We need to enable MC CAC for mclk switching to work.
      
      Fixes: d765129a
      
       ("drm/amd/pm: correct sclk/mclk dpm enablement")
      Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1561
      Tested-by: default avatarKonstantin Kharlamov <Hi-Angel@yandex.ru>
      Reviewed-by: default avatarEvan Quan <evan.quan@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      Cc: stable@vger.kernel.org
      cdcc108a
    • xinhui pan's avatar
      drm/radeon: Fix size overflow · 2efc0210
      xinhui pan authored
      ttm->num_pages is uint32. Hit overflow when << PAGE_SHIFT directly
      
      Fixes: 230c079f
      
       ("drm/ttm: make num_pages uint32_t")
      Signed-off-by: default avatarxinhui pan <xinhui.pan@amd.com>
      Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      Cc: stable@vger.kernel.org
      2efc0210
    • xinhui pan's avatar
      drm/amdgpu: Fix size overflow · 1b0b6e93
      xinhui pan authored
      ttm->num_pages is uint32. Hit overflow when << PAGE_SHIFT directly
      
      Fixes: 230c079f
      
       ("drm/ttm: make num_pages uint32_t")
      Signed-off-by: default avatarxinhui pan <xinhui.pan@amd.com>
      Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      Cc: stable@vger.kernel.org
      1b0b6e93