Skip to content
Permalink
Daniel-Latypov…
Switch branches/tags

Commits on Apr 13, 2021

  1. kunit: add unit test for filtering suites by names

    This adds unit tests for kunit_filter_subsuite() and
    kunit_filter_suites().
    
    Note: what the executor means by "subsuite" is the array of suites
    corresponding to each test file.
    
    This patch lightly refactors executor.c to avoid the use of global
    variables to make it testable.
    It also includes a clever `kfree_at_end()` helper that makes this test
    easier to write than it otherwise would have been.
    
    Tested by running just the new tests using itself
    $ ./tools/testing/kunit/kunit.py run '*exec*'
    
    Signed-off-by: Daniel Latypov <dlatypov@google.com>
    dlatypov authored and intel-lab-lkp committed Apr 13, 2021

Commits on Apr 2, 2021

  1. Merge tag 'lto-v5.12-rc6' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/kees/linux
    
    Pull LTO fix from Kees Cook:
     "It seems that there is a bug in ld.bfd when doing module section
      merging.
    
      As explicit merging is only needed for LTO, the work-around is to only
      do it under LTO, leaving the original section layout choices alone
      under normal builds:
    
       - Only perform explicit module section merges under LTO (Sean
         Christopherson)"
    
    * tag 'lto-v5.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
      kbuild: lto: Merge module sections if and only if CONFIG_LTO_CLANG is enabled
    torvalds committed Apr 2, 2021

