Skip to content
  1. Oct 04, 2022
  2. Aug 17, 2022
    • Linus Torvalds's avatar
      Merge tag 'nios2_fixes_v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux · 3cc40a44
      Linus Torvalds authored
      Pull NIOS2 fixes from Dinh Nguyen:
      
       - Security fixes from Al Viro
      
      * tag 'nios2_fixes_v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux:
        nios2: add force_successful_syscall_return()
        nios2: restarts apply only to the first sigframe we build...
        nios2: fix syscall restart checks
        nios2: traced syscall does need to check the syscall number
        nios2: don't leave NULLs in sys_call_table[]
        nios2: page fault et.al. are *not* restartable syscalls...
      3cc40a44
    • Linus Torvalds's avatar
      Merge tag 'spi-fix-v6.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · 339800d5
      Linus Torvalds authored
      Pull spi fixes from Mark Brown:
       "A few fixes that came in since my pull request, the Meson fix is a
        little large since it's fixing all possible cases of the problem that
        was observed with the driver and clock API trying to share
        configuration by integrating the device clocking fully with the clock
        API rather than spot fixing the one instance that was observed"
      
      * tag 'spi-fix-v6.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
        spi: dt-bindings: Drop Pratyush Yadav
        spi: meson-spicc: add local pow2 clock ops to preserve rate between messages
        MAINTAINERS: rectify entry for ARM/HPE GXP ARCHITECTURE
        spi: spi.c: Add missing __percpu annotations in users of spi_statistics
      339800d5
    • Linus Torvalds's avatar
      Merge tag 'regulator-fix-v6.0-rc1' of... · 15df6486
      Linus Torvalds authored
      Merge tag 'regulator-fix-v6.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator
      
      Pull regulator fixes from Mark Brown:
       "A couple of small fixes that came in since my pull request, nothing
        major here"
      
      * tag 'regulator-fix-v6.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
        regulator: core: Fix missing error return from regulator_bulk_get()
        regulator: pca9450: Remove restrictions for regulator-name
      15df6486
    • Linus Torvalds's avatar
      x86: simplify load_unaligned_zeropad() implementation · c4e34dd9
      Linus Torvalds authored
      
      
      The exception for the "unaligned access at the end of the page, next
      page not mapped" never happens, but the fixup code ends up causing
      trouble for compilers to optimize well.
      
      clang in particular ends up seeing it being in the middle of a loop, and
      tries desperately to optimize the exception fixup code that is never
      really reached.
      
      The simple solution is to just move all the fixups into the exception
      handler itself, which moves it all out of the hot case code, and means
      that the compiler never sees it or needs to worry about it.
      
      Acked-by: default avatarPeter Zijlstra <peterz@infradead.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c4e34dd9
    • Hector Martin's avatar
      locking/atomic: Make test_and_*_bit() ordered on failure · 415d8324
      Hector Martin authored
      
      
      These operations are documented as always ordered in
      include/asm-generic/bitops/instrumented-atomic.h, and producer-consumer
      type use cases where one side needs to ensure a flag is left pending
      after some shared data was updated rely on this ordering, even in the
      failure case.
      
      This is the case with the workqueue code, which currently suffers from a
      reproducible ordering violation on Apple M1 platforms (which are
      notoriously out-of-order) that ends up causing the TTY layer to fail to
      deliver data to userspace properly under the right conditions.  This
      change fixes that bug.
      
      Change the documentation to restrict the "no order on failure" story to
      the _lock() variant (for which it makes sense), and remove the
      early-exit from the generic implementation, which is what causes the
      missing barrier semantics in that case.  Without this, the remaining
      atomic op is fully ordered (including on ARM64 LSE, as of recent
      versions of the architecture spec).
      
      Suggested-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Cc: stable@vger.kernel.org
      Fixes: e986a0d6 ("locking/atomics, asm-generic/bitops/atomic.h: Rewrite using atomic_*() APIs")
      Fixes: 61e02392
      
       ("locking/atomic/bitops: Document and clarify ordering semantics for failed test_and_{}_bit()")
      Signed-off-by: default avatarHector Martin <marcan@marcan.st>
      Acked-by: default avatarWill Deacon <will@kernel.org>
      Reviewed-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      415d8324
  3. Aug 16, 2022