1. 27 Feb, 2023 3 commits
  2. 26 Feb, 2023 22 commits
    • Linus Torvalds's avatar
      Merge tag 'rproc-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux · f3a2439f
      Linus Torvalds authored
      Pull remoteproc updates from Bjorn Andersson:
      
       - Support for PRU clients to acquire a control reference to the PRU
         instances is introduced, and the PRU now allows specifying
         firmware-name in Devicetree. sysfs is requested to be read-only when
         the remoteproc instance is consumed by another kernel driver
      
       - Support for the C7xv DSP on AM62A SoC is introduced
      
       - The Devicetree binding for the Qualcomm PAS devices are split up in
         multiple files, to better account for the differences in resources
         between them. A number of missing Devicetree bindings are added, and
         the Qualcomm WCNSS binding is converted to YAML
      
       - A few cleanups are introduced for the Mediatek SCP driver. And a
         sanity check of the firmware image is introduced in the Mediatek
         driver
      
       - For Qualcomm SC7280 ADSP support is added, MSM8953 gains ADSP and
         modem support, SM6115 and SM8550 gains ADSP, CDSP and modem support,
         and support for pronto v3 support (used on e.g. MSM8953) is added
      
       - The Qualcomm modem remoteproc driver is modified to use a no-map
         reserved-memory region for it's authentication metadata, in order to
         avoid fatal security violations caused by accesses from Linux during
         the authentication process
      
       - Support for separate loading of a Devicetree blob is added to the PAS
         driver, and support for the PAS driver to carve out DSM memory for
         the modem is added as well
      
       - The Qualcomm ADSP remoteproc driver gains support for mapping memory
         into specific range using the IOMMU. The sysmon driver is
         transitioned to strlcpy()
      
      * tag 'rproc-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux: (69 commits)
        dt-bindings: mailbox: qcom,apcs-kpss-global: drop mbox-names from example
        dt-bindings: remoteproc: qcom,glink-edge: correct label description
        dt-bindings: remoteproc: qcom,glink-rpm-edge: convert to DT schema
        dt-bindings: remoteproc: qcom,sm8550-pas: correct power domains
        remoteproc: qcom_q6v5_pas: enable sm8550 adsp & cdsp autoboot
        dt-bindings: remoteproc: qcom: Add sm6115 pas yaml file
        remoteproc: qcom: pas: Add sm6115 remoteprocs
        remoteproc: qcom: pas: Adjust the phys addr wrt the mem region
        remoteproc: qcom: fix sparse warnings
        remoteproc: qcom: replace kstrdup with kstrndup
        remoteproc: mediatek: Check the SCP image format
        remoteproc: qcom_q6v5_mss: Use a carveout to authenticate modem headers
        Revert "remoteproc: qcom_q6v5_mss: map/unmap metadata region before/after use"
        dt-bindings: remoteproc: qcom,sc7280-mss-pil: Update memory-region
        dt-bindings: remoteproc: qcom,sc7180-mss-pil: Update memory-region
        dt-bindings: remoteproc: qcom,msm8996-mss-pil: Update memory region
        dt-bindings: remoteproc: qcom,q6v5: Move MSM8996 to schema
        remoteproc: qcom_q6v5_pas: add sm8550 adsp, cdsp & mpss compatible & data
        remoteproc: qcom_q6v5_pas: add support for assigning memory to firmware
        remoteproc: qcom_q6v5_pas: add support for dtb co-firmware loading
        ...
      f3a2439f
    • Linus Torvalds's avatar
      Merge tag 'rpmsg-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux · cc38a46d
      Linus Torvalds authored
      Pull rpmsg updates from Bjorn Andersson:
      
       - rpmsg ctrl and char driver locking is ensure ordering in cases where
         the communication link is being torn down in parallel with calls to
         open(2) or poll(2)
      
       - The glink driver is refactored, to move rpm/smem-specifics out of the
         common logic and better suite further improvements, such as
         transports without a mailbox controller. The handling of remoteproc
         shutdown is improved, to fail clients immediately instead of having
         them to wait for timeouts. A driver_override memory leak is corrected
         and a few spelling improvements are introduced
      
       - glink_ssr is transitioned off strlcpy() and "gpr" is added as a valid
         child node of the glink-edge DT binding
      
      * tag 'rpmsg-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux:
        rpmsg: glink: Release driver_override
        rpmsg: glink: Avoid infinite loop on intent for missing channel
        rpmsg: glink: Fix GLINK command prefix
        rpmsg: glink: Fix spelling of peek
        rpmsg: glink: Cancel pending intent requests at removal
        rpmsg: glink: Fail qcom_glink_tx() once remove has been initiated
        rpmsg: glink: Move irq and mbox handling to transports
        rpmsg: glink: rpm: Wrap driver context
        rpmsg: glink: smem: Wrap driver context
        rpmsg: glink: Extract tx kick operation
        rpmsg: glink: Include types in qcom_glink_native.h
        rpmsg: ctrl: Add lock to rpmsg_ctrldev_remove
        rpmsg: char: Add lock to avoid race when rpmsg device is released
        rpmsg: move from strlcpy with unused retval to strscpy
        dt-bindings: remoteproc: qcom,glink-edge: add GPR node
      cc38a46d
    • Linus Torvalds's avatar
      Merge tag 'hwlock-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux · 9b0b0dd8
      Linus Torvalds authored
      Pull hwspinlock updates from Bjorn Andersson:
       "This updates the sun6i DT binding to allow (and require) #hwlock-cells
        and makes use of device_match_of_node() to slight clean up the
        condition in of_hwspin_lock_get_id()"
      
      * tag 'hwlock-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux:
        dt-bindings: hwlock: sun6i: Add #hwlock-cells to example
        dt-bindings: hwlock: sun6i: Add missing #hwlock-cells
        hwspinlock: Use device_match_of_node()
      9b0b0dd8
    • Linus Torvalds's avatar
      Merge tag 'kbuild-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · 498a1cf9
      Linus Torvalds authored
      Pull Kbuild updates from Masahiro Yamada:
      
       - Change V=1 option to print both short log and full command log
      
       - Allow V=1 and V=2 to be combined as V=12
      
       - Make W=1 detect wrong .gitignore files
      
       - Tree-wide cleanups for unused command line arguments passed to Clang
      
       - Stop using -Qunused-arguments with Clang
      
       - Make scripts/setlocalversion handle only correct release tags instead
         of any arbitrary annotated tag
      
       - Create Debian and RPM source packages without cleaning the source
         tree
      
       - Various cleanups for packaging
      
      * tag 'kbuild-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (74 commits)
        kbuild: rpm-pkg: remove unneeded KERNELRELEASE from modules/headers_install
        docs: kbuild: remove description of KBUILD_LDS_MODULE
        .gitattributes: use 'dts' diff driver for *.dtso files
        kbuild: deb-pkg: improve the usability of source package
        kbuild: deb-pkg: fix binary-arch and clean in debian/rules
        kbuild: tar-pkg: use tar rules in scripts/Makefile.package
        kbuild: make perf-tar*-src-pkg work without relying on git
        kbuild: deb-pkg: switch over to source format 3.0 (quilt)
        kbuild: deb-pkg: make .orig tarball a hard link if possible
        kbuild: deb-pkg: hide KDEB_SOURCENAME from Makefile
        kbuild: srcrpm-pkg: create source package without cleaning
        kbuild: rpm-pkg: build binary packages from source rpm
        kbuild: deb-pkg: create source package without cleaning
        kbuild: add a tool to list files ignored by git
        Documentation/llvm: add Chimera Linux, Google and Meta datacenters
        setlocalversion: use only the correct release tag for git-describe
        setlocalversion: clean up the construction of version output
        .gitignore: ignore *.cover and *.mbx
        kbuild: remove --include-dir MAKEFLAG from top Makefile
        kbuild: fix trivial typo in comment
        ...
      498a1cf9
    • Linus Torvalds's avatar
      Merge tag 'media/v6.3-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 4b8c673b
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
      
       - Removal of several VB1-only deprecated drivers: cpia2, fsl-viu, meye,
         stkwebcam, tm6000, vpfe_capture and zr364xx
      
       - saa7146 recovered from staging/deprecated. We opted to give ti a
         chance, and, instead of deprecating it, the intention is to write
         patches migrating it from VB1 to VB2.
      
       - av7110 returned from staging/deprecated/ to staging/ as we're not
         planning on dropping it any time soon
      
       - media controller API has gained experimental support for G_ROUTING
         and streams API. No drivers use it right now. We're planning to add
         one after -rc1, giving some time to experience the API and eventually
         have changes during the next development cycle
      
       - New sensor drivers: imx296, imx415, ov8858
      
       - Atomisp had lots of changes, specially on its sensor's interface,
         making atomisp sensor drivers closer to normal sensor drivers
      
       - media controller kAPI has gained some helpers to traverse pipelines
      
       - uvcvideo now better support power line control
      
       - lots of bug fixes, cleanups and driver improvements
      
      * tag 'media/v6.3-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (296 commits)
        media: imx-mipi-csis: Check csis_fmt validity before use
        media: v4l2-subdev.c: clear stream field
        media: v4l2-ctrls-api.c: move ctrl->is_new = 1 to the correct line
        media: Revert "media: saa7146: deprecate hexium_gemini/orion, mxb and ttpci"
        media: Revert "media: av7110: move to staging/media/deprecated/saa7146"
        media: imx-pxp: convert to regmap
        media: imx-pxp: Use non-threaded IRQ
        media: imx-pxp: Introduce pxp_read() and pxp_write() wrappers
        media: imx-pxp: Implement frame size enumeration
        media: imx-pxp: Pass pixel format value to find_format()
        media: imx-pxp: Add media controller support
        media: imx-pxp: Don't set bus_info manually in .querycap()
        media: imx-pxp: Sort headers alphabetically
        media: imx-pxp: add support for i.MX7D
        media: imx-pxp: make data_path_ctrl0 platform dependent
        media: imx-pxp: disable LUT block
        media: imx-pxp: explicitly disable unused blocks
        media: imx-pxp: extract helper function to setup data path
        media: imx-pxp: detect PXP version
        media: dt-bindings: media: fsl-pxp: convert to yaml
        ...
      4b8c673b
    • Linus Torvalds's avatar
      Documentation: simplify and clarify DCO contribution example language · d4563201
      Linus Torvalds authored
      Long long ago, in a more innocent time, Greg wrote the clarification for
      how the DCO should work and that you couldn't make anonymous
      contributions, because the sign-off needed to be something we could
      check back with.
      
      It was 2006, and nobody reacted to the wording, the whole Facebook 'real
      name' controversy was a decade in the future, and nobody even thought
      about it.  And despite the language, we've always accepted nicknames and
      that language was never meant to be any kind of exclusionary wording.
      
      In fact, even when it became a discussion in other adjacent projects,
      apparently nobody even thought to just clarify the language in the
      kernel docs, and instead we had projects like the CNCF that had long
      discussions about it, and wrote their own clarifications [1] of it.
      
      Just simplify the wording to the point where it shouldn't be causing
      unnecessary angst and pain, or scare away people who go by preferred
      naming.
      
      Link: https://github.com/cncf/foundation/blob/659fd32c86dc/dco-guidelines.md [1]
      Fixes: af45f32d ("We can not allow anonymous contributions to the kernel")
      Acked-by: default avatarGreg KH <gregkh@linuxfoundation.org>
      Acked-by: default avatarMichael Dolan <mdolan@linuxfoundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d4563201
    • Marek Vasut's avatar
      media: imx-mipi-csis: Check csis_fmt validity before use · 3e62aba8
      Marek Vasut authored
      The find_csis_format() may return NULL in case supported format is not
      found, check the return value of find_csis_format() before using the
      result to avoid NULL pointer dereference.
      
      Fixes: 11927d0f ("media: imx-mipi-csis: Use V4L2 subdev active state")
      Signed-off-by: default avatarMarek Vasut <marex@denx.de>
      Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
      3e62aba8
    • Hans Verkuil's avatar
      media: v4l2-subdev.c: clear stream field · 68e87ebf
      Hans Verkuil authored
      Both userspace and kernelspace can pass structs with an uninitialized
      'stream' field. Since the check_state() function checks for a non-zero
      stream field, suddenly these calls will fails with -EINVAL.
      
      So check in the wrapper functions in v4l2-subdev.c (which are used by both
      the kernel and userspace API) if V4L2_SUBDEV_FL_STREAMS is set, and if not,
      then zero the stream field.
      
      Currently no drivers set V4L2_SUBDEV_FL_STREAMS, so the stream field will
      always be set to 0.
      
      This patch might well be reverted in the future when streams support is
      fully enabled and we finalized the userspace API support for this feature.
      Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
      Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
      68e87ebf
    • Masahiro Yamada's avatar
      kbuild: rpm-pkg: remove unneeded KERNELRELEASE from modules/headers_install · 7adf14d8
      Masahiro Yamada authored
      This is a temporary workaround added by commit f6e09b07 ("kbuild:
      do not put .scmversion into the source tarball").
      
      Since commit 1cb86b6c ("kbuild: save overridden KERNELRELEASE in
      include/config/kernel.release"), the user-supplied KERNELRELEASE is
      saved in include/config/kernel.release.
      
      Remove it again.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      Reviewed-by: default avatarNathan Chancellor <nathan@kernel.org>
      7adf14d8
    • Sangmoon Kim's avatar
      docs: kbuild: remove description of KBUILD_LDS_MODULE · 29cbe6ec
      Sangmoon Kim authored
      Commit 596b0474 ("kbuild: preprocess module linker script")
      removes KBUILD_LDS_MODULE, yet the variable is still mentioned in
      kbuild documentation. Remove the reference to the now-nonexistent
      variable.
      Signed-off-by: default avatarSangmoon Kim <sangmoon.kim@samsung.com>
      Reviewed-by: default avatarNathan Chancellor <nathan@kernel.org>
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      29cbe6ec
    • Masahiro Yamada's avatar
      .gitattributes: use 'dts' diff driver for *.dtso files · ae41e0e4
      Masahiro Yamada authored
      Now we have the third extension for DT source files (overlay).
      Give the diff=dts attribute to *.dtso as well.
      
      While I was here, I merged *.c and *.o into *.[ch] and added the
      SPDX-License-Identifier.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      ae41e0e4
    • Masahiro Yamada's avatar
      kbuild: deb-pkg: improve the usability of source package · 3ab18a62
      Masahiro Yamada authored
      Improve the source package support in case the dpkg-buildpackage is
      directly used to build binary packages.
      
      For cross-compiling, you can set CROSS_COMPILE via the environment
      variable, but it is better to set it automatically - set it to
      ${DEB_HOST_GNU_TYPE}- if we are cross-compiling but not from the top
      Makefile.
      
      The generated source package may be carried to a different build
      environment, which may have a different compiler installed.
      Run olddefconfig first to set new CONFIG options to their default
      values without prompting.
      
      Take KERNELRELEASE and KBUILD_BUILD_VERSION from the version field of
      debian/changelog in case it is updated afterwards.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      3ab18a62
    • Masahiro Yamada's avatar
      kbuild: deb-pkg: fix binary-arch and clean in debian/rules · c5bf2efb
      Masahiro Yamada authored
      The clean target needs ARCH=${ARCH} to clean up the tree for the correct
      architecture. 'make (bin)deb-pkg' skips cleaning, but the preclean hook
      may be executed if dpkg-buildpackage is directly used.
      
      The binary-arch target does not need KERNELRELEASE because it is not
      updated during the installation. KBUILD_BUILD_VERSION is not needed
      either because binary-arch does not build vmlinux.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      c5bf2efb
    • Masahiro Yamada's avatar
      kbuild: tar-pkg: use tar rules in scripts/Makefile.package · 1fc90958
      Masahiro Yamada authored
      Use %.tar, %.tar.gz, %.tar.bz2, %.tar.xz, %.tar.zst rules in
      scripts/Makefile.package.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      1fc90958
    • Masahiro Yamada's avatar
      kbuild: make perf-tar*-src-pkg work without relying on git · e0ca1674
      Masahiro Yamada authored
      Currently, perf-tar*-src-pkg only uses 'git archive', but it is better
      to make it work without relying on git.
      
      The file, HEAD, which saves the commit hash, will be included in the
      tarball only when the source tree is managed by git. The git tree is
      more precisely checked; it has been copied from scripts/setlocalversion.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      e0ca1674
    • Masahiro Yamada's avatar
      kbuild: deb-pkg: switch over to source format 3.0 (quilt) · e7853995
      Masahiro Yamada authored
      Change the source format from "1.0" to "3.0 (quilt)" because it works
      more cleanly.
      
      All files except .config and debian/ go into the orig tarball.
      Add a single patch, debian/patches/config, and delete the ugly
      extend-diff-ignore patterns.
      
      The debian tarball will be compressed into *.debian.tar.xz by default.
      If you like to use a different compression mode, you can pass the
      command line option, DPKG_FLAGS=-Zgzip, for example.
      
      The orig tarball only supports gzip for now. The combination of
      gzip and xz is somewhat clumsy, but it is not a practical problem.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      Reviewed-by: default avatarNicolas Schier <nicolas@fjasle.eu>
      e7853995
    • Masahiro Yamada's avatar
      kbuild: deb-pkg: make .orig tarball a hard link if possible · b44aa8c9
      Masahiro Yamada authored
      If '..' belongs to the same filesystem, create a hard link instead of
      a copy. In most cases, you can save disk space.
      
      I do not want to use 'mv' because keeping linux.tar.gz is useful to
      avoid unneeded rebuilding of the tarball.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      Reviewed-by: default avatarNicolas Schier <nicolas@fjasle.eu>
      b44aa8c9
    • Masahiro Yamada's avatar
      kbuild: deb-pkg: hide KDEB_SOURCENAME from Makefile · 6eabebb1
      Masahiro Yamada authored
      scripts/Makefile.package does not need to know the value of
      KDEB_SOURCENAME because the source name can be taken from
      debian/changelog by using dpkg-parsechangelog.
      
      Move the default of KDEB_SOURCENAME (i.e. linux-upstream) to
      scripts/package/mkdebian.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      Reviewed-by: default avatarNicolas Schier <nicolas@fjasle.eu>
      6eabebb1
    • Masahiro Yamada's avatar
      kbuild: srcrpm-pkg: create source package without cleaning · 6fc91752
      Masahiro Yamada authored
      If you run 'make (src)rpm-pkg', all objects are lost due to 'make clean',
      which makes the incremental builds impossible.
      
      Instead of cleaning, pass the exclude list to tar's --exclude-from
      option.
      
      Previously, the .config was contained in the source tarball.
      
      With this commit, the source rpm consists of separate linux.tar.gz
      and .config.
      
      Remove stale comments. Now, 'make (src)rpm-pkg' works with O= option.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      6fc91752
    • Masahiro Yamada's avatar
      kbuild: rpm-pkg: build binary packages from source rpm · 1ec9bb70
      Masahiro Yamada authored
      The build rules of rpm-pkg and srcrpm-pkg are almost the same.
      Remove the code duplication.
      
      Change rpm-pkg to build binary packages from the source package generated
      by srcrpm-pkg.
      
      This changes the output directory of the srpm generated by 'make rpm-pkg'
      because srcrpm-pkg overrides _srcrpmdir.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      1ec9bb70
    • Masahiro Yamada's avatar
      kbuild: deb-pkg: create source package without cleaning · 7bf4582d
      Masahiro Yamada authored
      If you run 'make deb-pkg', all objects are lost due to 'make clean',
      which makes the incremental builds impossible.
      
      Instead of cleaning, pass the exclude list to tar's --exclude-from
      option.
      
      Previously, *.diff.gz contained some check-in files such as
      .clang-format, .cocciconfig.
      
      With this commit, *.diff.gz will only contain the .config and debian/.
      The other source files will go into the .orig tarball.
      
      linux.tar.gz is rebuilt only when the source files that would go into
      the tarball are changed.
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      Reviewed-by: default avatarNicolas Schier <nicolas@fjasle.eu>
      7bf4582d
    • Liam R. Howlett's avatar
      mm/mprotect: Fix successful vma_merge() of next in do_mprotect_pkey() · 2fcd07b7
      Liam R. Howlett authored
      If mprotect_fixup() successfully calls vma_merge() and replaces vma and
      the next vma, then the tmp variable in the do_mprotect_pkey() is not
      updated to point to the new vma end.  This results in the loop detecting
      a gap between VMAs that does not exist.
      
      Fix the faulty value of tmp by setting it to the end location of the vma
      iterator at the end of the loop.
      
      Link: https://lkml.kernel.org/r/20230224212055.1786100-1-Liam.Howlett@oracle.com
      Fixes: 2286a691 ("mm: change mprotect_fixup to vma iterator")
      Link: https://lore.kernel.org/linux-mm/20230223120407.729110a6ecd1416ac59d9cb0@linux-foundation.org/Signed-off-by: default avatarLiam R. Howlett <Liam.Howlett@oracle.com>
      Reported-by: default avatarBert Karwatzki <spasswolf@web.de>
      Link: https://bugzilla.kernel.org/show_bug.cgi?id=217061Tested-by: default avatarBert Karwatzki <spasswolf@web.de>
      Reported-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Link: https://lore.kernel.org/linux-mm/CAHk-=wjFmVL7NiuxL54qLkoabni_yD-oF9=dpDgETtdsiCbhUg@mail.gmail.com/Tested-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2fcd07b7
  3. 25 Feb, 2023 15 commits
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 1ec35ead
      Linus Torvalds authored
      Pull clk updates from Stephen Boyd:
       "We have one small patch to the clk core this time around. It fixes a
        corner case with the CLK_OPS_PARENT_ENABLE flag combined with
        clk_core_is_enabled() where it hangs the system. We'll simply assume
        the clk is disabled if the parent is disabled and the flag is set.
        Trying to turn on the parent to check the enable state of the clk runs
        into system hangs at boot. We let this bake in -next for a couple
        weeks to make sure there aren't any more issues because the last
        attempt to fix this ran into hangs and had to be reverted.
      
        Note: There were some more patches to the core framework around
        sync_state and disabling unused clks, but I asked for that to be
        reverted from the qcom PR because it isn't ready and we're still
        discussing the best solution on the list.
      
        Outside of the core clk framework, we have the usual collection of clk
        driver updates and support for new SoCs (which seems to never stop).
        The dirstat is dominated by Qualcomm because they added support for
        quite a few SoCs this time around and also migrated quite a few of
        their drivers to clk_parent_data. The other big diff is in the
        Mediatek clk drivers that saw a significant rework this cycle to
        similarly modernize the code, and we'll see that work continue in the
        next cycle as well. Nothing really jumps out as scary here, except
        that the significant churn in parent data descriptions can have typos
        that go unnoticed. More details below.
      
        Core:
         - Honor CLK_OPS_PARENT_ENABLE in clk_core_is_enabled()
      
        New Drivers:
         - Add a new clk-gpr-mux clock type and use it on i.MX6Q to add ENET
           ref clocks
         - Support for Mediatek MT7891 SoC clks
         - Support for many Qualcomm clk controllers:
            - QDU1000/QRU1000 global clock controller
            - SA8775P global clock controller
            - SM8550 TCSR and display clock controller
            - SM6350 clock controller
            - MSM8996 CBF and APCS clock controllers
      
        Updates:
         - Various cleanups and improvements to Mediatek clk drivers to reduce
           code size and modernize the drivers
         - Support for Versa 5P49V60 clks
         - Disable R-Car H3 ES1.*, as it was only available to an internal
           development group and needed a lot of quirks and workarounds
         - Add PWM, Compare-Match Timer (TIM), USB, SDHI, and eMMC clocks and
           resets on Renesas RZ/V2M
         - Add display clocks on Renesas R-Car V4H
         - Add Camera Receiving Unit (CRU) clocks and resets on Renesas RZ/G2L
         - Free the imx_uart_clocks even if imx_register_uart_clocks returns
           early
         - Get the stdout clocks count from device tree on i.MX
         - Drop the clock count argument from imx_register_uart_clocks()
         - Keep the uart clocks on i.MX93 for when earlycon is used
         - Fix SPDX comment in i.MX6SLL clocks bindings header
         - Drop some unnecessary spaces from i.MX8ULP clocks bindings header
         - Add imx_obtain_fixed_of_clock() for allowing to add a clock that is
           not configured via devicetree
         - Fix the ENET1 gate configuration for i.MX6UL according to the
           reference manual
         - Add ENET refclock mux support for i.MX6UL
         - Add support for USB host/device configuration on Renesas RZ/N1
         - Add PLL2 programming support, and CAN-FD clocks on Renesas R-Car
           V4H
         - Add D1 CAN bus gates and resets for Allwinner
         - Mark D1 CPUX clock as critical on Allwinner
         - Reuse D1 driver for Allwinner R528/T113
         - Cleanup sunxi-ng Kconfig
         - Fix sunxi-ng kernel-doc issues
         - Model Allwinner H3/H5 DRAM clock as fixed clock
         - Use .determine_rate() instead of .round_rate() for the dualdiv,
           mpll, sclk-div and cpu-dyn-div amlogic clock drivers
         - DDR clocks were marked as critical in the proper clock driver for
           each AT91 SoC such that drivers/memory/atmel-sdramc.c to be deleted
           in the next releases as it only does clock enablement
         - Patch to avoid compiling dt-compat.o for all AT91 SoCs as only some
           of them may use it
         - Support synchronous power_off requests in the qcom GDSC driver for
           proper GPU power collapse
         - Drop test clocks from various Qualcomm clk drivers
         - Update parent references to use clk_parent_data/clk_hw in various
           Qualcomm clk drivers
         - Fixes for the Qualcomm MSM8996 CPU clock controller
         - Transition Qualcomm MSM8974 GCC off the externally defined
           sleep_clk
         - Add GDSCs in the global clock controller for Qualcomm QCS404
         - The SDCC core clocks on Qualcomm SM6115 are moved to floor_ops
         - Programming of clk_dis_wait for GPU CX GDSC on Qualcomm SC7180 and
           SDM845 are moved to use the recently introduced properties in the
           GDSC struct
         - Qualcomm's RPMh clock driver gains SM8550 and SA8775P clocks, and
           the IPA clock is added on a variety of platforms
         - De-duplicate identical clks in Qualcomm SMD RPM clk driver
         - Add a few missing clocks across msm8998, msm8992, msm8916, qcs404
           to Qualcomm SDM RPM clk driver
         - Various Qualcomm clk drivers use devm_pm_runtime_enable() to
           simplify"
      
      * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (228 commits)
        clk: qcom: apcs-msm8986: Include bitfield.h for FIELD_PREP
        clk: qcom: Revert sync_state based clk_disable_unused
        clk: imx: pll14xx: fix recalc_rate for negative kdiv
        clk: rs9: Drop unused pin_xin field
        MAINTAINERS: clk: imx: Add Peng Fan as reviewer
        clk: sprd: Add dependency for SPRD_UMS512_CLK
        clk: ralink: fix 'mt7621_gate_is_enabled()' function
        clk: mediatek: clk-mtk: Remove unneeded semicolon
        dt-bindings: clock: remove stih416 bindings
        dt-bindings: clock: add loongson-2 clock
        dt-bindings: clock: add loongson-2 clock include file
        clk: imx: fix compile testing imxrt1050
        clk: Honor CLK_OPS_PARENT_ENABLE in clk_core_is_enabled()
        clk: imx: set imx_clk_gpr_mux_ops storage-class-specifier to static
        clk: renesas: rcar-gen3: Disable R-Car H3 ES1.*
        dt-bindings: clock: Merge qcom,gpucc-sm8350 into qcom,gpucc.yaml
        clk: qcom: gpucc-sdm845: fix clk_dis_wait being programmed for CX GDSC
        clk: qcom: gpucc-sc7180: fix clk_dis_wait being programmed for CX GDSC
        dt-bindings: clock: qcom,sa8775p-gcc: add the power-domains property
        clk: qcom: cpu-8996: add missing cputype include
        ...
      1ec35ead
    • Linus Torvalds's avatar
      Merge tag 'mailbox-v6.3' of git://git.linaro.org/landing-teams/working/fujitsu/integration · 562ed38d
      Linus Torvalds authored
      Pull mailbox updates from Jassi Brar:
      
       - qcom: misc changes to bindings for sa8775p, QDU1000/QRU1000, IPQ5332,
         SDX55, msm8976, glink-rpm-edge
      
       - sti: convert to DT schema
      
       - zynq: switch to flexible array to simplify code
      
      * tag 'mailbox-v6.3' of git://git.linaro.org/landing-teams/working/fujitsu/integration:
        dt-bindings: mailbox: qcom-ipcc: Add compatible for QDU1000/QRU1000
        mailbox: qcom-apcs-ipc: add IPQ5332 APSS clock support
        dt-bindings: mailbox: qcom: add compatible for the IPQ5332 SoC
        dt-bindings: remoteproc: qcom,glink-rpm-edge: convert to DT schema
        mailbox: qcom-apcs-ipc: enable APCS clock device for MSM8996
        dt-bindings: mailbox: qcom: add #clock-cells to msm8996 example
        dt-bindings: mailbox: qcom: add missing platforms to conditional clauses
        dt-bindings: mailbox: qcom: correct the list of platforms using clocks
        dt-bindings: mailbox: qcom: enable syscon compatible for msm8976
        dt-bindings: mailbox: qcom: add SDX55 compatible
        dt-bindings: mailbox: qcom-ipcc: document the sa8775p platform
        dt-bindings: mailbox: sti-mailbox: convert to DT schema
        mailbox: zynq: Switch to flexible array to simplify code
      562ed38d
    • Linus Torvalds's avatar
      Merge tag 'mtd/for-6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · 2e3036a2
      Linus Torvalds authored
      Pull MTD updates from Miquel Raynal:
       "MTD changes:
      
         - parsers: ofpart: add workaround for #size-cells 0
      
         - dt-bindings: partitions: Fix partition node name pattern
      
         - dataflash: remove duplicate SPI ID table
      
        Raw NAND core changes:
      
         - Check the data only read pattern only once
      
         - Prepare the late addition of supported operation checks
      
         - Support for sequential cache reads
      
         - Fix nand_chip kdoc
      
        Raw NAND driver changes:
      
         - Fsl_elbc: Propagate HW ECC settings to HW
      
         - Marvell: Add missing layouts
      
         - Pasemi: Don't use static data to track per-device state
      
         - Sunxi:
            - Fix the size of the last OOB region
            - Remove an unnecessary check
            - Remove an unnecessary check
            - Clean up chips after failed init
            - Precompute the ECC_CTL register value
            - Embed sunxi_nand_hw_ecc by value
            - Update OOB layout to match hardware
      
         - tmio_nand: Remove driver
      
         - vf610_nfc: Use regular comments for functions
      
        SPI-NAND driver changes:
      
         - Add support for AllianceMemory AS5F34G04SND
      
         - Macronix: use scratch buffer for DMA operation
      
        NAND ECC changes:
      
         - Mediatek:
            - Add ECC support fot MT7986 IC
            - Add compatible for MT7986
            - dt-bindings: Split ECC engine with rawnand controller
      
        SPI NOR changes:
      
         - Misc core fixes
      
        SPI NOR driver changes:
      
         - Spansion: Minor fixes"
      
      * tag 'mtd/for-6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (33 commits)
        mtd: parsers: ofpart: add workaround for #size-cells 0
        mtd: rawnand: sunxi: Precompute the ECC_CTL register value
        mtd: rawnand: sunxi: Embed sunxi_nand_hw_ecc by value
        mtd: rawnand: sunxi: Update OOB layout to match hardware
        mtd: spi-nor: Sort headers alphabetically
        mtd: spi-nor: Fix shift-out-of-bounds in spi_nor_set_erase_type
        mtd: nand: ecc-mtk: Add ECC support fot MT7986 IC
        dt-bindings: mtd: mediatek,nand-ecc-engine: Add compatible for MT7986
        dt-bindings: mtd: Split ECC engine with rawnand controller
        mtd: rawnand: fsl_elbc: Propagate HW ECC settings to HW
        mtd: spinand: Add support for AllianceMemory AS5F34G04SND
        dt-bindings: mtd: partitions: Fix partition node name pattern
        mtd: spi-nor: Create macros to define chip IDs and geometries
        mtd: spi-nor: spansion: Make CFRx reg fields generic
        mtd: spi-nor: spansion: Consider reserved bits in CFR5 register
        mtd: spi-nor: core: fix implicit declaration warning
        mtd: spinand: macronix: use scratch buffer for DMA operation
        mtd: rawnand: Fix nand_chip kdoc
        mtd: rawnand: vf610_nfc: use regular comments for functions
        mtd: rawnand: Support for sequential cache reads
        ...
      2e3036a2
    • Linus Torvalds's avatar
      Merge tag 'input-for-v6.3-rc0' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 60e2bf7d
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
      
       - a set of tweaks to iqs269a touch controller driver
      
       - a fix for ads7846 driver to properly handle 7845 chip
      
       - cap11xx driver will support cap1203, cap1293 and cap1298 models
      
       - xpad driver will support 8BitDo Pro 2 Wired Controller
      
       - input drivers have been switched to DEFINE_SIMPLE_DEV_PM_OPS() and
         pm_sleep_ptr()
      
       - other miscellaneous fixes and tweaks
      
      * tag 'input-for-v6.3-rc0' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (113 commits)
        dt-bindings: input: iqs626a: Redefine trackpad property types
        Input: iqs626a - drop unused device node references
        dt-bindings: input: touchscreen: st,stmfts: convert to dtschema
        Input: cyttsp5 - fix bitmask for touch buttons
        Input: exc3000 - properly stop timer on shutdown
        Input: synaptics-rmi4 - fix SPI device ID
        Input: cap11xx - add support for cap1203, cap1293 and cap1298
        dt-bindings: input: microchip,cap11xx: add cap1203, cap1293 and cap1298
        Input: pmic8xxx-keypad - fix a Kconfig spelling mistake & hyphenation
        Input: edt-ft5x06 - fix typo in a comment
        Input: tegra-kbc - use devm_platform_get_and_ioremap_resource()
        Input: st-keyscan - use devm_platform_get_and_ioremap_resource()
        Input: spear-keyboard - use devm_platform_get_and_ioremap_resource()
        Input: olpc_apsp - use devm_platform_get_and_ioremap_resource()
        Input: arc_ps2 - use devm_platform_get_and_ioremap_resource()
        Input: apbps2 - use devm_platform_get_and_ioremap_resource()
        Input: altera_ps2 - use devm_platform_get_and_ioremap_resource()
        Input: ads7846 - don't check penirq immediately for 7845
        Input: ads7846 - always set last command to PWRDOWN
        Input: ads7846 - don't report pressure for ads7845
        ...
      60e2bf7d
    • Linus Torvalds's avatar
      Merge tag 'probes-v6.3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace · 116b4116
      Linus Torvalds authored
      Pull kprobes cleanup updates from Masami Hiramatsu:
       "These are probe events cleanups, no new features but improve
        readability:
      
         - Rename print_probe_args() to trace_probe_print_args() and
           un-inline it
      
         - Introduce a set of default data fetch functions for dynamic
           probe events
      
         - Extract common code of data fetch process of dynamic probe events"
      
      * tag 'probes-v6.3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:
        kernel/trace: extract common part in process_fetch_insn
        kernel/trace: Provide default impelentations defined in trace_probe_tmpl.h
        kernel/trace: Introduce trace_probe_print_args and use it in *probes
      116b4116
    • Linus Torvalds's avatar
      Merge tag 'kcsan.2023.02.24a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu · 0447ed0d
      Linus Torvalds authored
      Pull kernel concurrency sanitizer (KCSAN) updates from Paul McKenney:
       "This fixes gcc-11 errors for x86_64 KCSAN-enabled kernel builds by
        selecting the CONSTRUCTORS Kconfig option"
      
      * tag 'kcsan.2023.02.24a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu:
        kcsan: select CONFIG_CONSTRUCTORS
      0447ed0d
    • Linus Torvalds's avatar
      Merge tag 'flex-array-transformations-6.3-rc1' of... · 472a2abb
      Linus Torvalds authored
      Merge tag 'flex-array-transformations-6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux
      
      Pull flexible-array updates from Gustavo Silva:
       "Transform zero-length arrays, in unions, into flexible arrays"
      
      * tag 'flex-array-transformations-6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux:
        bcache: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper
        mm/memremap: Replace zero-length array with DECLARE_FLEX_ARRAY() helper
        exportfs: Replace zero-length array with DECLARE_FLEX_ARRAY() helper
      472a2abb
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha · e534a583
      Linus Torvalds authored
      Pull alpha updates from Al Viro:
       "Mostly small janitorial fixes but there's also more important ones: a
        patch to fix loading large modules from Edward Humes, and some fixes
        from Al Viro"
      
      [ The fixes from Al mostly came in separately through Al's trees too and
        are now duplicated..   - Linus ]
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha:
        alpha: in_irq() cleanup
        alpha: lazy FPU switching
        alpha/boot/misc: trim unused declarations
        alpha/boot/tools/objstrip: fix the check for ELF header
        alpha/boot: fix the breakage from -isystem series...
        alpha: fix FEN fault handling
        alpha: Avoid comma separated statements
        alpha: fixed a typo in core_cia.c
        alpha: remove unused __SLOW_DOWN_IO and SLOW_DOWN_IO definitions
        alpha: update config files
        alpha: fix R_ALPHA_LITERAL reloc for large modules
        alpha: Add some spaces to ensure format specification
        alpha: replace NR_SYSCALLS by NR_syscalls
        alpha: Remove redundant local asm header redirections
        alpha: Implement "current_stack_pointer"
        alpha: remove redundant err variable
        alpha: osf_sys: reduce kernel log spamming on invalid osf_mount call typenr
      e534a583
    • Linus Torvalds's avatar
      Merge tag 'vfio-v6.3-rc1' of https://github.com/awilliam/linux-vfio · cac85e46
      Linus Torvalds authored
      Pull VFIO updates from Alex Williamson:
      
       - Remove redundant resource check in vfio-platform (Angus Chen)
      
       - Use GFP_KERNEL_ACCOUNT for persistent userspace allocations, allowing
         removal of arbitrary kernel limits in favor of cgroup control (Yishai
         Hadas)
      
       - mdev tidy-ups, including removing the module-only build restriction
         for sample drivers, Kconfig changes to select mdev support,
         documentation movement to keep sample driver usage instructions with
         sample drivers rather than with API docs, remove references to
         out-of-tree drivers in docs (Christoph Hellwig)
      
       - Fix collateral breakages from mdev Kconfig changes (Arnd Bergmann)
      
       - Make mlx5 migration support match device support, improve source and
         target flows to improve pre-copy support and reduce downtime (Yishai
         Hadas)
      
       - Convert additional mdev sysfs case to use sysfs_emit() (Bo Liu)
      
       - Resolve copy-paste error in mdev mbochs sample driver Kconfig (Ye
         Xingchen)
      
       - Avoid propagating missing reset error in vfio-platform if reset
         requirement is relaxed by module option (Tomasz Duszynski)
      
       - Range size fixes in mlx5 variant driver for missed last byte and
         stricter range calculation (Yishai Hadas)
      
       - Fixes to suspended vaddr support and locked_vm accounting, excluding
         mdev configurations from the former due to potential to indefinitely
         block kernel threads, fix underflow and restore locked_vm on new mm
         (Steve Sistare)
      
       - Update outdated vfio documentation due to new IOMMUFD interfaces in
         recent kernels (Yi Liu)
      
       - Resolve deadlock between group_lock and kvm_lock, finally (Matthew
         Rosato)
      
       - Fix NULL pointer in group initialization error path with IOMMUFD (Yan
         Zhao)
      
      * tag 'vfio-v6.3-rc1' of https://github.com/awilliam/linux-vfio: (32 commits)
        vfio: Fix NULL pointer dereference caused by uninitialized group->iommufd
        docs: vfio: Update vfio.rst per latest interfaces
        vfio: Update the kdoc for vfio_device_ops
        vfio/mlx5: Fix range size calculation upon tracker creation
        vfio: no need to pass kvm pointer during device open
        vfio: fix deadlock between group lock and kvm lock
        vfio: revert "iommu driver notify callback"
        vfio/type1: revert "implement notify callback"
        vfio/type1: revert "block on invalid vaddr"
        vfio/type1: restore locked_vm
        vfio/type1: track locked_vm per dma
        vfio/type1: prevent underflow of locked_vm via exec()
        vfio/type1: exclude mdevs from VFIO_UPDATE_VADDR
        vfio: platform: ignore missing reset if disabled at module init
        vfio/mlx5: Improve the target side flow to reduce downtime
        vfio/mlx5: Improve the source side flow upon pre_copy
        vfio/mlx5: Check whether VF is migratable
        samples: fix the prompt about SAMPLE_VFIO_MDEV_MBOCHS
        vfio/mdev: Use sysfs_emit() to instead of sprintf()
        vfio-mdev: add back CONFIG_VFIO dependency
        ...
      cac85e46
    • Linus Torvalds's avatar
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · 84cc6674
      Linus Torvalds authored
      Pull virtio updates from Michael Tsirkin:
      
       - device feature provisioning in ifcvf, mlx5
      
       - new SolidNET driver
      
       - support for zoned block device in virtio blk
      
       - numa support in virtio pmem
      
       - VIRTIO_F_RING_RESET support in vhost-net
      
       - more debugfs entries in mlx5
      
       - resume support in vdpa
      
       - completion batching in virtio blk
      
       - cleanup of dma api use in vdpa
      
       - now simulating more features in vdpa-sim
      
       - documentation, features, fixes all over the place
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost: (64 commits)
        vdpa/mlx5: support device features provisioning
        vdpa/mlx5: make MTU/STATUS presence conditional on feature bits
        vdpa: validate device feature provisioning against supported class
        vdpa: validate provisioned device features against specified attribute
        vdpa: conditionally read STATUS in config space
        vdpa: fix improper error message when adding vdpa dev
        vdpa/mlx5: Initialize CVQ iotlb spinlock
        vdpa/mlx5: Don't clear mr struct on destroy MR
        vdpa/mlx5: Directly assign memory key
        tools/virtio: enable to build with retpoline
        vringh: fix a typo in comments for vringh_kiov
        vhost-vdpa: print warning when vhost_vdpa_alloc_domain fails
        scsi: virtio_scsi: fix handling of kmalloc failure
        vdpa: Fix a couple of spelling mistakes in some messages
        vhost-net: support VIRTIO_F_RING_RESET
        vhost-scsi: convert sysfs snprintf and sprintf to sysfs_emit
        vdpa: mlx5: support per virtqueue dma device
        vdpa: set dma mask for vDPA device
        virtio-vdpa: support per vq dma device
        vdpa: introduce get_vq_dma_device()
        ...
      84cc6674
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 49d57592
      Linus Torvalds authored
      Pull kvm updates from Paolo Bonzini:
       "ARM:
      
         - Provide a virtual cache topology to the guest to avoid
           inconsistencies with migration on heterogenous systems. Non secure
           software has no practical need to traverse the caches by set/way in
           the first place
      
         - Add support for taking stage-2 access faults in parallel. This was
           an accidental omission in the original parallel faults
           implementation, but should provide a marginal improvement to
           machines w/o FEAT_HAFDBS (such as hardware from the fruit company)
      
         - A preamble to adding support for nested virtualization to KVM,
           including vEL2 register state, rudimentary nested exception
           handling and masking unsupported features for nested guests
      
         - Fixes to the PSCI relay that avoid an unexpected host SVE trap when
           resuming a CPU when running pKVM
      
         - VGIC maintenance interrupt support for the AIC
      
         - Improvements to the arch timer emulation, primarily aimed at
           reducing the trap overhead of running nested
      
         - Add CONFIG_USERFAULTFD to the KVM selftests config fragment in the
           interest of CI systems
      
         - Avoid VM-wide stop-the-world operations when a vCPU accesses its
           own redistributor
      
         - Serialize when toggling CPACR_EL1.SMEN to avoid unexpected
           exceptions in the host
      
         - Aesthetic and comment/kerneldoc fixes
      
         - Drop the vestiges of the old Columbia mailing list and add [Oliver]
           as co-maintainer
      
        RISC-V:
      
         - Fix wrong usage of PGDIR_SIZE instead of PUD_SIZE
      
         - Correctly place the guest in S-mode after redirecting a trap to the
           guest
      
         - Redirect illegal instruction traps to guest
      
         - SBI PMU support for guest
      
        s390:
      
         - Sort out confusion between virtual and physical addresses, which
           currently are the same on s390
      
         - A new ioctl that performs cmpxchg on guest memory
      
         - A few fixes
      
        x86:
      
         - Change tdp_mmu to a read-only parameter
      
         - Separate TDP and shadow MMU page fault paths
      
         - Enable Hyper-V invariant TSC control
      
         - Fix a variety of APICv and AVIC bugs, some of them real-world, some
           of them affecting architecurally legal but unlikely to happen in
           practice
      
         - Mark APIC timer as expired if its in one-shot mode and the count
           underflows while the vCPU task was being migrated
      
         - Advertise support for Intel's new fast REP string features
      
         - Fix a double-shootdown issue in the emergency reboot code
      
         - Ensure GIF=1 and disable SVM during an emergency reboot, i.e. give
           SVM similar treatment to VMX
      
         - Update Xen's TSC info CPUID sub-leaves as appropriate
      
         - Add support for Hyper-V's extended hypercalls, where "support" at
           this point is just forwarding the hypercalls to userspace
      
         - Clean up the kvm->lock vs. kvm->srcu sequences when updating the
           PMU and MSR filters
      
         - One-off fixes and cleanups
      
         - Fix and cleanup the range-based TLB flushing code, used when KVM is
           running on Hyper-V
      
         - Add support for filtering PMU events using a mask. If userspace
           wants to restrict heavily what events the guest can use, it can now
           do so without needing an absurd number of filter entries
      
         - Clean up KVM's handling of "PMU MSRs to save", especially when vPMU
           support is disabled
      
         - Add PEBS support for Intel Sapphire Rapids
      
         - Fix a mostly benign overflow bug in SEV's
           send|receive_update_data()
      
         - Move several SVM-specific flags into vcpu_svm
      
        x86 Intel:
      
         - Handle NMI VM-Exits before leaving the noinstr region
      
         - A few trivial cleanups in the VM-Enter flows
      
         - Stop enabling VMFUNC for L1 purely to document that KVM doesn't
           support EPTP switching (or any other VM function) for L1
      
         - Fix a crash when using eVMCS's enlighted MSR bitmaps
      
        Generic:
      
         - Clean up the hardware enable and initialization flow, which was
           scattered around multiple arch-specific hooks. Instead, just let
           the arch code call into generic code. Both x86 and ARM should
           benefit from not having to fight common KVM code's notion of how to
           do initialization
      
         - Account allocations in generic kvm_arch_alloc_vm()
      
         - Fix a memory leak if coalesced MMIO unregistration fails
      
        selftests:
      
         - On x86, cache the CPU vendor (AMD vs. Intel) and use the info to
           emit the correct hypercall instruction instead of relying on KVM to
           patch in VMMCALL
      
         - Use TAP interface for kvm_binary_stats_test and tsc_msrs_test"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (325 commits)
        KVM: SVM: hyper-v: placate modpost section mismatch error
        KVM: x86/mmu: Make tdp_mmu_allowed static
        KVM: arm64: nv: Use reg_to_encoding() to get sysreg ID
        KVM: arm64: nv: Only toggle cache for virtual EL2 when SCTLR_EL2 changes
        KVM: arm64: nv: Filter out unsupported features from ID regs
        KVM: arm64: nv: Emulate EL12 register accesses from the virtual EL2
        KVM: arm64: nv: Allow a sysreg to be hidden from userspace only
        KVM: arm64: nv: Emulate PSTATE.M for a guest hypervisor
        KVM: arm64: nv: Add accessors for SPSR_EL1, ELR_EL1 and VBAR_EL1 from virtual EL2
        KVM: arm64: nv: Handle SMCs taken from virtual EL2
        KVM: arm64: nv: Handle trapped ERET from virtual EL2
        KVM: arm64: nv: Inject HVC exceptions to the virtual EL2
        KVM: arm64: nv: Support virtual EL2 exceptions
        KVM: arm64: nv: Handle HCR_EL2.NV system register traps
        KVM: arm64: nv: Add nested virt VCPU primitives for vEL2 VCPU state
        KVM: arm64: nv: Add EL2 system registers to vcpu context
        KVM: arm64: nv: Allow userspace to set PSR_MODE_EL2x
        KVM: arm64: nv: Reset VCPU to EL2 registers if VCPU nested virt is set
        KVM: arm64: nv: Introduce nested virtualization VCPU feature
        KVM: arm64: Use the S2 MMU context to iterate over S2 table
        ...
      49d57592
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-6.3-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · 01687e7c
      Linus Torvalds authored
      Pull RISC-V updates from Palmer Dabbelt:
       "There's a bunch of fixes/cleanups throughout the tree as usual, but we
        also have a handful of new features:
      
         - Various improvements to the extension detection and alternative
           patching infrastructure
      
         - Zbb-optimized string routines
      
         - Support for cpu-capacity in the RISC-V DT bindings
      
         - Zicbom no longer depends on toolchain support
      
         - Some performance and code size improvements to ftrace
      
         - Support for ARCH_WANT_LD_ORPHAN_WARN
      
         - Oops now contain the faulting instruction"
      
      * tag 'riscv-for-linus-6.3-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (67 commits)
        RISC-V: add a spin_shadow_stack declaration
        riscv: mm: hugetlb: Enable ARCH_WANT_HUGETLB_PAGE_OPTIMIZE_VMEMMAP
        riscv: Add header include guards to insn.h
        riscv: alternative: proceed one more instruction for auipc/jalr pair
        riscv: Avoid enabling interrupts in die()
        riscv, mm: Perform BPF exhandler fixup on page fault
        RISC-V: take text_mutex during alternative patching
        riscv: hwcap: Don't alphabetize ISA extension IDs
        RISC-V: fix ordering of Zbb extension
        riscv: jump_label: Fixup unaligned arch_static_branch function
        RISC-V: Only provide the single-letter extensions in HWCAP
        riscv: mm: fix regression due to update_mmu_cache change
        scripts/decodecode: Add support for RISC-V
        riscv: Add instruction dump to RISC-V splats
        riscv: select ARCH_WANT_LD_ORPHAN_WARN for !XIP_KERNEL
        riscv: vmlinux.lds.S: explicitly catch .init.bss sections from EFI stub
        riscv: vmlinux.lds.S: explicitly catch .riscv.attributes sections
        riscv: vmlinux.lds.S: explicitly catch .rela.dyn symbols
        riscv: lds: define RUNTIME_DISCARD_EXIT
        RISC-V: move some stray __RISCV_INSN_FUNCS definitions from kprobes
        ...
      01687e7c
    • Linus Torvalds's avatar
      Merge tag 'powerpc-6.3-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · d0a32f55
      Linus Torvalds authored
      Pull powerpc updates from Michael Ellerman:
      
       - Support for configuring secure boot with user-defined keys on PowerVM
         LPARs
      
       - Simplify the replay of soft-masked IRQs by making it non-recursive
      
       - Add support for KCSAN on 64-bit Book3S
      
       - Improvements to the API & code which interacts with RTAS (pseries
         firmware)
      
       - Change 32-bit powermac to assign PCI bus numbers per domain by
         default
      
       - Some improvements to the 32-bit BPF JIT
      
       - Various other small features and fixes
      
      Thanks to Anders Roxell, Andrew Donnellan, Andrew Jeffery, Benjamin
      Gray, Christophe Leroy, Frederic Barrat, Ganesh Goudar, Geoff Levand,
      Greg Kroah-Hartman, Jan-Benedict Glaw, Josh Poimboeuf, Kajol Jain,
      Laurent Dufour, Mahesh Salgaonkar, Mathieu Desnoyers, Mimi Zohar, Murphy
      Zhou, Nathan Chancellor, Nathan Lynch, Nayna Jain, Nicholas Piggin, Pali
      Rohár, Petr Mladek, Rohan McLure, Russell Currey, Sachin Sant, Sathvika
      Vasireddy, Sourabh Jain, Stefan Berger, Stephen Rothwell, and Sudhakar
      Kuppusamy.
      
      * tag 'powerpc-6.3-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (114 commits)
        powerpc/pseries: Avoid hcall in plpks_is_available() on non-pseries
        powerpc: dts: turris1x.dts: Set lower priority for CPLD syscon-reboot
        powerpc/e500: Add missing prototype for 'relocate_init'
        powerpc/64: Fix unannotated intra-function call warning
        powerpc/epapr: Don't use wrteei on non booke
        powerpc: Pass correct CPU reference to assembler
        powerpc/mm: Rearrange if-else block to avoid clang warning
        powerpc/nohash: Fix build with llvm-as
        powerpc/nohash: Fix build error with binutils >= 2.38
        powerpc/pseries: Fix endianness issue when parsing PLPKS secvar flags
        macintosh: windfarm: Use unsigned type for 1-bit bitfields
        powerpc/kexec_file: print error string on usable memory property update failure
        powerpc/machdep: warn when machine_is() used too early
        powerpc/64: Replace -mcpu=e500mc64 by -mcpu=e5500
        powerpc/eeh: Set channel state after notifying the drivers
        selftests/powerpc: Fix incorrect kernel headers search path
        powerpc/rtas: arch-wide function token lookup conversions
        powerpc/rtas: introduce rtas_function_token() API
        powerpc/pseries/lpar: convert to papr_sysparm API
        powerpc/pseries/hv-24x7: convert to papr_sysparm API
        ...
      d0a32f55
    • Linus Torvalds's avatar
      Merge tag 'mips_6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux · 5596c6ad
      Linus Torvalds authored
      Pull MIPS updates from Thomas Bogendoerfer:
       "Just cleanups and fixes"
      
      * tag 'mips_6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux:
        MIPS: vpe-mt: drop physical_memsize
        mips: fix syscall_get_nr
        MIPS: SMP-CPS: fix build error when HOTPLUG_CPU not set
        MIPS: DTS: jz4780: add #clock-cells to rtc_dev
        MIPS: dts: Boston: Fix dtc 'pci_device_reg' warning
        mips: dts: ralink: mt7621: add port@5 as CPU port
        mips: dts: align LED node names with dtschema
        MIPS: ralink: Use devm_platform_get_and_ioremap_resource()
        MIPS: pci-mt7620: Use devm_platform_get_and_ioremap_resource()
        MIPS: pci: lantiq: Use devm_platform_get_and_ioremap_resource()
        MIPS: lantiq: xway: Use devm_platform_get_and_ioremap_resource()
        MIPS: BCM47XX: Add support for Linksys E2500 V3
        mips: ralink: make SOC_MT7621 select PINCTRL_MT7621 and fix help section
        MIPS: DTS: CI20: fix otg power gpio
        MIPS: dts: lantiq: Remove bogus interrupt-parent; line
        MIPS: Fix a compilation issue
        MIPS: remove CONFIG_MIPS_LD_CAN_LINK_VDSO
        mips: Realtek RTL: select NO_EXCEPT_FILL
        MIPS: OCTEON: octeon-usb: Consolidate error messages
      5596c6ad
    • Linus Torvalds's avatar
      Merge tag 'cxl-for-6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl · 7c3dc440
      Linus Torvalds authored
      Pull Compute Express Link (CXL) updates from Dan Williams:
       "To date Linux has been dependent on platform-firmware to map CXL RAM
        regions and handle events / errors from devices. With this update we
        can now parse / update the CXL memory layout, and report events /
        errors from devices. This is a precursor for the CXL subsystem to
        handle the end-to-end "RAS" flow for CXL memory. i.e. the flow that
        for DDR-attached-DRAM is handled by the EDAC driver where it maps
        system physical address events to a field-replaceable-unit (FRU /
        endpoint device). In general, CXL has the potential to standardize
        what has historically been a pile of memory-controller-specific error
        handling logic.
      
        Another change of note is the default policy for handling RAM-backed
        device-dax instances. Previously the default access mode was "device",
        mmap(2) a device special file to access memory. The new default is
        "kmem" where the address range is assigned to the core-mm via
        add_memory_driver_managed(). This saves typical users from wondering
        why their platform memory is not visible via free(1) and stuck behind
        a device-file. At the same time it allows expert users to deploy
        policy to, for example, get dedicated access to high performance
        memory, or hide low performance memory from general purpose kernel
        allocations. This affects not only CXL, but also systems with
        high-bandwidth-memory that platform-firmware tags with the
        EFI_MEMORY_SP (special purpose) designation.
      
        Summary:
      
         - CXL RAM region enumeration: instantiate 'struct cxl_region' objects
           for platform firmware created memory regions
      
         - CXL RAM region provisioning: complement the existing PMEM region
           creation support with RAM region support
      
         - "Soft Reservation" policy change: Online (memory hot-add)
           soft-reserved memory (EFI_MEMORY_SP) by default, but still allow
           for setting aside such memory for dedicated access via device-dax.
      
         - CXL Events and Interrupts: Takeover CXL event handling from
           platform-firmware (ACPI calls this CXL Memory Error Reporting) and
           export CXL Events via Linux Trace Events.
      
         - Convey CXL _OSC results to drivers: Similar to PCI, let the CXL
           subsystem interrogate the result of CXL _OSC negotiation.
      
         - Emulate CXL DVSEC Range Registers as "decoders": Allow for
           first-generation devices that pre-date the definition of the CXL
           HDM Decoder Capability to translate the CXL DVSEC Range Registers
           into 'struct cxl_decoder' objects.
      
         - Set timestamp: Per spec, set the device timestamp in case of
           hotplug, or if platform-firwmare failed to set it.
      
         - General fixups: linux-next build issues, non-urgent fixes for
           pre-production hardware, unit test fixes, spelling and debug
           message improvements"
      
      * tag 'cxl-for-6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl: (66 commits)
        dax/kmem: Fix leak of memory-hotplug resources
        cxl/mem: Add kdoc param for event log driver state
        cxl/trace: Add serial number to trace points
        cxl/trace: Add host output to trace points
        cxl/trace: Standardize device information output
        cxl/pci: Remove locked check for dvsec_range_allowed()
        cxl/hdm: Add emulation when HDM decoders are not committed
        cxl/hdm: Create emulated cxl_hdm for devices that do not have HDM decoders
        cxl/hdm: Emulate HDM decoder from DVSEC range registers
        cxl/pci: Refactor cxl_hdm_decode_init()
        cxl/port: Export cxl_dvsec_rr_decode() to cxl_port
        cxl/pci: Break out range register decoding from cxl_hdm_decode_init()
        cxl: add RAS status unmasking for CXL
        cxl: remove unnecessary calling of pci_enable_pcie_error_reporting()
        dax/hmem: build hmem device support as module if possible
        dax: cxl: add CXL_REGION dependency
        cxl: avoid returning uninitialized error code
        cxl/pmem: Fix nvdimm registration races
        cxl/mem: Fix UAPI command comment
        cxl/uapi: Tag commands from cxl_query_cmd()
        ...
      7c3dc440