1. 15 Oct, 2021 12 commits
  2. 12 Oct, 2021 13 commits
  3. 01 Oct, 2021 6 commits
    • Arnd Bergmann's avatar
      drm/msm/submit: fix overflow check on 64-bit architectures · 95c58291
      Arnd Bergmann authored
      The overflow check does causes a warning from clang-14 when 'sz' is a type
      that is smaller than size_t:
      
      drivers/gpu/drm/msm/msm_gem_submit.c:217:10: error: result of comparison of constant 18446744073709551615 with expression of type 'unsigned int' is always false [-Werror,-Wtautological-constant-out-of-range-compare]
                      if (sz == SIZE_MAX) {
      
      Change the type accordingly.
      
      Fixes: 20224d71 ("drm/msm/submit: Move copy_from_user ahead of locking bos")
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Reviewed-by: default avatarStephen Boyd <swboyd@chromium.org>
      Link: https://lore.kernel.org/r/20210927113632.3849987-1-arnd@kernel.orgSigned-off-by: default avatarRob Clark <robdclark@chromium.org>
      95c58291
    • Rob Clark's avatar
      drm/msm: One sched entity per process per priority · 68002469
      Rob Clark authored
      Some userspace apps make assumptions that rendering against multiple
      contexts within the same process (from the same thread, with appropriate
      MakeCurrent() calls) provides sufficient synchronization without any
      external synchronization (ie. glFenceSync()/glWaitSync()).  Since a
      submitqueue maps to a gl/vk context, having multiple sched entities of
      the same priority only works with implicit sync enabled.
      
      To fix this, limit things to a single sched entity per priority level
      per process.
      
      An alternative would be sharing submitqueues between contexts in
      userspace, but tracking of per-context faults (ie. GL_EXT_robustness)
      is already done at the submitqueue level, so this is not an option.
      Signed-off-by: default avatarRob Clark <robdclark@chromium.org>
      68002469
    • Rob Clark's avatar
      drm/msm: A bit more docs + cleanup · 4cd82aa3
      Rob Clark authored
      msm_file_private is more gpu related, and in the next commit it will
      need access to other GPU specific #defines.  While we're at it, add
      some comments.
      Signed-off-by: default avatarRob Clark <robdclark@chromium.org>
      4cd82aa3
    • Rob Clark's avatar
      drm/msm/a6xx: Track current ctx by seqno · 14eb0cb4
      Rob Clark authored
      In theory a context can be destroyed and a new one allocated at the same
      address, making the pointer comparision to detect when we don't need to
      update the current pagetables invalid.  Instead assign a sequence number
      to each context on creation, and use this for the check.
      
      Fixes: 84c31ee1 ("drm/msm/a6xx: Add support for per-instance pagetables")
      Signed-off-by: default avatarRob Clark <robdclark@chromium.org>
      14eb0cb4
    • Rob Clark's avatar
      drm/msm/a6xx: Serialize GMU communication · f6f59072
      Rob Clark authored
      I've seen some crashes in our crash reporting that *look* like multiple
      threads stomping on each other while communicating with GMU.  So wrap
      all those paths in a lock.
      Signed-off-by: default avatarRob Clark <robdclark@chromium.org>
      f6f59072
    • Rob Clark's avatar
      drm/msm: Fix crash on dev file close · 654e9c18
      Rob Clark authored
      If the device file was opened prior to fw being available (such as from
      initrd before rootfs is mounted, when the initrd does not contain GPU
      fw), that would cause a later crash when the dev file is closed due to
      unitialized submitqueues list:
      
         CPU: 4 PID: 263 Comm: plymouthd Tainted: G        W         5.15.0-rc2-next-20210924 #2
         Hardware name: LENOVO 81JL/LNVNB161216, BIOS 9UCN33WW(V2.06) 06/ 4/2019
         pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
         pc : msm_submitqueue_close+0x30/0x190 [msm]
         lr : msm_postclose+0x54/0xf0 [msm]
         sp : ffff80001074bb80
         x29: ffff80001074bb80 x28: ffff03ad80c4db80 x27: ffff03ad80dc5ab0
         x26: 0000000000000000 x25: ffff03ad80dc5af8 x24: ffff03ad81e90800
         x23: 0000000000000000 x22: ffff03ad81e90800 x21: ffff03ad8b35e788
         x20: ffff03ad81e90878 x19: 0000000000000000 x18: 0000000000000000
         x17: 0000000000000000 x16: ffffda15f14f7940 x15: 0000000000000000
         x14: 0000000000000000 x13: 0000000000000001 x12: 0000000000000040
         x11: 0000000000000000 x10: 0000000000000000 x9 : ffffda15cd18ff88
         x8 : ffff03ad80c4db80 x7 : 0000000000000228 x6 : 0000000000000000
         x5 : 1793a4e807e636bd x4 : ffff03ad80c4db80 x3 : ffff03ad81e90878
         x2 : 0000000000000000 x1 : ffff03ad80c4db80 x0 : 0000000000000000
         Call trace:
          msm_submitqueue_close+0x30/0x190 [msm]
          msm_postclose+0x54/0xf0 [msm]
          drm_file_free.part.0+0x1cc/0x2e0 [drm]
          drm_close_helper.isra.0+0x74/0x84 [drm]
          drm_release+0x78/0x120 [drm]
          __fput+0x78/0x23c
          ____fput+0x1c/0x30
          task_work_run+0xcc/0x22c
          do_exit+0x304/0x9f4
          do_group_exit+0x44/0xb0
          __wake_up_parent+0x0/0x3c
          invoke_syscall+0x50/0x120
          el0_svc_common.constprop.0+0x4c/0xf4
          do_el0_svc+0x30/0x9c
          el0_svc+0x20/0x60
          el0t_64_sync_handler+0xe8/0xf0
          el0t_64_sync+0x1a0/0x1a4
         Code: aa0003f5 a90153f3 f8408eb3 aa1303e0 (f85e8674)
         ---[ end trace 39b2fa37509a2be2 ]---
         Fixing recursive fault but reboot is needed!
      
      Fixes: 86c2a0f0 drm/msm: ("Small submitqueue creation cleanup")
      Reported-by: default avatarSteev Klimaszewski <steev@kali.org>
      Signed-off-by: default avatarRob Clark <robdclark@chromium.org>
      654e9c18
  4. 26 Sep, 2021 7 commits
    • Linus Torvalds's avatar
      Linux 5.15-rc3 · 5816b3e6
      Linus Torvalds authored
      5816b3e6
    • Linus Torvalds's avatar
      Merge tag '5.15-rc2-ksmbd-fixes' of git://git.samba.org/ksmbd · 5e5d7597
      Linus Torvalds authored
      Pull ksmbd fixes from Steve French:
       "Five fixes for the ksmbd kernel server, including three security
        fixes:
      
         - remove follow symlinks support
      
         - use LOOKUP_BENEATH to prevent out of share access
      
         - SMB3 compounding security fix
      
         - fix for returning the default streams correctly, fixing a bug when
           writing ppt or doc files from some clients
      
         - logging more clearly that ksmbd is experimental (at module load
           time)"
      
      * tag '5.15-rc2-ksmbd-fixes' of git://git.samba.org/ksmbd:
        ksmbd: use LOOKUP_BENEATH to prevent the out of share access
        ksmbd: remove follow symlinks support
        ksmbd: check protocol id in ksmbd_verify_smb_message()
        ksmbd: add default data stream name in FILE_STREAM_INFORMATION
        ksmbd: log that server is experimental at module load
      5e5d7597
    • Linus Torvalds's avatar
      Merge tag 'edac_urgent_for_v5.15_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras · 996148ee
      Linus Torvalds authored
      Pull EDAC fixes from Borislav Petkov:
       "Fix two EDAC drivers using the wrong value type for the DIMM mode"
      
      * tag 'edac_urgent_for_v5.15_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
        EDAC/dmc520: Assign the proper type to dimm->edac_mode
        EDAC/synopsys: Fix wrong value type assignment for edac_mode
      996148ee
    • Linus Torvalds's avatar
      Merge tag 'thermal-v5.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/thermal/linux · 299d6e47
      Linus Torvalds authored
      Pull thermal fixes from Daniel Lezcano:
      
       - Fix thermal shutdown after a suspend/resume due to a wrong TCC value
         restored on Intel platform (Antoine Tenart)
      
       - Fix potential buffer overflow when building the list of policies. The
         buffer size is not updated after writing to it (Dan Carpenter)
      
       - Fix wrong check against IS_ERR instead of NULL (Ansuel Smith)
      
      * tag 'thermal-v5.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/thermal/linux:
        thermal/drivers/tsens: Fix wrong check for tzd in irq handlers
        thermal/core: Potential buffer overflow in thermal_build_list_of_policies()
        thermal/drivers/int340x: Do not set a wrong tcc offset on resume
      299d6e47
    • Linus Torvalds's avatar
      Merge tag 'x86-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5bb7b210
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "A set of fixes for X86:
      
         - Prevent sending the wrong signal when protection keys are enabled
           and the kernel handles a fault in the vsyscall emulation.
      
         - Invoke early_reserve_memory() before invoking e820_memory_setup()
           which is required to make the Xen dom0 e820 hooks work correctly.
      
         - Use the correct data type for the SETZ operand in the EMQCMDS
           instruction wrapper.
      
         - Prevent undefined behaviour to the potential unaligned accesss in
           the instruction decoder library"
      
      * tag 'x86-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/insn, tools/x86: Fix undefined behavior due to potential unaligned accesses
        x86/asm: Fix SETZ size enqcmds() build failure
        x86/setup: Call early_reserve_memory() earlier
        x86/fault: Fix wrong signal when vsyscall fails with pkey
      5bb7b210
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3a398acc
      Linus Torvalds authored
      Pull timer fix from Thomas Gleixner:
       "A single fix for the recently introduced regression in posix CPU
        timers which failed to stop the timer when requested. That caused
        unexpected signals to be sent to the process/thread causing
        malfunction"
      
      * tag 'timers-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        posix-cpu-timers: Prevent spuriously armed 0-value itimer
      3a398acc
    • Linus Torvalds's avatar
      Merge tag 'irq-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · dc0f97c2
      Linus Torvalds authored
      Pull irq fixes from Thomas Gleixner:
       "A set of fixes for interrupt chip drivers:
      
         - Work around a bad GIC integration on a Renesas platform which can't
           handle byte-sized MMIO access
      
         - Plug a potential memory leak in the GICv4 driver
      
         - Fix a regression in the Armada 370-XP IPI code which was caused by
           issuing EOI instack of ACK.
      
         - A couple of small fixes here and there"
      
      * tag 'irq-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/gic: Work around broken Renesas integration
        irqchip/renesas-rza1: Use semicolons instead of commas
        irqchip/gic-v3-its: Fix potential VPE leak on error
        irqchip/goldfish-pic: Select GENERIC_IRQ_CHIP to fix build
        irqchip/mbigen: Repair non-kernel-doc notation
        irqdomain: Change the type of 'size' in __irq_domain_add() to be consistent
        irqchip/armada-370-xp: Fix ack/eoi breakage
        Documentation: Fix irq-domain.rst build warning
      dc0f97c2
  5. 25 Sep, 2021 2 commits
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · a3b397b4
      Linus Torvalds authored
      Merge misc fixes from Andrew Morton:
       "16 patches.
      
        Subsystems affected by this patch series: xtensa, sh, ocfs2, scripts,
        lib, and mm (memory-failure, kasan, damon, shmem, tools, pagecache,
        debug, and pagemap)"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        mm: fix uninitialized use in overcommit_policy_handler
        mm/memory_failure: fix the missing pte_unmap() call
        kasan: always respect CONFIG_KASAN_STACK
        sh: pgtable-3level: fix cast to pointer from integer of different size
        mm/debug: sync up latest migrate_reason to migrate_reason_names
        mm/debug: sync up MR_CONTIG_RANGE and MR_LONGTERM_PIN
        mm: fs: invalidate bh_lrus for only cold path
        lib/zlib_inflate/inffast: check config in C to avoid unused function warning
        tools/vm/page-types: remove dependency on opt_file for idle page tracking
        scripts/sorttable: riscv: fix undeclared identifier 'EM_RISCV' error
        ocfs2: drop acl cache for directories too
        mm/shmem.c: fix judgment error in shmem_is_huge()
        xtensa: increase size of gcc stack frame check
        mm/damon: don't use strnlen() with known-bogus source length
        kasan: fix Kconfig check of CC_HAS_WORKING_NOSANITIZE_ADDRESS
        mm, hwpoison: add is_free_buddy_page() in HWPoisonHandlable()
      a3b397b4
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · bb19237b
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Thirty-three fixes, I'm afraid.
      
        Essentially the build up from the last couple of weeks while I've been
        dealling with Linux Plumbers conference infrastructure issues. It's
        mostly the usual assortment of spelling fixes and minor corrections.
      
        The only core relevant changes are to the sd driver to reduce the spin
        up message spew and fix a small memory leak on the freeing path"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (33 commits)
        scsi: ses: Retry failed Send/Receive Diagnostic commands
        scsi: target: Fix spelling mistake "CONFLIFT" -> "CONFLICT"
        scsi: lpfc: Fix gcc -Wstringop-overread warning, again
        scsi: lpfc: Use correct scnprintf() limit
        scsi: lpfc: Fix sprintf() overflow in lpfc_display_fpin_wwpn()
        scsi: core: Remove 'current_tag'
        scsi: acornscsi: Remove tagged queuing vestiges
        scsi: fas216: Kill scmd->tag
        scsi: qla2xxx: Restore initiator in dual mode
        scsi: ufs: core: Unbreak the reset handler
        scsi: sd_zbc: Support disks with more than 2**32 logical blocks
        scsi: ufs: core: Revert "scsi: ufs: Synchronize SCSI and UFS error handling"
        scsi: bsg: Fix device unregistration
        scsi: sd: Make sd_spinup_disk() less noisy
        scsi: ufs: ufs-pci: Fix Intel LKF link stability
        scsi: mpt3sas: Clean up some inconsistent indenting
        scsi: megaraid: Clean up some inconsistent indenting
        scsi: sr: Fix spelling mistake "does'nt" -> "doesn't"
        scsi: Remove SCSI CDROM MAINTAINERS entry
        scsi: megaraid: Fix Coccinelle warning
        ...
      bb19237b