Forum | Documentation | Website | Blog

Skip to content
Snippets Groups Projects
  1. Mar 10, 2022
  2. Mar 09, 2022
    • Linus Torvalds's avatar
      Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 9c674947
      Linus Torvalds authored
      Pull clk fixes from Stephen Boyd:
       "One more small batch of clk driver fixes:
      
         - A fix for the Qualcomm GDSC power domain delays that avoids black
           screens at boot on some more recent SoCs that use a different delay
           than the hard-coded delays in the driver.
      
         - A build fix LAN966X clk driver that let it be built on
           architectures that didn't have IOMEM"
      
      * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        clk: lan966x: Fix linking error
        clk: qcom: dispcc: Update the transition delay for MDSS GDSC
        clk: qcom: gdsc: Add support to update GDSC transition delay
      9c674947
    • Linus Torvalds's avatar
      Merge tag 'xsa396-5.17-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · b5521fe9
      Linus Torvalds authored
      Pull xen fixes from Juergen Gross:
       "Several Linux PV device frontends are using the grant table interfaces
        for removing access rights of the backends in ways being subject to
        race conditions, resulting in potential data leaks, data corruption by
        malicious backends, and denial of service triggered by malicious
        backends:
      
         - blkfront, netfront, scsifront and the gntalloc driver are testing
           whether a grant reference is still in use. If this is not the case,
           they assume that a following removal of the granted access will
           always succeed, which is not true in case the backend has mapped
           the granted page between those two operations.
      
           As a result the backend can keep access to the memory page of the
           guest no matter how the page will be used after the frontend I/O
           has finished. The xenbus driver has a similar problem, as it
           doesn't check the success of removing the granted access of a
           shared ring buffer.
      
         - blkfront, netfront, scsifront, usbfront, dmabuf, xenbus, 9p,
           kbdfront, and pvcalls are using a functionality to delay freeing a
           grant reference until it is no longer in use, but the freeing of
           the related data page is not synchronized with dropping the granted
           access.
      
           As a result the backend can keep access to the memory page even
           after it has been freed and then re-used for a different purpose.
      
         - netfront will fail a BUG_ON() assertion if it fails to revoke
           access in the rx path.
      
           This will result in a Denial of Service (DoS) situation of the
           guest which can be triggered by the backend"
      
      * tag 'xsa396-5.17-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/netfront: react properly to failing gnttab_end_foreign_access_ref()
        xen/gnttab: fix gnttab_end_foreign_access() without page specified
        xen/pvcalls: use alloc/free_pages_exact()
        xen/9p: use alloc/free_pages_exact()
        xen/usb: don't use gnttab_end_foreign_access() in xenhcd_gnttab_done()
        xen: remove gnttab_query_foreign_access()
        xen/gntalloc: don't use gnttab_query_foreign_access()
        xen/scsifront: don't use gnttab_query_foreign_access() for mapped status
        xen/netfront: don't use gnttab_query_foreign_access() for mapped status
        xen/blkfront: don't use gnttab_query_foreign_access() for mapped status
        xen/grant-table: add gnttab_try_end_foreign_access()
        xen/xenbus: don't let xenbus_grant_ring() remove grants in error case
      b5521fe9
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 3bf7edc8
      Linus Torvalds authored
      Pull arm64 build fix from Catalin Marinas:
       "Fix kernel build with clang LTO after the inclusion of the Spectre BHB
        arm64 mitigations"
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: Do not include __READ_ONCE() block in assembly files
      3bf7edc8
    • Nathan Chancellor's avatar
      ARM: Do not use NOCROSSREFS directive with ld.lld · 36168e38
      Nathan Chancellor authored
      ld.lld does not support the NOCROSSREFS directive at the moment, which
      breaks the build after commit b9baf5c8 ("ARM: Spectre-BHB
      workaround"):
      
        ld.lld: error: ./arch/arm/kernel/vmlinux.lds:34: AT expected, but got NOCROSSREFS
      
      Support for this directive will eventually be implemented, at which
      point a version check can be added. To avoid breaking the build in the
      meantime, just define NOCROSSREFS to nothing when using ld.lld, with a
      link to the issue for tracking.
      
      Cc: stable@vger.kernel.org
      Fixes: b9baf5c8 ("ARM: Spectre-BHB workaround")
      Link: https://github.com/ClangBuiltLinux/linux/issues/1609
      
      
      Signed-off-by: default avatarNathan Chancellor <nathan@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      36168e38
    • Nathan Chancellor's avatar
      arm64: Do not include __READ_ONCE() block in assembly files · 52c9f93a
      Nathan Chancellor authored
      When building arm64 defconfig + CONFIG_LTO_CLANG_{FULL,THIN}=y after
      commit 558c303c ("arm64: Mitigate spectre style branch history side
      channels"), the following error occurs:
      
        <instantiation>:4:2: error: invalid fixup for movz/movk instruction
         mov w0, #ARM_SMCCC_ARCH_WORKAROUND_3
         ^
      
      Marc figured out that moving "#include <linux/init.h>" in
      include/linux/arm-smccc.h into a !__ASSEMBLY__ block resolves it. The
      full include chain with CONFIG_LTO=y from include/linux/arm-smccc.h:
      
      include/linux/init.h
      include/linux/compiler.h
      arch/arm64/include/asm/rwonce.h
      arch/arm64/include/asm/alternative-macros.h
      arch/arm64/include/asm/assembler.h
      
      The asm/alternative-macros.h include in asm/rwonce.h only happens when
      CONFIG_LTO is set, which ultimately casues asm/assembler.h to be
      included before the definition of ARM_SMCCC_ARCH_WORKAROUND_3. As a
      result, the preprocessor does not expand ARM_SMCCC_ARCH_WORKAROUND_3 in
      __mitigate_spectre_bhb_fw, which results in the error above.
      
      Avoid this problem by just avoiding the CONFIG_LTO=y __READ_ONCE() block
      in asm/rwonce.h with assembly files, as nothing in that block is useful
      to assembly files, which allows ARM_SMCCC_ARCH_WORKAROUND_3 to be
      properly expanded with CONFIG_LTO=y builds.
      
      Fixes: e35123d8 ("arm64: lto: Strengthen READ_ONCE() to acquire when CONFIG_LTO=y")
      Cc: <stable@vger.kernel.org> # 5.11.x
      Link: https://lore.kernel.org/r/20220309155716.3988480-1-maz@kernel.org/
      
      
      Reported-by: default avatarMarc Zyngier <maz@kernel.org>
      Acked-by: default avatarJames Morse <james.morse@arm.com>
      Signed-off-by: default avatarNathan Chancellor <nathan@kernel.org>
      Link: https://lore.kernel.org/r/20220309191633.2307110-1-nathan@kernel.org
      
      
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      52c9f93a
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 37c333a5
      Linus Torvalds authored
      Pull HID fixes from Jiri Kosina:
      
       - sysfs attributes leak fix for Google Vivaldi driver (Dmitry Torokhov)
      
       - fix for potential out-of-bounds read in Thrustmaster driver (Pavel
         Skripkin)
      
       - error handling reference leak in Elo driver (Jiri Kosina)
      
       - a few new device IDs
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid:
        HID: nintendo: check the return value of alloc_workqueue()
        HID: vivaldi: fix sysfs attributes leak
        HID: hid-thrustmaster: fix OOB read in thrustmaster_interrupts
        HID: elo: Revert USB reference counting
        HID: Add support for open wheel and no attachment to T300
        HID: logitech-dj: add new lightspeed receiver id
      37c333a5
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · e7e19def
      Linus Torvalds authored
      Pull arm64 fixes from Catalin Marinas:
      
       - Fix compilation of eBPF object files that indirectly include
         mte-kasan.h.
      
       - Fix test for execute-only permissions with EPAN (Enhanced Privileged
         Access Never, ARMv8.7 feature).
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: kasan: fix include error in MTE functions
        arm64: Ensure execute-only permissions are not allowed without EPAN
      e7e19def
    • Russell King (Oracle)'s avatar
      ARM: fix co-processor register typo · 33970b03
      Russell King (Oracle) authored
      
      In the recent Spectre BHB patches, there was a typo that is only
      exposed in certain configurations: mcr p15,0,XX,c7,r5,4 should have
      been mcr p15,0,XX,c7,c5,4
      
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Fixes: b9baf5c8
      
       ("ARM: Spectre-BHB workaround")
      Signed-off-by: default avatarRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
      Acked-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      33970b03
    • Paul Semel's avatar
      arm64: kasan: fix include error in MTE functions · b859ebed
      Paul Semel authored
      
      Fix `error: expected string literal in 'asm'`.
      This happens when compiling an ebpf object file that includes
      `net/net_namespace.h` from linux kernel headers.
      
      Include trace:
           include/net/net_namespace.h:10
           include/linux/workqueue.h:9
           include/linux/timer.h:8
           include/linux/debugobjects.h:6
           include/linux/spinlock.h:90
           include/linux/workqueue.h:9
           arch/arm64/include/asm/spinlock.h:9
           arch/arm64/include/generated/asm/qrwlock.h:1
           include/asm-generic/qrwlock.h:14
           arch/arm64/include/asm/processor.h:33
           arch/arm64/include/asm/kasan.h:9
           arch/arm64/include/asm/mte-kasan.h:45
           arch/arm64/include/asm/mte-def.h:14
      
      Signed-off-by: default avatarPaul Semel <paul.semel@datadoghq.com>
      Fixes: 2cb34276 ("arm64: kasan: simplify and inline MTE functions")
      Cc: <stable@vger.kernel.org> # 5.12.x
      Link: https://lore.kernel.org/r/bacb5387-2992-97e4-0c48-1ed925905bee@gmail.com
      
      
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      b859ebed
  3. Mar 08, 2022
  4. Mar 07, 2022