1. 25 Jun, 2021 5 commits
    • David Gow's avatar
      kunit: Support skipped tests · 6d2426b2
      David Gow authored
      The kunit_mark_skipped() macro marks the current test as "skipped", with
      the provided reason. The kunit_skip() macro will mark the test as
      skipped, and abort the test.
      
      The TAP specification supports this "SKIP directive" as a comment after
      the "ok" / "not ok" for a test. See the "Directives" section of the TAP
      spec for details:
      https://testanything.org/tap-specification.html#directives
      
      The 'success' field for KUnit tests is replaced with a kunit_status
      enum, which can be SUCCESS, FAILURE, or SKIPPED, combined with a
      'status_comment' containing information on why a test was skipped.
      
      A new 'kunit_status' test suite is added to test this.
      Signed-off-by: default avatarDavid Gow <davidgow@google.com>
      Tested-by: default avatarMarco Elver <elver@google.com>
      Reviewed-by: default avatarDaniel Latypov <dlatypov@google.com>
      Reviewed-by: default avatarBrendan Higgins <brendanhiggins@google.com>
      Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
      6d2426b2
    • David Gow's avatar
      thunderbolt: test: Reinstate a few casts of bitfields · 824945a5
      David Gow authored
      Partially revert "thunderbolt: test: Remove some casts which are no
      longer required". It turns out that typeof() doesn't support bitfields,
      so these still need to be cast to the appropriate enum.
      
      The only mention of typeof() and bitfields I can find is in the proposal
      to standardise them:
      http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2619.htm
      
      This was caught by the kernel test robot:
      https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org/thread/FDKBHAV7QNLNFU5NBI2RKV56DWDSOLGM/
      
      Fixes: 8f0877c2 ("thunderbolt: test: Remove some casts which are no longer required")
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Signed-off-by: default avatarDavid Gow <davidgow@google.com>
      Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
      824945a5
    • Daniel Latypov's avatar
      kunit: tool: internal refactor of parser input handling · b29b14f1
      Daniel Latypov authored
      Note: this does not change the parser behavior at all (except for making
      one error message more useful). This is just an internal refactor.
      
      The TAP output parser currently operates over a List[str].
      This works, but we only ever need to be able to "peek" at the current
      line and the ability to "pop" it off.
      
      Also, using a List means we need to wait for all the output before we
      can start parsing. While this is not an issue for most tests which are
      really lightweight, we do have some longer (~5 minutes) tests.
      
      This patch introduces an LineStream wrapper class that
      * Exposes a peek()/pop() interface instead of manipulating an array
        * this allows us to more easily add debugging code [1]
      * Can consume an input from a generator
        * we can now parse results as tests are running (the parser code
        currently doesn't print until the end, so no impact yet).
      * Tracks the current line number to print better error messages
      * Would allow us to add additional features more easily, e.g. storing
        N previous lines so we can print out invalid lines in context, etc.
      
      [1] The parsing logic is currently quite fragile.
      E.g. it'll often say the kernel "CRASHED" if there's something slightly
      wrong with the output format. When debugging a test that had some memory
      corruption issues, it resulted in very misleading errors from the parser.
      
      Now we could easily add this to trace all the lines consumed and why
      +import inspect
      ...
              def pop(self) -> str:
                      n = self._next
      +               print(f'popping {n[0]}: {n[1].ljust(40, " ")}| caller={inspect.stack()[1].function}')
      
      Example output:
      popping 77: TAP version 14                          | caller=parse_tap_header
      popping 78: 1..1                                    | caller=parse_test_plan
      popping 79:     # Subtest: kunit_executor_test      | caller=parse_subtest_header
      popping 80:     1..2                                | caller=parse_subtest_plan
      popping 81:     ok 1 - parse_filter_test            | caller=parse_ok_not_ok_test_case
      popping 82:     ok 2 - filter_subsuite_test         | caller=parse_ok_not_ok_test_case
      popping 83: ok 1 - kunit_executor_test              | caller=parse_ok_not_ok_test_suite
      
      If we introduce an invalid line, we can see the parser go down the wrong path:
      popping 77: TAP version 14                          | caller=parse_tap_header
      popping 78: 1..1                                    | caller=parse_test_plan
      popping 79:     # Subtest: kunit_executor_test      | caller=parse_subtest_header
      popping 80:     1..2                                | caller=parse_subtest_plan
      popping 81:     1..2 # this is invalid!             | caller=parse_ok_not_ok_test_case
      popping 82:     ok 1 - parse_filter_test            | caller=parse_ok_not_ok_test_case
      popping 83:     ok 2 - filter_subsuite_test         | caller=parse_ok_not_ok_test_case
      popping 84: ok 1 - kunit_executor_test              | caller=parse_ok_not_ok_test_case
      [ERROR] ran out of lines before end token
      Signed-off-by: default avatarDaniel Latypov <dlatypov@google.com>
      Reviewed-by: default avatarDavid Gow <davidgow@google.com>
      Acked-by: default avatarBrendan Higgins <brendanhiggins@google.com>
      Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
      b29b14f1
    • Daniel Latypov's avatar
      lib/test: convert lib/test_list_sort.c to use KUnit · ebd09577
      Daniel Latypov authored
      Functionally, this just means that the test output will be slightly
      changed and it'll now depend on CONFIG_KUNIT=y/m.
      
      It'll still run at boot time and can still be built as a loadable
      module.
      
      There was a pre-existing patch to convert this test that I found later,
      here [1]. Compared to [1], this patch doesn't rename files and uses
      KUnit features more heavily (i.e. does more than converting pr_err()
      calls to KUNIT_FAIL()).
      
      What this conversion gives us:
      * a shorter test thanks to KUnit's macros
      * a way to run this a bit more easily via kunit.py (and
      CONFIG_KUNIT_ALL_TESTS=y) [2]
      * a structured way of reporting pass/fail
      * uses kunit-managed allocations to avoid the risk of memory leaks
      * more descriptive error messages:
        * i.e. it prints out which fields are invalid, what the expected
        values are, etc.
      
      What this conversion does not do:
      * change the name of the file (and thus the name of the module)
      * change the name of the config option
      
      Leaving these as-is for now to minimize the impact to people wanting to
      run this test. IMO, that concern trumps following KUnit's style guide
      for both names, at least for now.
      
      [1] https://lore.kernel.org/linux-kselftest/20201015014616.309000-1-vitor@massaru.org/
      [2] Can be run via
      $ ./tools/testing/kunit/kunit.py run --kunitconfig /dev/stdin <<EOF
      CONFIG_KUNIT=y
      CONFIG_TEST_LIST_SORT=y
      EOF
      
      [16:55:56] Configuring KUnit Kernel ...
      [16:55:56] Building KUnit Kernel ...
      [16:56:29] Starting KUnit Kernel ...
      [16:56:32] ============================================================
      [16:56:32] ======== [PASSED] list_sort ========
      [16:56:32] [PASSED] list_sort_test
      [16:56:32] ============================================================
      [16:56:32] Testing complete. 1 tests run. 0 failed. 0 crashed.
      [16:56:32] Elapsed time: 35.668s total, 0.001s configuring, 32.725s building, 0.000s running
      
      Note: the build time is as after a `make mrproper`.
      Signed-off-by: default avatarDaniel Latypov <dlatypov@google.com>
      Tested-by: default avatarDavid Gow <davidgow@google.com>
      Acked-by: default avatarBrendan Higgins <brendanhiggins@google.com>
      Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
      ebd09577
    • Daniel Latypov's avatar
      kunit: introduce kunit_kmalloc_array/kunit_kcalloc() helpers · 7122debb
      Daniel Latypov authored
      Add in:
      * kunit_kmalloc_array() and wire up kunit_kmalloc() to be a special
      case of it.
      * kunit_kcalloc() for symmetry with kunit_kzalloc()
      
      This should using KUnit more natural by making it more similar to the
      existing *alloc() APIs.
      
      And while we shouldn't necessarily be writing unit tests where overflow
      should be a concern, it can't hurt to be safe.
      Signed-off-by: default avatarDaniel Latypov <dlatypov@google.com>
      Reviewed-by: default avatarDavid Gow <davidgow@google.com>
      Reviewed-by: default avatarBrendan Higgins <brendanhiggins@google.com>
      Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
      7122debb
  2. 23 Jun, 2021 14 commits
  3. 11 Jun, 2021 4 commits
  4. 21 May, 2021 2 commits
    • David Gow's avatar
      Documentation: kunit: Update kunit_tool page · d7eab3df
      David Gow authored
      The kunit_tool documentation page was pretty minimal, and a bit
      outdated. Update it and flesh it out a bit.
      
      In particular,
      - Mention that .kunitconfig is now in the build directory
      - Describe the use of --kunitconfig to specify a different config
        framgent
      - Mention the split functionality (i.e., commands other than 'run')
      - Describe --raw_output and kunit.py parse
      - Mention the globbing support
      - Provide a quick overview of other options, including --build_dir and
        --alltests
      
      Note that this does overlap a little with the new running_tips page. I
      don't think it's a problem having both: this page is supposed to be a
      bit more of a reference, rather than a list of useful tips, so the fact
      that they both describe the same features isn't a problem.
      Signed-off-by: default avatarDavid Gow <davidgow@google.com>
      Reviewed-by: default avatarDaniel Latypov <dlatypov@google.com>
      Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
      d7eab3df
    • Daniel Latypov's avatar
      Documentation: kunit: add tips for running KUnit · 11dbc62a
      Daniel Latypov authored
      This is long overdue.
      
      There are several things that aren't nailed down (in-tree
      .kunitconfig's), or partially broken (GCOV on UML), but having them
      documented, warts and all, is better than having nothing.
      
      This covers a bunch of the more recent features
      * kunit_filter_glob
      * kunit.py run --kunitconfig
      * slightly more detail on building tests as modules
      * CONFIG_KUNIT_DEBUGFS
      
      By my count, the only headline features now not mentioned are the KASAN
      integration and KernelCI json output support (kunit.py run --json).
      
      And then it also discusses how to get code coverage reports under UML
      and non-UML since this is a question people have repeatedly asked.
      
      Non-UML coverage collection is no different from normal, but we should
      probably explicitly call this out.
      
      As for UML, I was able to get it working again with two small hacks.*
      E.g. with CONFIG_KUNIT=y && CONFIG_KUNIT_ALL_TESTS=y
        Overall coverage rate:
          lines......: 15.1% (18294 of 120776 lines)
          functions..: 16.8% (1860 of 11050 functions)
      
      Note: this doesn't document --alltests since this is not stable yet.
      Hopefully being run more frequently as part of KernelCI will help...
      
      *Using gcc/gcov-6 and not using uml_abort() in os_dump_core().
      I've documented these hacks in "Notes" but left TODOs for
      brendanhiggins@google.com who tracked down the runtime issue in GCC.
      To be clear: these are not issues specific to KUnit, but rather to UML.
      Signed-off-by: default avatarDaniel Latypov <dlatypov@google.com>
      Reviewed-by: default avatarDavid Gow <davidgow@google.com>
      Reviewed-by: default avatarBrendan Higgins <brendanhiggins@google.com>
      Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
      11dbc62a
  5. 16 May, 2021 7 commits
    • Linus Torvalds's avatar
      Linux 5.13-rc2 · d07f6ca9
      Linus Torvalds authored
      d07f6ca9
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.13-rc2' of... · 28183dbf
      Linus Torvalds authored
      Merge tag 'driver-core-5.13-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core fixes from Greg KH:
       "Here are two driver fixes for driver core changes that happened in
        5.13-rc1.
      
        The clk driver fix resolves a many-reported issue with booting some
        devices, and the USB typec fix resolves the reported problem of USB
        systems on some embedded boards.
      
        Both of these have been in linux-next this week with no reported
        issues"
      
      * tag 'driver-core-5.13-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        clk: Skip clk provider registration when np is NULL
        usb: typec: tcpm: Don't block probing of consumers of "connector" nodes
      28183dbf
    • Linus Torvalds's avatar
      Merge tag 'staging-5.13-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 6942d81a
      Linus Torvalds authored
      Pull staging and IIO driver fixes from Greg KH:
       "Here are some small IIO driver fixes and one Staging driver fix for
        5.13-rc2.
      
        Nothing major, just some resolutions for reported problems:
      
         - gcc-11 bogus warning fix for rtl8723bs
      
         - iio driver tiny fixes
      
        All of these have been in linux-next for many days with no reported
        issues"
      
      * tag 'staging-5.13-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        iio: tsl2583: Fix division by a zero lux_val
        iio: core: return ENODEV if ioctl is unknown
        iio: core: fix ioctl handlers removal
        iio: gyro: mpu3050: Fix reported temperature value
        iio: hid-sensors: select IIO_TRIGGERED_BUFFER under HID_SENSOR_IIO_TRIGGER
        iio: proximity: pulsedlight: Fix rumtime PM imbalance on error
        iio: light: gp2ap002: Fix rumtime PM imbalance on error
        staging: rtl8723bs: avoid bogus gcc warning
      6942d81a
    • Linus Torvalds's avatar
      Merge tag 'usb-5.13-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 4a668429
      Linus Torvalds authored
      Pull USB fixes from Greg KH:
       "Here are some small USB fixes for 5.13-rc2. They consist of a number
        of resolutions for reported issues:
      
         - typec fixes for found problems
      
         - xhci fixes and quirk additions
      
         - dwc3 driver fixes
      
         - minor fixes found by Coverity
      
         - cdc-wdm fixes for reported problems
      
        All of these have been in linux-next for a few days with no reported
        issues"
      
      * tag 'usb-5.13-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (28 commits)
        usb: core: hub: fix race condition about TRSMRCY of resume
        usb: typec: tcpm: Fix SINK_DISCOVERY current limit for Rp-default
        xhci: Add reset resume quirk for AMD xhci controller.
        usb: xhci: Increase timeout for HC halt
        xhci: Do not use GFP_KERNEL in (potentially) atomic context
        xhci: Fix giving back cancelled URBs even if halted endpoint can't reset
        xhci-pci: Allow host runtime PM as default for Intel Alder Lake xHCI
        usb: musb: Fix an error message
        usb: typec: tcpm: Fix wrong handling for Not_Supported in VDM AMS
        usb: typec: tcpm: Send DISCOVER_IDENTITY from dedicated work
        usb: typec: ucsi: Retrieve all the PDOs instead of just the first 4
        usb: fotg210-hcd: Fix an error message
        docs: usb: function: Modify path name
        usb: dwc3: omap: improve extcon initialization
        usb: typec: ucsi: Put fwnode in any case during ->probe()
        usb: typec: tcpm: Fix wrong handling in GET_SINK_CAP
        usb: dwc2: Remove obsolete MODULE_ constants from platform.c
        usb: dwc3: imx8mp: fix error return code in dwc3_imx8mp_probe()
        usb: dwc3: imx8mp: detect dwc3 core node via compatible string
        usb: dwc3: gadget: Return success always for kick transfer in ep queue
        ...
      4a668429
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2021-05-16' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8ce36481
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "Two fixes for timers:
      
         - Use the ALARM feature check in the alarmtimer core code insted of
           the old method of checking for the set_alarm() callback.
      
           Drivers can have that callback set but the feature bit cleared. If
           such a RTC device is selected then alarms wont work.
      
         - Use a proper define to let the preprocessor check whether Hyper-V
           VDSO clocksource should be active.
      
           The code used a constant in an enum with #ifdef, which evaluates to
           always false and disabled the clocksource for VDSO"
      
      * tag 'timers-urgent-2021-05-16' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        clocksource/drivers/hyper-v: Re-enable VDSO_CLOCKMODE_HVCLOCK on X86
        alarmtimer: Check RTC features instead of ops
      8ce36481
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.13b-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · f44e58bb
      Linus Torvalds authored
      Pull xen fixes from Juergen Gross:
      
       - two patches for error path fixes
      
       - a small series for fixing a regression with swiotlb with Xen on Arm
      
      * tag 'for-linus-5.13b-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/swiotlb: check if the swiotlb has already been initialized
        arm64: do not set SWIOTLB_NO_FORCE when swiotlb is required
        xen/arm: move xen_swiotlb_detect to arm/swiotlb-xen.h
        xen/unpopulated-alloc: fix error return code in fill_list()
        xen/gntdev: fix gntdev_mmap() error exit path
      f44e58bb
    • Linus Torvalds's avatar
      Merge tag 'x86_urgent_for_v5.13_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ccb013c2
      Linus Torvalds authored
      Pull x86 fixes from Borislav Petkov:
       "The three SEV commits are not really urgent material. But we figured
        since getting them in now will avoid a huge amount of conflicts
        between future SEV changes touching tip, the kvm and probably other
        trees, sending them to you now would be best.
      
        The idea is that the tip, kvm etc branches for 5.14 will all base
        ontop of -rc2 and thus everything will be peachy. What is more, those
        changes are purely mechanical and defines movement so they should be
        fine to go now (famous last words).
      
        Summary:
      
         - Enable -Wundef for the compressed kernel build stage
      
         - Reorganize SEV code to streamline and simplify future development"
      
      * tag 'x86_urgent_for_v5.13_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/boot/compressed: Enable -Wundef
        x86/msr: Rename MSR_K8_SYSCFG to MSR_AMD64_SYSCFG
        x86/sev: Move GHCB MSR protocol and NAE definitions in a common header
        x86/sev-es: Rename sev-es.{ch} to sev.{ch}
      ccb013c2
  6. 15 May, 2021 8 commits
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.13-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 63d1cb53
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
      
       - Fix a regression in the conversion of the 64-bit BookE interrupt
         entry to C.
      
       - Fix KVM hosts running with the hash MMU since the recent KVM gfn
         changes.
      
       - Fix a deadlock in our paravirt spinlocks when hcall tracing is
         enabled.
      
       - Several fixes for oopses in our runtime code patching for security
         mitigations.
      
       - A couple of minor fixes for the recent conversion of 32-bit interrupt
         entry/exit to C.
      
       - Fix __get_user() causing spurious crashes in sigreturn due to a bad
         inline asm constraint, spotted with GCC 11.
      
       - A fix for the way we track IRQ masking state vs NMI interrupts when
         using the new scv system call entry path.
      
       - A couple more minor fixes.
      
      Thanks to Cédric Le Goater, Christian Zigotzky, Christophe Leroy,
      Naveen N. Rao, Nicholas Piggin Paul Menzel, and Sean Christopherson.
      
      * tag 'powerpc-5.13-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/64e/interrupt: Fix nvgprs being clobbered
        powerpc/64s: Make NMI record implicitly soft-masked code as irqs disabled
        powerpc/64s: Fix stf mitigation patching w/strict RWX & hash
        powerpc/64s: Fix entry flush patching w/strict RWX & hash
        powerpc/64s: Fix crashes when toggling entry flush barrier
        powerpc/64s: Fix crashes when toggling stf barrier
        KVM: PPC: Book3S HV: Fix kvm_unmap_gfn_range_hv() for Hash MMU
        powerpc/legacy_serial: Fix UBSAN: array-index-out-of-bounds
        powerpc/signal: Fix possible build failure with unsafe_copy_fpr_{to/from}_user
        powerpc/uaccess: Fix __get_user() with CONFIG_CC_HAS_ASM_GOTO_OUTPUT
        powerpc/pseries: warn if recursing into the hcall tracing code
        powerpc/pseries: use notrace hcall variant for H_CEDE idle
        powerpc/pseries: Don't trace hcall tracing wrapper
        powerpc/pseries: Fix hcall tracing recursion in pv queued spinlocks
        powerpc/syscall: Calling kuap_save_and_lock() is wrong
        powerpc/interrupts: Fix kuep_unlock() call
      63d1cb53
    • Linus Torvalds's avatar
      Merge tag 'sched-urgent-2021-05-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c12a29ed
      Linus Torvalds authored
      Pull scheduler fixes from Ingo Molnar:
       "Fix an idle CPU selection bug, and an AMD Ryzen maximum frequency
        enumeration bug"
      
      * tag 'sched-urgent-2021-05-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, sched: Fix the AMD CPPC maximum performance value on certain AMD Ryzen generations
        sched/fair: Fix clearing of has_idle_cores flag in select_idle_cpu()
      c12a29ed
    • Linus Torvalds's avatar
      Merge tag 'objtool-urgent-2021-05-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e7c425b7
      Linus Torvalds authored
      Pull objtool fixes from Ingo Molnar:
       "Fix a couple of endianness bugs that crept in"
      
      * tag 'objtool-urgent-2021-05-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        objtool/x86: Fix elf_add_alternative() endianness
        objtool: Fix elf_create_undef_symbol() endianness
      e7c425b7
    • Linus Torvalds's avatar
      Merge tag 'irq-urgent-2021-05-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 077fc644
      Linus Torvalds authored
      Pull irq fix from Ingo Molnar:
       "Fix build warning on SH"
      
      * tag 'irq-urgent-2021-05-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sh: Remove unused variable
      077fc644
    • Linus Torvalds's avatar
      Merge tag 'core-urgent-2021-05-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 91b7a0f0
      Linus Torvalds authored
      Pull x86 stack randomization fix from Ingo Molnar:
       "Fix an assembly constraint that affected LLVM up to version 12"
      
      * tag 'core-urgent-2021-05-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        stack: Replace "o" output with "r" input constraint
      91b7a0f0
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · a4147415
      Linus Torvalds authored
      Merge misc fixes from Andrew Morton:
       "13 patches.
      
        Subsystems affected by this patch series: resource, squashfs, hfsplus,
        modprobe, and mm (hugetlb, slub, userfaultfd, ksm, pagealloc, kasan,
        pagemap, and ioremap)"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        mm/ioremap: fix iomap_max_page_shift
        docs: admin-guide: update description for kernel.modprobe sysctl
        hfsplus: prevent corruption in shrinking truncate
        mm/filemap: fix readahead return types
        kasan: fix unit tests with CONFIG_UBSAN_LOCAL_BOUNDS enabled
        mm: fix struct page layout on 32-bit systems
        ksm: revert "use GET_KSM_PAGE_NOLOCK to get ksm page in remove_rmap_item_from_tree()"
        userfaultfd: release page in error path to avoid BUG_ON
        squashfs: fix divide error in calculate_skip()
        kernel/resource: fix return code check in __request_free_mem_region
        mm, slub: move slub_debug static key enabling outside slab_mutex
        mm/hugetlb: fix cow where page writtable in child
        mm/hugetlb: fix F_SEAL_FUTURE_WRITE
      a4147415
    • Linus Torvalds's avatar
      Merge tag 'arc-5.13-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · f36edc55
      Linus Torvalds authored
      Pull ARC fixes from Vineet Gupta:
      
       - PAE fixes
      
       - syscall num check off-by-one bug
      
       - misc fixes
      
      * tag 'arc-5.13-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARC: mm: Use max_high_pfn as a HIGHMEM zone border
        ARC: mm: PAE: use 40-bit physical page mask
        ARC: entry: fix off-by-one error in syscall number validation
        ARC: kgdb: add 'fallthrough' to prevent a warning
        arc: Fix typos/spellos
      f36edc55
    • Linus Torvalds's avatar
      Merge tag 'block-5.13-2021-05-14' of git://git.kernel.dk/linux-block · 8f4ae0f6
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
      
       - Fix for shared tag set exit (Bart)
      
       - Correct ioctl range for zoned ioctls (Damien)
      
       - Removed dead/unused function (Lin)
      
       - Fix perf regression for shared tags (Ming)
      
       - Fix out-of-bounds issue with kyber and preemption (Omar)
      
       - BFQ merge fix (Paolo)
      
       - Two error handling fixes for nbd (Sun)
      
       - Fix weight update in blk-iocost (Tejun)
      
       - NVMe pull request (Christoph):
            - correct the check for using the inline bio in nvmet (Chaitanya
              Kulkarni)
            - demote unsupported command warnings (Chaitanya Kulkarni)
            - fix corruption due to double initializing ANA state (me, Hou Pu)
            - reset ns->file when open fails (Daniel Wagner)
            - fix a NULL deref when SEND is completed with error in nvmet-rdma
              (Michal Kalderon)
      
       - Fix kernel-doc warning (Bart)
      
      * tag 'block-5.13-2021-05-14' of git://git.kernel.dk/linux-block:
        block/partitions/efi.c: Fix the efi_partition() kernel-doc header
        blk-mq: Swap two calls in blk_mq_exit_queue()
        blk-mq: plug request for shared sbitmap
        nvmet: use new ana_log_size instead the old one
        nvmet: seset ns->file when open fails
        nbd: share nbd_put and return by goto put_nbd
        nbd: Fix NULL pointer in flush_workqueue
        blkdev.h: remove unused codes blk_account_rq
        block, bfq: avoid circular stable merges
        blk-iocost: fix weight updates of inner active iocgs
        nvmet: demote fabrics cmd parse err msg to debug
        nvmet: use helper to remove the duplicate code
        nvmet: demote discovery cmd parse err msg to debug
        nvmet-rdma: Fix NULL deref when SEND is completed with error
        nvmet: fix inline bio check for passthru
        nvmet: fix inline bio check for bdev-ns
        nvme-multipath: fix double initialization of ANA state
        kyber: fix out of bounds access when preempted
        block: uapi: fix comment about block device ioctl
      8f4ae0f6