Commits on Apr 1, 2021

  1. kbuild: lto: Merge module sections if and only if CONFIG_LTO_CLANG is…

    … enabled
    
    Merge module sections only when using Clang LTO. With ld.bfd, merging
    sections does not appear to update the symbol tables for the module,
    e.g. 'readelf -s' shows the value that a symbol would have had, if
    sections were not merged. ld.lld does not show this problem.
    
    The stale symbol table breaks gdb's function disassembler, and presumably
    other things, e.g.
    
      gdb -batch -ex "file arch/x86/kvm/kvm.ko" -ex "disassemble kvm_init"
    
    reads the wrong bytes and dumps garbage.
    
    Fixes: dd27762 ("kbuild: lto: merge module sections")
    Cc: Nick Desaulniers <ndesaulniers@google.com>
    Signed-off-by: Sean Christopherson <seanjc@google.com>
    Reviewed-by: Sami Tolvanen <samitolvanen@google.com>
    Tested-by: Sami Tolvanen <samitolvanen@google.com>
    Signed-off-by: Kees Cook <keescook@chromium.org>
    Link: https://lore.kernel.org/r/20210322234438.502582-1-seanjc@google.com
    sean-jc authored and kees committed Apr 1, 2021
  2. Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

    Pull kvm fixes from Paolo Bonzini:
     "It's a bit larger than I (and probably you) would like by the time we
      get to -rc6, but perhaps not entirely unexpected since the changes in
      the last merge window were larger than usual.
    
      x86:
       - Fixes for missing TLB flushes with TDP MMU
    
       - Fixes for race conditions in nested SVM
    
       - Fixes for lockdep splat with Xen emulation
    
       - Fix for kvmclock underflow
    
       - Fix srcdir != builddir builds
    
       - Other small cleanups
    
      ARM:
       - Fix GICv3 MMIO compatibility probing
    
       - Prevent guests from using the ARMv8.4 self-hosted tracing
         extension"
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
      selftests: kvm: Check that TSC page value is small after KVM_SET_CLOCK(0)
      KVM: x86: Prevent 'hv_clock->system_time' from going negative in kvm_guest_time_update()
      KVM: x86: disable interrupts while pvclock_gtod_sync_lock is taken
      KVM: x86: reduce pvclock_gtod_sync_lock critical sections
      KVM: SVM: ensure that EFER.SVME is set when running nested guest or on nested vmexit
      KVM: SVM: load control fields from VMCB12 before checking them
      KVM: x86/mmu: Don't allow TDP MMU to yield when recovering NX pages
      KVM: x86/mmu: Ensure TLBs are flushed for TDP MMU during NX zapping
      KVM: x86/mmu: Ensure TLBs are flushed when yielding during GFN range zap
      KVM: make: Fix out-of-source module builds
      selftests: kvm: make hardware_disable_test less verbose
      KVM: x86/vPMU: Forbid writing to MSR_F15H_PERF MSRs when guest doesn't have X86_FEATURE_PERFCTR_CORE
      KVM: x86: remove unused declaration of kvm_write_tsc()
      KVM: clean up the unused argument
      tools/kvm_stat: Add restart delay
      KVM: arm64: Fix CPU interface MMIO compatibility detection
      KVM: arm64: Disable guest access to trace filter controls
      KVM: arm64: Hide system instruction access to Trace registers
    torvalds committed Apr 1, 2021
  3. Merge tag 'drm-fixes-2021-04-02' of git://anongit.freedesktop.org/drm…

    …/drm
    
    Pull drm fixes from Dave Airlie:
     "Things have settled down in time for Easter, a random smattering of
      small fixes across a few drivers.
    
      I'm guessing though there might be some i915 and misc fixes out there
      I haven't gotten yet, but since today is a public holiday here, I'm
      sending this early so I can have the day off, I'll see if more
      requests come in and decide what to do with them later.
    
      amdgpu:
       - Polaris idle power fix
       - VM fix
       - Vangogh S3 fix
       - Fixes for non-4K page sizes
    
      amdkfd:
       - dqm fence memory corruption fix
    
      tegra:
       - lockdep warning fix
       - runtine PM reference fix
       - display controller fix
       - PLL Fix
    
      imx:
       - memory leak in error path fix
       - LDB driver channel registration fix
       - oob array warning in LDB driver
    
      exynos
       - unused header file removal"
    
    * tag 'drm-fixes-2021-04-02' of git://anongit.freedesktop.org/drm/drm:
      drm/amdgpu: check alignment on CPU page for bo map
      drm/amdgpu: Set a suitable dev_info.gart_page_size
      drm/amdgpu/vangogh: don't check for dpm in is_dpm_running when in suspend
      drm/amdkfd: dqm fence memory corruption
      drm/tegra: sor: Grab runtime PM reference across reset
      drm/tegra: dc: Restore coupling of display controllers
      gpu: host1x: Use different lock classes for each client
      drm/tegra: dc: Don't set PLL clock to 0Hz
      drm/amdgpu: fix offset calculation in amdgpu_vm_bo_clear_mappings()
      drm/amd/pm: no need to force MCLK to highest when no display connected
      drm/exynos/decon5433: Remove the unused include statements
      drm/imx: imx-ldb: fix out of bounds array access warning
      drm/imx: imx-ldb: Register LDB channel1 when it is the only channel to be used
      drm/imx: fix memory leak when fails to init
    torvalds committed Apr 1, 2021
  4. Merge tag 'imx-drm-fixes-2021-04-01' of git://git.pengutronix.de/git/…

    …pza/linux into drm-fixes
    
    drm/imx: imx-drm-core and imx-ldb fixes
    
    Fix a memory leak in an error path during DRM device initialization,
    fix the LDB driver to register channel 1 even if channel 0 is unused,
    and fix an out of bounds array access warning in the LDB driver.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    
    From: Philipp Zabel <p.zabel@pengutronix.de>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210401092235.GA13586@pengutronix.de
    airlied committed Apr 1, 2021
  5. Merge tag 'drm/tegra/for-5.12-rc6' of ssh://git.freedesktop.org/git/t…

    …egra/linux into drm-fixes
    
    drm/tegra: Fixes for v5.12-rc6
    
    This contains a couple of fixes for various issues such as lockdep
    warnings, runtime PM references, coupled display controllers and
    misconfigured PLLs.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    
    From: Thierry Reding <thierry.reding@gmail.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210401163352.3348296-1-thierry.reding@gmail.com
    airlied committed Apr 1, 2021
  6. Merge tag 'sound-5.12-rc6' of git://git.kernel.org/pub/scm/linux/kern…

    …el/git/tiwai/sound
    
    Pull sound fixes from Takashi Iwai:
     "Things seem calming down, only usual device-specific fixes for
      HD-audio and USB-audio at this time"
    
    * tag 'sound-5.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
      ALSA: hda/realtek: fix mute/micmute LEDs for HP 640 G8
      ALSA: hda: Add missing sanity checks in PM prepare/complete callbacks
      ALSA: hda: Re-add dropped snd_poewr_change_state() calls
      ALSA: usb-audio: Apply sample rate quirk to Logitech Connect
      ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook
      ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO
    torvalds committed Apr 1, 2021
  7. Merge tag 'tomoyo-pr-20210401' of git://git.osdn.net/gitroot/tomoyo/t…

    …omoyo-test1
    
    Pull tomory fix from Tetsuo Handa:
     "An update on 'tomoyo: recognize kernel threads correctly' from Jens
      Axboe to not special case PF_IO_WORKER for PF_KTHREAD"
    
    * tag 'tomoyo-pr-20210401' of git://git.osdn.net/gitroot/tomoyo/tomoyo-test1:
      tomoyo: don't special case PF_IO_WORKER for PF_KTHREAD
    torvalds committed Apr 1, 2021
  8. Merge tag 'xarray-5.12' of git://git.infradead.org/users/willy/xarray

    Pull XArray fixes from Matthew Wilcox:
     "My apologies for the lateness of this. I had a bug reported in the
      test suite, and when I started working on it, I realised I had two
      fixes sitting in the xarray tree since last November. Anyway,
      everything here is fixes, apart from adding xa_limit_16b. The test
      suite passes.
    
      Summary:
    
       - Fix a bug when splitting to a non-zero order
    
       - Documentation fix
    
       - Add a predefined 16-bit allocation limit
    
       - Various test suite fixes"
    
    * tag 'xarray-5.12' of git://git.infradead.org/users/willy/xarray:
      idr test suite: Improve reporting from idr_find_test_1
      idr test suite: Create anchor before launching throbber
      idr test suite: Take RCU read lock in idr_find_test_1
      radix tree test suite: Register the main thread with the RCU library
      radix tree test suite: Fix compilation
      XArray: Add xa_limit_16b
      XArray: Fix splitting to non-zero orders
      XArray: Fix split documentation
    torvalds committed Apr 1, 2021
  9. idr test suite: Improve reporting from idr_find_test_1

    Instead of just reporting an assertion failure, report enough information
    that we can start diagnosing exactly went wrong.
    
    Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
    Matthew Wilcox (Oracle) committed Apr 1, 2021
  10. idr test suite: Create anchor before launching throbber

    The throbber could race with creation of the anchor entry and cause the
    IDR to have zero entries in it, which would cause the test to fail.
    
    Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
    Matthew Wilcox (Oracle) committed Apr 1, 2021
  11. idr test suite: Take RCU read lock in idr_find_test_1

    When run on a single CPU, this test would frequently access already-freed
    memory.  Due to timing, this bug never showed up on multi-CPU tests.
    
    Reported-by: Chris von Recklinghausen <crecklin@redhat.com>
    Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
    Matthew Wilcox (Oracle) committed Apr 1, 2021
  12. radix tree test suite: Register the main thread with the RCU library

    Several test runners register individual worker threads with the
    RCU library, but neglect to register the main thread, which can lead
    to objects being freed while the main thread is in what appears to be
    an RCU critical section.
    
    Reported-by: Chris von Recklinghausen <crecklin@redhat.com>
    Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
    Matthew Wilcox (Oracle) committed Apr 1, 2021
  13. selftests: kvm: Check that TSC page value is small after KVM_SET_CLOC…

    …K(0)
    
    Add a test for the issue when KVM_SET_CLOCK(0) call could cause
    TSC page value to go very big because of a signedness issue around
    hv_clock->system_time.
    
    Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
    Message-Id: <20210326155551.17446-3-vkuznets@redhat.com>
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    vittyvk authored and bonzini committed Apr 1, 2021
  14. KVM: x86: Prevent 'hv_clock->system_time' from going negative in kvm_…

    …guest_time_update()
    
    When guest time is reset with KVM_SET_CLOCK(0), it is possible for
    'hv_clock->system_time' to become a small negative number. This happens
    because in KVM_SET_CLOCK handling we set 'kvm->arch.kvmclock_offset' based
    on get_kvmclock_ns(kvm) but when KVM_REQ_CLOCK_UPDATE is handled,
    kvm_guest_time_update() does (masterclock in use case):
    
    hv_clock.system_time = ka->master_kernel_ns + v->kvm->arch.kvmclock_offset;
    
    And 'master_kernel_ns' represents the last time when masterclock
    got updated, it can precede KVM_SET_CLOCK() call. Normally, this is not a
    problem, the difference is very small, e.g. I'm observing
    hv_clock.system_time = -70 ns. The issue comes from the fact that
    'hv_clock.system_time' is stored as unsigned and 'system_time / 100' in
    compute_tsc_page_parameters() becomes a very big number.
    
    Use 'master_kernel_ns' instead of get_kvmclock_ns() when masterclock is in
    use and get_kvmclock_base_ns() when it's not to prevent 'system_time' from
    going negative.
    
    Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
    Message-Id: <20210331124130.337992-2-vkuznets@redhat.com>
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    vittyvk authored and bonzini committed Apr 1, 2021
  15. KVM: x86: disable interrupts while pvclock_gtod_sync_lock is taken

    pvclock_gtod_sync_lock can be taken with interrupts disabled if the
    preempt notifier calls get_kvmclock_ns to update the Xen
    runstate information:
    
       spin_lock include/linux/spinlock.h:354 [inline]
       get_kvmclock_ns+0x25/0x390 arch/x86/kvm/x86.c:2587
       kvm_xen_update_runstate+0x3d/0x2c0 arch/x86/kvm/xen.c:69
       kvm_xen_update_runstate_guest+0x74/0x320 arch/x86/kvm/xen.c:100
       kvm_xen_runstate_set_preempted arch/x86/kvm/xen.h:96 [inline]
       kvm_arch_vcpu_put+0x2d8/0x5a0 arch/x86/kvm/x86.c:4062
    
    So change the users of the spinlock to spin_lock_irqsave and
    spin_unlock_irqrestore.
    
    Reported-by: syzbot+b282b65c2c68492df769@syzkaller.appspotmail.com
    Fixes: 30b5c85 ("KVM: x86/xen: Add support for vCPU runstate information")
    Cc: David Woodhouse <dwmw@amazon.co.uk>
    Cc: Marcelo Tosatti <mtosatti@redhat.com>
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    bonzini committed Apr 1, 2021
  16. KVM: x86: reduce pvclock_gtod_sync_lock critical sections

    There is no need to include changes to vcpu->requests into
    the pvclock_gtod_sync_lock critical section.  The changes to
    the shared data structures (in pvclock_update_vm_gtod_copy)
    already occur under the lock.
    
    Cc: David Woodhouse <dwmw@amazon.co.uk>
    Cc: Marcelo Tosatti <mtosatti@redhat.com>
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    bonzini committed Apr 1, 2021
  17. KVM: SVM: ensure that EFER.SVME is set when running nested guest or o…

    …n nested vmexit
    
    Fixing nested_vmcb_check_save to avoid all TOC/TOU races
    is a bit harder in released kernels, so do the bare minimum
    by avoiding that EFER.SVME is cleared.  This is problematic
    because svm_set_efer frees the data structures for nested
    virtualization if EFER.SVME is cleared.
    
    Also check that EFER.SVME remains set after a nested vmexit;
    clearing it could happen if the bit is zero in the save area
    that is passed to KVM_SET_NESTED_STATE (the save area of the
    nested state corresponds to the nested hypervisor's state
    and is restored on the next nested vmexit).
    
    Cc: stable@vger.kernel.org
    Fixes: 2fcf487 ("KVM: nSVM: implement on demand allocation of the nested state")
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    bonzini committed Apr 1, 2021
  18. KVM: SVM: load control fields from VMCB12 before checking them

    Avoid races between check and use of the nested VMCB controls.  This
    for example ensures that the VMRUN intercept is always reflected to the
    nested hypervisor, instead of being processed by the host.  Without this
    patch, it is possible to end up with svm->nested.hsave pointing to
    the MSR permission bitmap for nested guests.
    
    This bug is CVE-2021-29657.
    
    Reported-by: Felix Wilhelm <fwilhelm@google.com>
    Cc: stable@vger.kernel.org
    Fixes: 2fcf487 ("KVM: nSVM: implement on demand allocation of the nested state")
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    bonzini committed Apr 1, 2021
  19. Merge tag 'amd-drm-fixes-5.12-2021-03-31' of https://gitlab.freedeskt…

    …op.org/agd5f/linux into drm-fixes
    
    amd-drm-fixes-5.12-2021-03-31:
    
    amdgpu:
    - Polaris idle power fix
    - VM fix
    - Vangogh S3 fix
    - Fixes for non-4K page sizes
    
    amdkfd:
    - dqm fence memory corruption fix
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    From: Alex Deucher <alexander.deucher@amd.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210401020057.17831-1-alexander.deucher@amd.com
    airlied committed Apr 1, 2021
  20. Merge tag 'exynos-drm-fixes-for-v5.12-rc6' of git://git.kernel.org/pu…

    …b/scm/linux/kernel/git/daeinki/drm-exynos into drm-fixes
    
    Just one cleanup which drops of_gpio.h inclusion.
    - This header file isn't used anymore so drop it.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    
    From: Inki Dae <inki.dae@samsung.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/1617016858-14081-1-git-send-email-inki.dae@samsung.com
    airlied committed Apr 1, 2021
  21. drm/amdgpu: check alignment on CPU page for bo map

    The page table of AMDGPU requires an alignment to CPU page so we should
    check ioctl parameters for it.  Return -EINVAL if some parameter is
    unaligned to CPU page, instead of corrupt the page table sliently.
    
    Reviewed-by: Christian König <christian.koenig@amd.com>
    Signed-off-by: Xi Ruoyao <xry111@mengyan1223.wang>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Cc: stable@vger.kernel.org
    xry111 authored and Alex Deucher committed Apr 1, 2021
  22. drm/amdgpu: Set a suitable dev_info.gart_page_size

    In Mesa, dev_info.gart_page_size is used for alignment and it was
    set to AMDGPU_GPU_PAGE_SIZE(4KB). However, the page table of AMDGPU
    driver requires an alignment on CPU pages.  So, for non-4KB page system,
    gart_page_size should be max_t(u32, PAGE_SIZE, AMDGPU_GPU_PAGE_SIZE).
    
    Signed-off-by: Rui Wang <wangr@lemote.com>
    Signed-off-by: Huacai Chen <chenhc@lemote.com>
    Link: loongson-community/linux-stable@caa9c0a1
    [Xi: rebased for drm-next, use max_t for checkpatch,
         and reworded commit message.]
    Signed-off-by: Xi Ruoyao <xry111@mengyan1223.wang>
    BugLink: https://gitlab.freedesktop.org/drm/amd/-/issues/1549
    Tested-by: Dan Horák <dan@danny.cz>
    Reviewed-by: Christian König <christian.koenig@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Cc: stable@vger.kernel.org
    chenhuacai authored and Alex Deucher committed Apr 1, 2021
  23. drm/amdgpu/vangogh: don't check for dpm in is_dpm_running when in sus…

    …pend
    
    Do the same thing we do for Renoir.  We can check, but since
    the sbios has started DPM, it will always return true which
    causes the driver to skip some of the SMU init when it shouldn't.
    
    Reviewed-by: Zhan Liu <zhan.liu@amd.com>
    Acked-by: Evan Quan <evan.quan@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Cc: stable@vger.kernel.org
    Alex Deucher committed Apr 1, 2021
  24. drm/amdkfd: dqm fence memory corruption

    Amdgpu driver uses 4-byte data type as DQM fence memory,
    and transmits GPU address of fence memory to microcode
    through query status PM4 message. However, query status
    PM4 message definition and microcode processing are all
    processed according to 8 bytes. Fence memory only allocates
    4 bytes of memory, but microcode does write 8 bytes of memory,
    so there is a memory corruption.
    
    Changes since v1:
      * Change dqm->fence_addr as a u64 pointer to fix this issue,
    also fix up query_status and amdkfd_fence_wait_timeout function
    uses 64 bit fence value to make them consistent.
    
    Signed-off-by: Qu Huang <jinsdb@126.com>
    Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
    Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Cc: stable@vger.kernel.org
    jinsdb authored and Alex Deucher committed Apr 1, 2021

