1. 08 Feb, 2021 3 commits
    • Zhihao Cheng's avatar
      btrfs: clarify error returns values in __load_free_space_cache · 3cc64e7e
      Zhihao Cheng authored
      Return value in __load_free_space_cache is not properly set after
      (unlikely) memory allocation failures and 0 is returned instead.
      This is not a problem for the caller load_free_space_cache because only
      value 1 is considered as 'cache loaded' but for clarity it's better
      to set the errors accordingly.
      
      Fixes: a67509c3 ("Btrfs: add a io_ctl struct and helpers for dealing with the space cache")
      Reported-by: default avatarHulk Robot <hulkci@huawei.com>
      Signed-off-by: default avatarZhihao Cheng <chengzhihao1@huawei.com>
      Reviewed-by: default avatarDavid Sterba <dsterba@suse.com>
      Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
      3cc64e7e
    • Josef Bacik's avatar
      btrfs: fix error handling in commit_fs_roots · 4f4317c1
      Josef Bacik authored
      While doing error injection I would sometimes get a corrupt file system.
      This is because I was injecting errors at btrfs_search_slot, but would
      only do it one time per stack.  This uncovered a problem in
      commit_fs_roots, where if we get an error we would just break.  However
      we're in a nested loop, the first loop being a loop to find all the
      dirty fs roots, and then subsequent root updates would succeed clearing
      the error value.
      
      This isn't likely to happen in real scenarios, however we could
      potentially get a random ENOMEM once and then not again, and we'd end up
      with a corrupted file system.  Fix this by moving the error checking
      around a bit to the main loop, as this is the only place where something
      will fail, and return the error as soon as it occurs.
      
      With this patch my reproducer no longer corrupts the file system.
      Signed-off-by: default avatarJosef Bacik <josef@toxicpanda.com>
      Reviewed-by: default avatarDavid Sterba <dsterba@suse.com>
      Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
      4f4317c1
    • Linus Torvalds's avatar
      Merge tag 'trace-v5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · e0756cfc
      Linus Torvalds authored
      Pull tracing fix from Steven Rostedt:
       "Fix output of top level event tracing 'enable' file.
      
        When writing a tool for enabling events in the tracing system, an
        anomaly was discovered. The top level event 'enable' file would never
        show '1' when all events were enabled.
      
        The system and event 'enable' files worked as expected.
      
        The reason was because the top level event 'enable' file included the
        'ftrace' tracer events, which are not controlled by the 'enable' file
        and would cause the output to be wrong. This appears to have been a
        bug since it was created"
      
      * tag 'trace-v5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracing: Do not count ftrace events in top level enable output
      e0756cfc
  2. 07 Feb, 2021 9 commits
    • Linus Torvalds's avatar
      Linux 5.11-rc7 · 92bf2261
      Linus Torvalds authored
      92bf2261
    • Linus Torvalds's avatar
      Merge tag 'libnvdimm-fixes-5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · b75dba7f
      Linus Torvalds authored
      Pull libnvdimm fixes from Dan Williams:
       "A fix for a crash scenario that has been present since the initial
        merge, a minor regression in sysfs attribute visibility, and a fix for
        some flexible array warnings.
      
        The bulk of this pull is an update to the libnvdimm unit test
        infrastructure to test non-ACPI platforms. Given there is zero
        regression risk for test updates, and the tests enable validation of
        bits headed towards the next merge window, I saw no reason to hold the
        new tests back. Santosh originally submitted this before the v5.11
        window opened.
      
        Summary:
      
         - Fix a crash when sysfs accesses race 'dimm' driver probe/remove.
      
         - Fix a regression in 'resource' attribute visibility necessary for
           mapping badblocks and other physical address interrogations.
      
         - Fix some flexible array warnings
      
         - Expand the unit test infrastructure for non-ACPI platforms"
      
      * tag 'libnvdimm-fixes-5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        libnvdimm/dimm: Avoid race between probe and available_slots_show()
        ndtest: Add papr health related flags
        ndtest: Add nvdimm control functions
        ndtest: Add regions and mappings to the test buses
        ndtest: Add dimm attributes
        ndtest: Add dimms to the two buses
        ndtest: Add compatability string to treat it as PAPR family
        testing/nvdimm: Add test module for non-nfit platforms
        libnvdimm/namespace: Fix visibility of namespace resource attribute
        libnvdimm/pmem: Remove unused header
        ACPI: NFIT: Fix flexible_array.cocci warnings
      b75dba7f
    • Linus Torvalds's avatar
      Merge tag 'dma-mapping-5.11-2' of git://git.infradead.org/users/hch/dma-mapping · ff92acb2
      Linus Torvalds authored
      Pull dma-mapping fix from Christoph Hellwig:
       "Fix a 32 vs 64-bit padding issue in the new benchmark code (Barry
        Song)"
      
      * tag 'dma-mapping-5.11-2' of git://git.infradead.org/users/hch/dma-mapping:
        dma-mapping: benchmark: use u8 for reserved field in uAPI structure
      ff92acb2
    • Linus Torvalds's avatar
      Merge tag 'irq_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · fc6c0ae5
      Linus Torvalds authored
      Pull irq fixes from Borislav Petkov:
      
       - Prevent device managed IRQ allocation helpers from returning IRQ 0
      
       - A fix for MSI activation of PCI endpoints with multiple MSIs
      
      * tag 'irq_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        genirq: Prevent [devm_]irq_alloc_desc from returning irq 0
        genirq/msi: Activate Multi-MSI early when MSI_FLAG_ACTIVATE_EARLY is set
      fc6c0ae5
    • Linus Torvalds's avatar
      Merge tag 'core_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c6792d44
      Linus Torvalds authored
      Pull syscall entry fixes from Borislav Petkov:
      
       - For syscall user dispatch, separate prctl operation from syscall
         redirection range specification before the API has been made official
         in 5.11.
      
       - Ensure tasks using the generic syscall code do trap after returning
         from a syscall when single-stepping is requested.
      
      * tag 'core_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        entry: Use different define for selector variable in SUD
        entry: Ensure trap after single-step on system call return
      c6792d44
    • Linus Torvalds's avatar
      Merge tag 'sched_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6fed85df
      Linus Torvalds authored
      Pull scheduler fix from Borislav Petkov:
       "Revert an attempt to not spread IRQ threads on isolated CPUs which has
        a bunch of problems"
      
      * tag 'sched_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        Revert "lib: Restrict cpumask_local_spread to houskeeping CPUs"
      6fed85df
    • Linus Torvalds's avatar
      Merge tag 'timers_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 814daadb
      Linus Torvalds authored
      Pull timer fixes from Borislav Petkov:
       "Two more timers-related fixes for v5.11:
      
         - Use a freezable workqueue for RTC sync because the sync can happen
           at any time and trigger suspend assertion checks in the i2c
           subsystem.
      
         - Correct a previous RTC validation change to check only bit 6 in
           register D because some Intel machines use bits 0-5"
      
      * tag 'timers_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        ntp: Use freezable workqueue for RTC synchronization
        rtc: mc146818: Dont test for bit 0-5 in Register D
      814daadb
    • Linus Torvalds's avatar
      Merge tag 'x86_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e24f9c5f
      Linus Torvalds authored
      Pull x86 fixes from Borislav Petkov:
       "I hope this is the last batch of x86/urgent updates for this round:
      
         - Remove superfluous EFI PGD range checks which lead to those
           assertions failing with certain kernel configs and LLVM.
      
         - Disable setting breakpoints on facilities involved in #DB exception
           handling to avoid infinite loops.
      
         - Add extra serialization to non-serializing MSRs (IA32_TSC_DEADLINE
           and x2 APIC MSRs) to adhere to SDM's recommendation and avoid any
           theoretical issues.
      
         - Re-add the EPB MSR reading on turbostat so that it works on older
           kernels which don't have the corresponding EPB sysfs file.
      
         - Add Alder Lake to the list of CPUs which support split lock.
      
         - Fix %dr6 register handling in order to be able to set watchpoints
           with gdb again.
      
         - Disable CET instrumentation in the kernel so that gcc doesn't add
           ENDBR64 to kernel code and thus confuse tracing"
      
      * tag 'x86_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/efi: Remove EFI PGD build time checks
        x86/debug: Prevent data breakpoints on cpu_dr7
        x86/debug: Prevent data breakpoints on __per_cpu_offset
        x86/apic: Add extra serialization for non-serializing MSRs
        tools/power/turbostat: Fallback to an MSR read for EPB
        x86/split_lock: Enable the split lock feature on another Alder Lake CPU
        x86/debug: Fix DR6 handling
        x86/build: Disable CET instrumentation in the kernel
      e24f9c5f
    • Linus Torvalds's avatar
      Merge tag 'kbuild-fixes-v5.11-2' of... · 2db138bb
      Linus Torvalds authored
      Merge tag 'kbuild-fixes-v5.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
      
      Pull Kbuild fixes from Masahiro Yamada:
      
       - Use the 'python3' command to invoke python scripts because some
         distributions do not provide the 'python' command any more.
      
       - Clean-up and update documents
      
       - Use pkg-config to search libcrypto
      
       - Fix duplicated debug flags
      
       - Ignore some more stubs in scripts/kallsyms.c
      
      * tag 'kbuild-fixes-v5.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        kallsyms: fix nonconverging kallsyms table with lld
        kbuild: fix duplicated flags in DEBUG_CFLAGS
        scripts/clang-tools: switch explicitly to Python 3
        kbuild: remove PYTHON variable
        Documentation/llvm: Add a section about supported architectures
        Revert "checkpatch: add check for keyword 'boolean' in Kconfig definitions"
        scripts: use pkg-config to locate libcrypto
        kconfig: mconf: fix HOSTCC call
        doc: gcc-plugins: update gcc-plugins.rst
        kbuild: simplify GCC_PLUGINS enablement in dummy-tools/gcc
        Documentation/Kbuild: Remove references to gcc-plugin.sh
        scripts: switch explicitly to Python 3
      2db138bb
  3. 06 Feb, 2021 10 commits
    • Linus Torvalds's avatar
      Merge tag '5.11-rc6-smb3' of git://git.samba.org/sfrench/cifs-2.6 · 825b5991
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "Three small smb3 fixes for stable"
      
      * tag '5.11-rc6-smb3' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: report error instead of invalid when revalidating a dentry fails
        smb3: fix crediting for compounding when only one request in flight
        smb3: Fix out-of-bounds bug in SMB2_negotiate()
      825b5991
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · f7455e5d
      Linus Torvalds authored
      Pull RISC-V fixes from Palmer Dabbelt:
       "A handful of fixes for this week:
      
         - A fix to avoid evalating the VA twice in virt_addr_valid, which
           fixes some WARNs under DEBUG_VIRTUAL.
      
         - Two fixes related to STRICT_KERNEL_RWX: one that fixes some
           permissions when strict is disabled, and one to fix some alignment
           issues when strict is enabled.
      
         - A fix to disallow the selection of MAXPHYSMEM_2GB on RV32, which
           isn't valid any more but may still show up in some oldconfigs.
      
        We still have the HiFive Unleashed ethernet phy reset regression, so
        there will likely be something coming next week"
      
      * tag 'riscv-for-linus-5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
        RISC-V: Define MAXPHYSMEM_1GB only for RV32
        riscv: Align on L1_CACHE_BYTES when STRICT_KERNEL_RWX
        RISC-V: Fix .init section permission update
        riscv: virt_addr_valid must check the address belongs to linear mapping
      f7455e5d
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.11-7' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · f06279ea
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
      
       - A fix for a change we made to __kernel_sigtramp_rt64() which confused
         glibc's backtrace logic, and also changed the semantics of that
         symbol, which was arguably an ABI break.
      
       - A fix for a stack overwrite in our VSX instruction emulation.
      
       - A couple of fixes for the Makefile logic in the new C VDSO.
      
      Thanks to Masahiro Yamada, Naveen N.  Rao, Raoni Fassina Firmino, and
      Ravi Bangoria.
      
      * tag 'powerpc-5.11-7' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/64/signal: Fix regression in __kernel_sigtramp_rt64() semantics
        powerpc/vdso64: remove meaningless vgettimeofday.o build rule
        powerpc/vdso: fix unnecessary rebuilds of vgettimeofday.o
        powerpc/sstep: Fix array out of bound warning
      f06279ea
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 4a7859ea
      Linus Torvalds authored
      Pull ARM fixes from Russell King:
      
       - Fix latent bug with DC21285 (Footbridge PCI bridge) configuration
         accessors that affects GCC >= 4.9.2
      
       - Fix misplaced tegra_uart_config in decompressor
      
       - Ensure signal page contents are initialised
      
       - Fix kexec oops
      
      * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm:
        ARM: kexec: fix oops after TLB are invalidated
        ARM: ensure the signal page contains defined contents
        ARM: 9043/1: tegra: Fix misplaced tegra_uart_config in decompressor
        ARM: footbridge: fix dc21285 PCI configuration accessors
      4a7859ea
    • Linus Torvalds's avatar
      Merge tag 'usb-5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 368afecb
      Linus Torvalds authored
      Pull USB fixes from Greg KH:
       "Here are some small, last-minute, USB driver fixes for 5.11-rc7
      
        They all resolve issues reported, or are a few new device ids for some
        drivers. They include:
      
         - new device ids for some usb-serial drivers
      
         - xhci fixes for a variety of reported problems
      
         - dwc3 driver bugfixes
      
         - dwc2 driver bugfixes
      
         - usblp driver bugfix
      
         - thunderbolt bugfix
      
         - few other tiny fixes
      
        All have been in linux-next with no reported issues"
      
      * tag 'usb-5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        usb: dwc2: Fix endpoint direction check in ep_from_windex
        usb: dwc3: fix clock issue during resume in OTG mode
        xhci: fix bounce buffer usage for non-sg list case
        usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720
        usb: xhci-mtk: break loop when find the endpoint to drop
        usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints
        usb: renesas_usbhs: Clear pipe running flag in usbhs_pkt_pop()
        USB: gadget: legacy: fix an error code in eth_bind()
        thunderbolt: Fix possible NULL pointer dereference in tb_acpi_add_link()
        USB: serial: option: Adding support for Cinterion MV31
        usb: xhci-mtk: fix unreleased bandwidth data
        usb: gadget: aspeed: add missing of_node_put
        USB: usblp: don't call usb_set_interface if there's a single alt
        USB: serial: cp210x: add pid/vid for WSDA-200-USB
        USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000
      368afecb
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 7c2d1835
      Linus Torvalds authored
      Pull input fixes from Dmitry Torokhov:
       "Nothing terribly interesting, just a few fixups"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: xpad - sync supported devices with fork on GitHub
        Input: ariel-pwrbutton - remove unused variable ariel_pwrbutton_id_table
        Input: goodix - add support for Goodix GT9286 chip
        dt-bindings: input: touchscreen: goodix: Add binding for GT9286 IC
        dt-bindings: input: adc-keys: clarify description
        Input: ili210x - implement pressure reporting for ILI251x
        Input: i8042 - unbreak Pegatron C15B
        Input: st1232 - wait until device is ready before reading resolution
        Input: st1232 - do not read more bytes than needed
        Input: st1232 - fix off-by-one error in resolution handling
      7c2d1835
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 964d069f
      Linus Torvalds authored
      Pull SCSI fix from James Bottomley:
       "One fix in drivers (lpfc) that stops an oops on resource exhaustion"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: lpfc: Fix EEH encountering oops with NVMe traffic
      964d069f
    • Linus Torvalds's avatar
      Merge tag 'block-5.11-2021-02-05' of git://git.kernel.dk/linux-block · eec79181
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "A few small regression fixes:
      
         - NVMe pull request from Christoph:
             - more quirks for buggy devices (Thorsten Leemhuis, Claus Stovgaard)
             - update the email address for Keith (Keith Busch)
             - fix an out of bounds access in nvmet-tcp (Sagi Grimberg)
      
         - Regression fix for BFQ shallow depth calculations introduced in
           this merge window (Lin)"
      
      * tag 'block-5.11-2021-02-05' of git://git.kernel.dk/linux-block:
        nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs
        bfq-iosched: Revert "bfq: Fix computation of shallow depth"
        update the email address for Keith Bush
        nvme-pci: ignore the subsysem NQN on Phison E16
        nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs
      eec79181
    • Linus Torvalds's avatar
      Merge tag 'io_uring-5.11-2021-02-05' of git://git.kernel.dk/linux-block · 860b45da
      Linus Torvalds authored
      Pull io_uring fixes from Jens Axboe:
       "Two small fixes that should go into 5.11:
      
         - task_work resource drop fix (Pavel)
      
         - identity COW fix (Xiaoguang)"
      
      * tag 'io_uring-5.11-2021-02-05' of git://git.kernel.dk/linux-block:
        io_uring: drop mm/files between task_work_submit
        io_uring: don't modify identity's files uncess identity is cowed
      860b45da
    • Borislav Petkov's avatar
      x86/efi: Remove EFI PGD build time checks · 816ef8d7
      Borislav Petkov authored
      With CONFIG_X86_5LEVEL, CONFIG_UBSAN and CONFIG_UBSAN_UNSIGNED_OVERFLOW
      enabled, clang fails the build with
      
        x86_64-linux-ld: arch/x86/platform/efi/efi_64.o: in function `efi_sync_low_kernel_mappings':
        efi_64.c:(.text+0x22c): undefined reference to `__compiletime_assert_354'
      
      which happens due to -fsanitize=unsigned-integer-overflow being enabled:
      
        -fsanitize=unsigned-integer-overflow: Unsigned integer overflow, where
        the result of an unsigned integer computation cannot be represented
        in its type. Unlike signed integer overflow, this is not undefined
        behavior, but it is often unintentional. This sanitizer does not check
        for lossy implicit conversions performed before such a computation
        (see -fsanitize=implicit-conversion).
      
      and that fires when the (intentional) EFI_VA_START/END defines overflow
      an unsigned long, leading to the assertion expressions not getting
      optimized away (on GCC they do)...
      
      However, those checks are superfluous: the runtime services mapping
      code already makes sure the ranges don't overshoot EFI_VA_END as the
      EFI mapping range is hardcoded. On each runtime services call, it is
      switched to the EFI-specific PGD and even if mappings manage to escape
      that last PGD, this won't remain unnoticed for long.
      
      So rip them out.
      
      See https://github.com/ClangBuiltLinux/linux/issues/256 for more info.
      Reported-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
      Reviewed-by: default avatarNathan Chancellor <nathan@kernel.org>
      Acked-by: default avatarArd Biesheuvel <ardb@kernel.org>
      Tested-by: default avatarNick Desaulniers <ndesaulniers@google.com>
      Tested-by: default avatarNathan Chancellor <nathan@kernel.org>
      Link: http://lkml.kernel.org/r/20210107223424.4135538-1-arnd@kernel.org
      816ef8d7
  4. 05 Feb, 2021 18 commits