1. 01 Nov, 2019 2 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · 4252a1a9
      Linus Torvalds authored
      Pull rdma fixes from Jason Gunthorpe:
       "A number of bug fixes and a regression fix:
      
         - Various issues from static analysis in hfi1, uverbs, hns, and cxgb4
      
         - Fix for deadlock in a case when the new auto RDMA module loading is
           used
      
         - Missing _irq notation in a prior -rc patch found by lockdep
      
         - Fix a locking and lifetime issue in siw
      
         - Minor functional bug fixes in cxgb4, mlx5, qedr
      
         - Fix a regression where vlan interfaces no longer worked with RDMA
           CM in some cases"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
        RDMA/hns: Prevent memory leaks of eq->buf_list
        RDMA/iw_cxgb4: Avoid freeing skb twice in arp failure case
        RDMA/mlx5: Use irq xarray locking for mkey_table
        IB/core: Avoid deadlock during netlink message handling
        RDMA/nldev: Skip counter if port doesn't match
        RDMA/uverbs: Prevent potential underflow
        IB/core: Use rdma_read_gid_l2_fields to compare GID L2 fields
        RDMA/qedr: Fix reported firmware version
        RDMA/siw: free siw_base_qp in kref release routine
        RDMA/iwcm: move iw_rem_ref() calls out of spinlock
        iw_cxgb4: fix ECN check on the passive accept
        IB/hfi1: Use a common pad buffer for 9B and 16B packets
        IB/hfi1: Avoid excessive retry for TID RDMA READ request
        RDMA/mlx5: Clear old rate limit when closing QP
      4252a1a9
    • Linus Torvalds's avatar
      Merge tag 'sound-5.4-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 28585980
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "A couple of regression fixes and a fix for mutex deadlock at
        hog-unplug, as well as other device-specific fixes:
      
         - A commit to avoid the spurious unsolicited interrupt on HD-audio
           bus caused a stall at shutdown, so it's reverted now.
      
         - The recent support of AMD/Nvidia audio component binding caused a
           mutex deadlock; fixed by splitting to another mutex
      
         - The device hot-unplug and the ALSA timer close combo may lead to
           another mutex deadlock; fixed by moving put_device() calls
      
         - Usual device-specific small quirks for HD- and USB-audio drivers
      
         - An old error check fix in FireWire driver"
      
      * tag 'sound-5.4-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: timer: Fix mutex deadlock at releasing card
        ALSA: hda - Fix mutex deadlock in HDMI codec driver
        Revert "ALSA: hda: Flush interrupts on disabling"
        ALSA: bebob: Fix prototype of helper function to return negative value
        ALSA: hda/realtek - Fix 2 front mics of codec 0x623
        ALSA: hda/realtek - Add support for ALC623
        ALSA: usb-audio: Add DSD support for Gustard U16/X26 USB Interface
      28585980
  2. 31 Oct, 2019 1 commit
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-fix-5.4-rc6' of git://git.infradead.org/users/vkoul/slave-dma · e472c64a
      Linus Torvalds authored
      Pull dmaengine fixes from Vinod Koul:
       "A few fixes to the dmaengine drivers:
      
         - fix in sprd driver for link list and potential memory leak
      
         - tegra transfer failure fix
      
         - imx size check fix for script_number
      
         - xilinx fix for 64bit AXIDMA and control reg update
      
         - qcom bam dma resource leak fix
      
         - cppi slave transfer fix when idle"
      
      * tag 'dmaengine-fix-5.4-rc6' of git://git.infradead.org/users/vkoul/slave-dma:
        dmaengine: cppi41: Fix cppi41_dma_prep_slave_sg() when idle
        dmaengine: qcom: bam_dma: Fix resource leak
        dmaengine: sprd: Fix the possible memory leak issue
        dmaengine: xilinx_dma: Fix control reg update in vdma_channel_set_config
        dmaengine: xilinx_dma: Fix 64-bit simple AXIDMA transfer
        dmaengine: imx-sdma: fix size check for sdma script_number
        dmaengine: tegra210-adma: fix transfer failure
        dmaengine: sprd: Fix the link-list pointer register configuration issue
      e472c64a
  3. 30 Oct, 2019 8 commits
    • Takashi Iwai's avatar
      ALSA: timer: Fix mutex deadlock at releasing card · a3933186
      Takashi Iwai authored
      When a card is disconnected while in use, the system waits until all
      opened files are closed then releases the card.  This is done via
      put_device() of the card device in each device release code.
      
      The recently reported mutex deadlock bug happens in this code path;
      snd_timer_close() for the timer device deals with the global
      register_mutex and it calls put_device() there.  When this timer
      device is the last one, the card gets freed and it eventually calls
      snd_timer_free(), which has again the protection with the global
      register_mutex -- boom.
      
      Basically put_device() call itself is race-free, so a relative simple
      workaround is to move this put_device() call out of the mutex.  For
      achieving that, in this patch, snd_timer_close_locked() got a new
      argument to store the card device pointer in return, and each caller
      invokes put_device() with the returned object after the mutex unlock.
      Reported-and-tested-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      a3933186
    • Takashi Iwai's avatar
      ALSA: hda - Fix mutex deadlock in HDMI codec driver · 302d5a80
      Takashi Iwai authored
      The commit ade49db3 ("ALSA: hda/hdmi - Allow audio component for
      AMD/ATI and Nvidia HDMI") introduced the spec->pcm_lock mutex lock to
      the whole generic_hdmi_init() function for avoiding the race with the
      audio component registration.  However, this caused a dead lock when
      the unsolicited event is handled without the audio component, as the
      codec gets runtime-resumed in hdmi_present_sense() which is already
      inside the spec->pcm_lock in its caller.
      
      For avoiding this deadlock, add a new mutex only for the audio
      component binding that is used in both generic_hdmi_init() and the
      audio notifier registration where the jack callbacks are handled /
      re-registered.
      
      Fixes: ade49db3 ("ALSA: hda/hdmi - Allow audio component for AMD/ATI and Nvidia HDMI")
      Reported-and-tested-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Link: https://lore.kernel.org/r/s5himo7i89i.wl-tiwai@suse.deSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      302d5a80
    • Linus Torvalds's avatar
      Merge tag 'iommu-fixes-v5.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 320000e7
      Linus Torvalds authored
      Pull iommu fixes from Joerg Roedel:
      
       - Follow-on fix for Renesas IPMMU to get rid of a redundant error
         message.
      
       - Quirk for AMD IOMMU to make it work on another Acer Laptop model with
         a broken IVRS ACPI table.
      
       - Fix for a panic at kdump in the Intel IOMMU driver.
      
      * tag 'iommu-fixes-v5.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        iommu/vt-d: Fix panic after kexec -p for kdump
        iommu/amd: Apply the same IVRS IOAPIC workaround to Acer Aspire A315-41
        iommu/ipmmu-vmsa: Remove dev_err() on platform_get_irq() failure
      320000e7
    • Linus Torvalds's avatar
      Merge tag 'gfs2-v5.4-rc5.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 · b66b4498
      Linus Torvalds authored
      Pull gfs2 fix from Andreas Gruenbacher:
       "Fix remounting (broken in -rc1)."
      
      * tag 'gfs2-v5.4-rc5.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2:
        gfs2: Fix initialisation of args for remount
      b66b4498
    • Andrew Price's avatar
      gfs2: Fix initialisation of args for remount · d5798141
      Andrew Price authored
      When gfs2 was converted to use fs_context, the initialisation of the
      mount args structure to the currently active args was lost with the
      removal of gfs2_remount_fs(), so the checks of the new args on remount
      became checks against the default values instead of the current ones.
      This caused unexpected remount behaviour and test failures (xfstests
      generic/294, generic/306 and generic/452).
      
      Reinstate the args initialisation, this time in gfs2_init_fs_context()
      and conditional upon fc->purpose, as that's the only time we get control
      before the mount args are parsed in the remount process.
      
      Fixes: 1f52aa08 ("gfs2: Convert gfs2 to fs_context")
      Signed-off-by: default avatarAndrew Price <anprice@redhat.com>
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      d5798141
    • John Donnelly's avatar
      iommu/vt-d: Fix panic after kexec -p for kdump · 160c63f9
      John Donnelly authored
      This cures a panic on restart after a kexec operation on 5.3 and 5.4
      kernels.
      
      The underlying state of the iommu registers (iommu->flags &
      VTD_FLAG_TRANS_PRE_ENABLED) on a restart results in a domain being marked as
      "DEFER_DEVICE_DOMAIN_INFO" that produces an Oops in identity_mapping().
      
      [   43.654737] BUG: kernel NULL pointer dereference, address:
      0000000000000056
      [   43.655720] #PF: supervisor read access in kernel mode
      [   43.655720] #PF: error_code(0x0000) - not-present page
      [   43.655720] PGD 0 P4D 0
      [   43.655720] Oops: 0000 [#1] SMP PTI
      [   43.655720] CPU: 0 PID: 1 Comm: swapper/0 Not tainted
      5.3.2-1940.el8uek.x86_64 #1
      [   43.655720] Hardware name: Oracle Corporation ORACLE SERVER
      X5-2/ASM,MOTHERBOARD,1U, BIOS 30140300 09/20/2018
      [   43.655720] RIP: 0010:iommu_need_mapping+0x29/0xd0
      [   43.655720] Code: 00 0f 1f 44 00 00 48 8b 97 70 02 00 00 48 83 fa ff
      74 53 48 8d 4a ff b8 01 00 00 00 48 83 f9 fd 76 01 c3 48 8b 35 7f 58 e0
      01 <48> 39 72 58 75 f2 55 48 89 e5 41 54 53 48 8b 87 28 02 00 00 4c 8b
      [   43.655720] RSP: 0018:ffffc9000001b9b0 EFLAGS: 00010246
      [   43.655720] RAX: 0000000000000001 RBX: 0000000000001000 RCX:
      fffffffffffffffd
      [   43.655720] RDX: fffffffffffffffe RSI: ffff8880719b8000 RDI:
      ffff8880477460b0
      [   43.655720] RBP: ffffc9000001b9e8 R08: 0000000000000000 R09:
      ffff888047c01700
      [   43.655720] R10: 00002194036fc692 R11: 0000000000000000 R12:
      0000000000000000
      [   43.655720] R13: ffff8880477460b0 R14: 0000000000000cc0 R15:
      ffff888072d2b558
      [   43.655720] FS:  0000000000000000(0000) GS:ffff888071c00000(0000)
      knlGS:0000000000000000
      [   43.655720] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [   43.655720] CR2: 0000000000000056 CR3: 000000007440a002 CR4:
      00000000001606b0
      [   43.655720] Call Trace:
      [   43.655720]  ? intel_alloc_coherent+0x2a/0x180
      [   43.655720]  ? __schedule+0x2c2/0x650
      [   43.655720]  dma_alloc_attrs+0x8c/0xd0
      [   43.655720]  dma_pool_alloc+0xdf/0x200
      [   43.655720]  ehci_qh_alloc+0x58/0x130
      [   43.655720]  ehci_setup+0x287/0x7ba
      [   43.655720]  ? _dev_info+0x6c/0x83
      [   43.655720]  ehci_pci_setup+0x91/0x436
      [   43.655720]  usb_add_hcd.cold.48+0x1d4/0x754
      [   43.655720]  usb_hcd_pci_probe+0x2bc/0x3f0
      [   43.655720]  ehci_pci_probe+0x39/0x40
      [   43.655720]  local_pci_probe+0x47/0x80
      [   43.655720]  pci_device_probe+0xff/0x1b0
      [   43.655720]  really_probe+0xf5/0x3a0
      [   43.655720]  driver_probe_device+0xbb/0x100
      [   43.655720]  device_driver_attach+0x58/0x60
      [   43.655720]  __driver_attach+0x8f/0x150
      [   43.655720]  ? device_driver_attach+0x60/0x60
      [   43.655720]  bus_for_each_dev+0x74/0xb0
      [   43.655720]  driver_attach+0x1e/0x20
      [   43.655720]  bus_add_driver+0x151/0x1f0
      [   43.655720]  ? ehci_hcd_init+0xb2/0xb2
      [   43.655720]  ? do_early_param+0x95/0x95
      [   43.655720]  driver_register+0x70/0xc0
      [   43.655720]  ? ehci_hcd_init+0xb2/0xb2
      [   43.655720]  __pci_register_driver+0x57/0x60
      [   43.655720]  ehci_pci_init+0x6a/0x6c
      [   43.655720]  do_one_initcall+0x4a/0x1fa
      [   43.655720]  ? do_early_param+0x95/0x95
      [   43.655720]  kernel_init_freeable+0x1bd/0x262
      [   43.655720]  ? rest_init+0xb0/0xb0
      [   43.655720]  kernel_init+0xe/0x110
      [   43.655720]  ret_from_fork+0x24/0x50
      
      Fixes: 8af46c78 ("iommu/vt-d: Implement is_attach_deferred iommu ops entry")
      Cc: stable@vger.kernel.org # v5.3+
      Signed-off-by: default avatarJohn Donnelly <john.p.donnelly@oracle.com>
      Reviewed-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
      Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      160c63f9
    • Takashi Iwai's avatar
      iommu/amd: Apply the same IVRS IOAPIC workaround to Acer Aspire A315-41 · ad3e8da2
      Takashi Iwai authored
      Acer Aspire A315-41 requires the very same workaround as the existing
      quirk for Dell Latitude 5495.  Add the new entry for that.
      
      BugLink: https://bugzilla.suse.com/show_bug.cgi?id=1137799Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      ad3e8da2
    • YueHaibing's avatar
      iommu/ipmmu-vmsa: Remove dev_err() on platform_get_irq() failure · 565d4542
      YueHaibing authored
      platform_get_irq() will call dev_err() itself on failure,
      so there is no need for the driver to also do this.
      This is detected by coccinelle.
      Signed-off-by: default avatarYueHaibing <yuehaibing@huawei.com>
      Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      565d4542
  4. 29 Oct, 2019 1 commit
    • Linus Torvalds's avatar
      Merge tag 'fuse-fixes-5.4-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse · 23fdb198
      Linus Torvalds authored
      Pull fuse fixes from Miklos Szeredi:
       "Mostly virtiofs fixes, but also fixes a regression and couple of
        longstanding data/metadata writeback ordering issues"
      
      * tag 'fuse-fixes-5.4-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
        fuse: redundant get_fuse_inode() calls in fuse_writepages_fill()
        fuse: Add changelog entries for protocols 7.1 - 7.8
        fuse: truncate pending writes on O_TRUNC
        fuse: flush dirty data/metadata before non-truncate setattr
        virtiofs: Remove set but not used variable 'fc'
        virtiofs: Retry request submission from worker context
        virtiofs: Count pending forgets as in_flight forgets
        virtiofs: Set FR_SENT flag only after request has been sent
        virtiofs: No need to check fpq->connected state
        virtiofs: Do not end request in submission context
        fuse: don't advise readdirplus for negative lookup
        fuse: don't dereference req->args on finished request
        virtio-fs: don't show mount options
        virtio-fs: Change module name to virtiofs.ko
      23fdb198
  5. 28 Oct, 2019 10 commits
  6. 27 Oct, 2019 7 commits
    • Linus Torvalds's avatar
      Linux 5.4-rc5 · d6d5df1d
      Linus Torvalds authored
      d6d5df1d
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 153a971f
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "Two fixes for the VMWare guest support:
      
         - Unbreak VMWare platform detection which got wreckaged by converting
           an integer constant to a string constant.
      
         - Fix the clang build of the VMWAre hypercall by explicitely
           specifying the ouput register for INL instead of using the short
           form"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/cpu/vmware: Fix platform detection VMWARE_PORT macro
        x86/cpu/vmware: Use the full form of INL in VMWARE_HYPERCALL, for clang/llvm
      153a971f
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2b776b54
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "A small set of fixes for time(keeping):
      
         - Add a missing include to prevent compiler warnings.
      
         - Make the VDSO implementation of clock_getres() POSIX compliant
           again. A recent change dropped the NULL pointer guard which is
           required as NULL is a valid pointer value for this function.
      
         - Fix two function documentation typos"
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        posix-cpu-timers: Fix two trivial comments
        timers/sched_clock: Include local timekeeping.h for missing declarations
        lib/vdso: Make clock_getres() POSIX compliant again
      2b776b54
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a8a31fdc
      Linus Torvalds authored
      Pull perf fixes from Thomas Gleixner:
       "A set of perf fixes:
      
        kernel:
      
         - Unbreak the tracking of auxiliary buffer allocations which got
           imbalanced causing recource limit failures.
      
         - Fix the fallout of splitting of ToPA entries which missed to shift
           the base entry PA correctly.
      
         - Use the correct context to lookup the AUX event when unmapping the
           associated AUX buffer so the event can be stopped and the buffer
           reference dropped.
      
        tools:
      
         - Fix buildiid-cache mode setting in copyfile_mode_ns() when copying
           /proc/kcore
      
         - Fix freeing id arrays in the event list so the correct event is
           closed.
      
         - Sync sched.h anc kvm.h headers with the kernel sources.
      
         - Link jvmti against tools/lib/ctype.o to have weak strlcpy().
      
         - Fix multiple memory and file descriptor leaks, found by coverity in
           perf annotate.
      
         - Fix leaks in error handling paths in 'perf c2c', 'perf kmem', found
           by a static analysis tool"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/aux: Fix AUX output stopping
        perf/aux: Fix tracking of auxiliary trace buffer allocation
        perf/x86/intel/pt: Fix base for single entry topa
        perf kmem: Fix memory leak in compact_gfp_flags()
        tools headers UAPI: Sync sched.h with the kernel
        tools headers kvm: Sync kvm.h headers with the kernel sources
        tools headers kvm: Sync kvm headers with the kernel sources
        tools headers kvm: Sync kvm headers with the kernel sources
        perf c2c: Fix memory leak in build_cl_output()
        perf tools: Fix mode setting in copyfile_mode_ns()
        perf annotate: Fix multiple memory and file descriptor leaks
        perf tools: Fix resource leak of closedir() on the error paths
        perf evlist: Fix fix for freed id arrays
        perf jvmti: Link against tools/lib/ctype.h to have weak strlcpy()
      a8a31fdc
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1e1ac1cb
      Linus Torvalds authored
      Pull irq fixes from Thomas Gleixner:
       "Two fixes for interrupt controller drivers:
      
         - Skip IRQ_M_EXT entries in the device tree when initializing the
           RISCV PLIC controller to avoid a double init attempt.
      
         - Use the correct ITS list when issuing the VMOVP synchronization
           command so the operation works only on the ITS instances which are
           associated to a VM"
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/sifive-plic: Skip contexts except supervisor in plic_init()
        irqchip/gic-v3-its: Use the exact ITSList for VMOVP
      1e1ac1cb
    • Linus Torvalds's avatar
      Merge tag '5.4-rc5-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6 · c9a2e4a8
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "Seven cifs/smb3 fixes, including three for stable"
      
      * tag '5.4-rc5-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs
        CIFS: Fix use after free of file info structures
        CIFS: Fix retry mid list corruption on reconnects
        cifs: Fix missed free operations
        CIFS: avoid using MID 0xFFFF
        cifs: clarify comment about timestamp granularity for old servers
        cifs: Handle -EINPROGRESS only when noblockcnt is set
      c9a2e4a8
    • Linus Torvalds's avatar
      Merge tag 'riscv/for-v5.4-rc5-b' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · 6995a6a5
      Linus Torvalds authored
      Pull RISC-V fixes from Paul Walmsley:
       "Several minor fixes and cleanups for v5.4-rc5:
      
         - Three build fixes for various SPARSEMEM-related kernel
           configurations
      
         - Two cleanup patches for the kernel bug and breakpoint trap handler
           code"
      
      * tag 'riscv/for-v5.4-rc5-b' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
        riscv: cleanup do_trap_break
        riscv: cleanup <asm/bug.h>
        riscv: Fix undefined reference to vmemmap_populate_basepages
        riscv: Fix implicit declaration of 'page_to_section'
        riscv: fix fs/proc/kcore.c compilation with sparsemem enabled
      6995a6a5
  7. 26 Oct, 2019 11 commits