Commits on Mar 31, 2021

  1. Merge tag 'trace-v5.12-rc5' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/rostedt/linux-trace
    
    Pull ftrace fix from Steven Rostedt:
     "Add check of order < 0 before calling free_pages()
    
      The function addresses that are traced by ftrace are stored in pages,
      and the size is held in a variable. If there's some error in creating
      them, the allocate ones will be freed. In this case, it is possible
      that the order of pages to be freed may end up being negative due to a
      size of zero passed to get_count_order(), and then that negative
      number will cause free_pages() to free a very large section.
    
      Make sure that does not happen"
    
    * tag 'trace-v5.12-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
      ftrace: Check if pages were allocated before calling free_pages()
    torvalds committed Mar 31, 2021
  2. Merge tag 'pinctrl-v5.12-2' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/linusw/linux-pinctrl
    
    Pull pin control fixes from Linus Walleij:
     "Some overly ripe fixes for the v5.12 kernel. I should have sent
      earlier but had my head stuck in GDB.
    
      All are driver fixes:
    
       - Fix up some Intel GPIO base calculations.
    
       - Fix a register offset in the Microchip driver.
    
       - Fix suspend/resume bug in the Rockchip driver.
    
       - Default pull up strength in the Qualcomm LPASS driver.
    
       - Fix two pingroup offsets in the Qualcomm SC7280 driver.
    
       - Fix SDC1 register offset in the Qualcomm SC7280 driver.
    
       - Fix a nasty string concatenation in the Qualcomm SDX55 driver.
    
       - Check the REVID register to see if the device is real or
         virtualized during virtualization in the Intel driver"
    
    * tag 'pinctrl-v5.12-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
      pinctrl: intel: check REVID register value for device presence
      pinctrl: qcom: fix unintentional string concatenation
      pinctrl: qcom: sc7280: Fix SDC1_RCLK configurations
      pinctrl: qcom: sc7280: Fix SDC_QDSD_PINGROUP and UFS_RESET offsets
      pinctrl: qcom: lpass lpi: use default pullup/strength values
      pinctrl: rockchip: fix restore error in resume
      pinctrl: microchip-sgpio: Fix wrong register offset for IRQ trigger
      pinctrl: intel: Show the GPIO base calculation explicitly
    torvalds committed Mar 31, 2021

Commits on Mar 30, 2021

  1. reiserfs: update reiserfs_xattrs_initialized() condition

    syzbot is reporting NULL pointer dereference at reiserfs_security_init()
    [1], for commit ab17c4f ("reiserfs: fixup xattr_root caching")
    is assuming that REISERFS_SB(s)->xattr_root != NULL in
    reiserfs_xattr_jcreate_nblocks() despite that commit made
    REISERFS_SB(sb)->priv_root != NULL && REISERFS_SB(s)->xattr_root == NULL
    case possible.
    
    I guess that commit 6cb4aff ("reiserfs: fix oops while creating
    privroot with selinux enabled") wanted to check xattr_root != NULL
    before reiserfs_xattr_jcreate_nblocks(), for the changelog is talking
    about the xattr root.
    
      The issue is that while creating the privroot during mount
      reiserfs_security_init calls reiserfs_xattr_jcreate_nblocks which
      dereferences the xattr root. The xattr root doesn't exist, so we get
      an oops.
    
    Therefore, update reiserfs_xattrs_initialized() to check both the
    privroot and the xattr root.
    
    Link: https://syzkaller.appspot.com/bug?id=8abaedbdeb32c861dc5340544284167dd0e46cde # [1]
    Reported-and-tested-by: syzbot <syzbot+690cb1e51970435f9775@syzkaller.appspotmail.com>
    Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
    Fixes: 6cb4aff ("reiserfs: fix oops while creating privroot with selinux enabled")
    Acked-by: Jeff Mahoney <jeffm@suse.com>
    Acked-by: Jan Kara <jack@suse.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Tetsuo Handa authored and torvalds committed Mar 30, 2021
  2. Merge tag 's390-5.12-5' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/s390/linux
    
    Pull s390 updates from Heiko Carstens:
    
     - fix incorrect initialization and update of vdso data pages, which
       results in incorrect tod clock steering, and that
       clock_gettime(CLOCK_MONOTONIC_RAW, ...) returns incorrect values.
    
     - update MAINTAINERS for s390 vfio drivers
    
    * tag 's390-5.12-5' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
      MAINTAINERS: add backups for s390 vfio drivers
      s390/vdso: fix initializing and updating of vdso_data
      s390/vdso: fix tod_steering_delta type
      s390/vdso: copy tod_steering_delta value to vdso_data page
    torvalds committed Mar 30, 2021
  3. drm/tegra: sor: Grab runtime PM reference across reset

    The SOR resets are exclusively shared with the SOR power domain. This
    means that exclusive access can only be granted temporarily and in order
    for that to work, a rigorous sequence must be observed. To ensure that a
    single consumer gets exclusive access to a reset, each consumer must
    implement a rigorous protocol using the reset_control_acquire() and
    reset_control_release() functions.
    
    However, these functions alone don't provide any guarantees at the
    system level. Drivers need to ensure that the only a single consumer has
    access to the reset at the same time. In order for the SOR to be able to
    exclusively access its reset, it must therefore ensure that the SOR
    power domain is not powered off by holding on to a runtime PM reference
    to that power domain across the reset assert/deassert operation.
    
    This used to work fine by accident, but was revealed when recently more
    devices started to rely on the SOR power domain.
    
    Fixes: 11c632e ("drm/tegra: sor: Implement acquire/release for reset")
    Reported-by: Jonathan Hunter <jonathanh@nvidia.com>
    Signed-off-by: Thierry Reding <treding@nvidia.com>
    Thierry Reding committed Mar 30, 2021
  4. radix tree test suite: Fix compilation

    Commit 4bba4c4 added tools/include/linux/compiler_types.h which
    includes linux/compiler-gcc.h.  Unfortunately, we had our own (empty)
    compiler_types.h which overrode the one added by that commit, and
    so we lost the definition of __must_be_array().  Removing our empty
    compiler_types.h fixes the problem and reduces our divergence from the
    rest of the tools.
    
    Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
    Matthew Wilcox (Oracle) committed Mar 30, 2021
  5. XArray: Add xa_limit_16b

    A 16-bit limit is a more common limit than I had realised.  Make it
    generally available.
    
    Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
    Matthew Wilcox (Oracle) committed Mar 30, 2021
Older