]> Git Repo - J-linux.git/commitdiff
Merge tag 'kbuild-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy...
authorLinus Torvalds <[email protected]>
Sat, 30 Nov 2024 21:41:50 +0000 (13:41 -0800)
committerLinus Torvalds <[email protected]>
Sat, 30 Nov 2024 21:41:50 +0000 (13:41 -0800)
Pull Kbuild updates from Masahiro Yamada:

 - Add generic support for built-in boot DTB files

 - Enable TAB cycling for dialog buttons in nconfig

 - Fix issues in streamline_config.pl

 - Refactor Kconfig

 - Add support for Clang's AutoFDO (Automatic Feedback-Directed
   Optimization)

 - Add support for Clang's Propeller, a profile-guided optimization.

 - Change the working directory to the external module directory for M=
   builds

 - Support building external modules in a separate output directory

 - Enable objtool for *.mod.o and additional kernel objects

 - Use lz4 instead of deprecated lz4c

 - Work around a performance issue with "git describe"

 - Refactor modpost

* tag 'kbuild-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (85 commits)
  kbuild: rename .tmp_vmlinux.kallsyms0.syms to .tmp_vmlinux0.syms
  gitignore: Don't ignore 'tags' directory
  kbuild: add dependency from vmlinux to resolve_btfids
  modpost: replace tdb_hash() with hash_str()
  kbuild: deb-pkg: add python3:native to build dependency
  genksyms: reduce indentation in export_symbol()
  modpost: improve error messages in device_id_check()
  modpost: rename alias symbol for MODULE_DEVICE_TABLE()
  modpost: rename variables in handle_moddevtable()
  modpost: move strstarts() to modpost.h
  modpost: convert do_usb_table() to a generic handler
  modpost: convert do_of_table() to a generic handler
  modpost: convert do_pnp_device_entry() to a generic handler
  modpost: convert do_pnp_card_entries() to a generic handler
  modpost: call module_alias_printf() from all do_*_entry() functions
  modpost: pass (struct module *) to do_*_entry() functions
  modpost: remove DEF_FIELD_ADDR_VAR() macro
  modpost: deduplicate MODULE_ALIAS() for all drivers
  modpost: introduce module_alias_printf() helper
  modpost: remove unnecessary check in do_acpi_entry()
  ...

17 files changed:
1  2 
.gitignore
MAINTAINERS
Makefile
arch/Kconfig
arch/powerpc/Makefile
arch/riscv/Makefile
arch/x86/Kconfig
arch/x86/kernel/vmlinux.lds.S
drivers/of/Kconfig
include/linux/module.h
include/net/net_debug.h
mm/internal.h
rust/Makefile
scripts/Makefile.build
scripts/Makefile.vmlinux
scripts/link-vmlinux.sh
tools/objtool/check.c

diff --combined .gitignore
index a61e4778d011cf706e6784818a1357f392f3a669,6c57bb0259c64bc1a24d1d78e23bc47d3caca06b..6839cf84acda0d2d3c236a2e42b0cb0fe1b14965
@@@ -103,7 -103,6 +103,7 @@@ modules.orde
  # We don't want to ignore the following even if they are dot-files
  #
  !.clang-format
 +!.clippy.toml
  !.cocciconfig
  !.editorconfig
  !.get_maintainer.ignore
@@@ -129,6 -128,7 +129,7 @@@ serie
  
  # ctags files
  tags
+ !tags/
  TAGS
  
  # cscope files
diff --combined MAINTAINERS
index 3cf2858145bfc1249267852aa31933cf1dfa9f56,b422561537a3f04231b42733b5b9ee68187bf83c..7292e4a1ddb87fef84ea341dfac5d5d85641807c
@@@ -701,7 -701,7 +701,7 @@@ M: Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-aimslab*
  
  AIO
@@@ -786,7 -786,6 +786,7 @@@ F: drivers/perf/alibaba_uncore_drw_pmu.
  ALIENWARE WMI DRIVER
  L:    [email protected]
  S:    Maintained
 +F:    Documentation/wmi/devices/alienware-wmi.rst
  F:    drivers/platform/x86/dell/alienware-wmi.c
  
  ALLEGRO DVT VIDEO IP CORE DRIVER
@@@ -810,7 -809,7 +810,7 @@@ ALLWINNER A10 CSI DRIVE
  M:    Maxime Ripard <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/allwinner,sun4i-a10-csi.yaml
  F:    drivers/media/platform/sunxi/sun4i-csi/
  
@@@ -819,7 -818,7 +819,7 @@@ M: Yong Deng <[email protected]
  M:    Paul Kocialkowski <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/allwinner,sun6i-a31-csi.yaml
  F:    drivers/media/platform/sunxi/sun6i-csi/
  
@@@ -827,7 -826,7 +827,7 @@@ ALLWINNER A31 ISP DRIVE
  M:    Paul Kocialkowski <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/allwinner,sun6i-a31-isp.yaml
  F:    drivers/staging/media/sunxi/sun6i-isp/
  F:    drivers/staging/media/sunxi/sun6i-isp/uapi/sun6i-isp-config.h
@@@ -836,7 -835,7 +836,7 @@@ ALLWINNER A31 MIPI CSI-2 BRIDGE DRIVE
  M:    Paul Kocialkowski <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/allwinner,sun6i-a31-mipi-csi2.yaml
  F:    drivers/media/platform/sunxi/sun6i-mipi-csi2/
  
@@@ -966,14 -965,6 +966,14 @@@ Q:       https://patchwork.kernel.org/project
  F:    drivers/infiniband/hw/efa/
  F:    include/uapi/rdma/efa-abi.h
  
 +AMD 3D V-CACHE PERFORMANCE OPTIMIZER DRIVER
 +M:    Basavaraj Natikar <[email protected]>
 +R:    Mario Limonciello <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    Documentation/ABI/testing/sysfs-bus-platform-drivers-amd_x3d_vcache
 +F:    drivers/platform/x86/amd/x3d_vcache.c
 +
  AMD ADDRESS TRANSLATION LIBRARY (ATL)
  M:    Yazen Ghannam <[email protected]>
  L:    [email protected]
@@@ -1083,7 -1074,7 +1083,7 @@@ S:      Maintaine
  F:    Documentation/arch/x86/amd_hsmp.rst
  F:    arch/x86/include/asm/amd_hsmp.h
  F:    arch/x86/include/uapi/asm/amd_hsmp.h
 -F:    drivers/platform/x86/amd/hsmp.c
 +F:    drivers/platform/x86/amd/hsmp/
  
  AMD IOMMU (AMD-VI)
  M:    Joerg Roedel <[email protected]>
  S:    Maintained
  F:    drivers/i2c/busses/i2c-amd-mp2*
  
 +AMD ASF I2C DRIVER
 +M:    Shyam Sundar S K <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/i2c/busses/i2c-amd-asf-plat.c
 +
  AMD PDS CORE DRIVER
  M:    Shannon Nelson <[email protected]>
  M:    Brett Creeley <[email protected]>
@@@ -1139,7 -1124,7 +1139,7 @@@ F:      drivers/platform/x86/amd/pmc
  AMD PMF DRIVER
  M:    Shyam Sundar S K <[email protected]>
  L:    [email protected]
 -S:    Maintained
 +S:    Supported
  F:    Documentation/ABI/testing/sysfs-amd-pmf
  F:    drivers/platform/x86/amd/pmf/
  
@@@ -1189,9 -1174,8 +1189,9 @@@ F:      Documentation/hid/amd-sfh
  F:    drivers/hid/amd-sfh-hid/
  
  AMD SPI DRIVER
 -M:    Sanjay R Mehta <[email protected]>
 -S:    Maintained
 +M:    Raju Rangoju <[email protected]>
 +L:    [email protected]
 +S:    Supported
  F:    drivers/spi/spi-amd.c
  
  AMD XGBE DRIVER
@@@ -1218,14 -1202,6 +1218,14 @@@ F:    Documentation/devicetree/bindings/pe
  F:    drivers/perf/amlogic/
  F:    include/soc/amlogic/
  
 +AMLOGIC RTC DRIVER
 +M:    Yiting Deng <[email protected]>
 +M:    Xianwei Zhao <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/rtc/amlogic,a4-rtc.yaml
 +F:    drivers/rtc/rtc-amlogic-a4.c
 +
  AMPHENOL CHIPCAP 2 HUMIDITY-TEMPERATURE IIO DRIVER
  M:    Javier Carrasco <[email protected]>
  L:    [email protected]
@@@ -1279,6 -1255,7 +1279,6 @@@ M:      Cosmin Tanislav <cosmin.tanislav@ana
  L:    [email protected]
  S:    Supported
  W:    https://ez.analog.com/linux-software-drivers
 -F:    Documentation/ABI/testing/sysfs-bus-iio-adc-ad4130
  F:    Documentation/devicetree/bindings/iio/adc/adi,ad4130.yaml
  F:    drivers/iio/adc/ad4130.c
  
@@@ -1343,17 -1320,6 +1343,17 @@@ F:    Documentation/devicetree/bindings/ii
  F:    drivers/iio/addac/ad74413r.c
  F:    include/dt-bindings/iio/addac/adi,ad74413r.h
  
 +ANALOG DEVICES INC AD7625 DRIVER
 +M:    Michael Hennerich <[email protected]>
 +M:    Nuno Sá <[email protected]>
 +R:    Trevor Gamblin <[email protected]>
 +S:    Supported
 +W:    https://ez.analog.com/linux-software-drivers
 +W:    http://analogdevicesinc.github.io/hdl/projects/pulsar_lvds/index.html
 +F:    Documentation/devicetree/bindings/iio/adc/adi,ad7625.yaml
 +F:    Documentation/iio/ad7625.rst
 +F:    drivers/iio/adc/ad7625.c
 +
  ANALOG DEVICES INC AD7768-1 DRIVER
  M:    Michael Hennerich <[email protected]>
  L:    [email protected]
@@@ -1381,14 -1347,6 +1381,14 @@@ F:    Documentation/ABI/testing/debugfs-ii
  F:    Documentation/devicetree/bindings/iio/adc/adi,ad9467.yaml
  F:    drivers/iio/adc/ad9467.c
  
 +ANALOG DEVICES INC AD8460 DRIVER
 +M:    Mariel Tinaco <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +W:    https://ez.analog.com/linux-software-drivers
 +F:    Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml
 +F:    drivers/iio/dac/ad8460.c
 +
  ANALOG DEVICES INC AD9739a DRIVER
  M:    Nuno Sa <[email protected]>
  M:    Dragos Bogdan <[email protected]>
@@@ -1556,7 -1514,6 +1556,7 @@@ L:      [email protected]
  S:    Supported
  W:    http://wiki.analog.com/
  W:    https://ez.analog.com/linux-software-drivers
 +F:    Documentation/devicetree/bindings/sound/adi,*
  F:    sound/soc/codecs/ad1*
  F:    sound/soc/codecs/ad7*
  F:    sound/soc/codecs/adau*
@@@ -1589,7 -1546,6 +1589,7 @@@ F:      Documentation/ABI/testing/sysfs-bus-
  F:    Documentation/devicetree/bindings/iio/*/adi,*
  F:    Documentation/devicetree/bindings/iio/adc/lltc,ltc2496.yaml
  F:    Documentation/devicetree/bindings/iio/adc/lltc,ltc2497.yaml
 +F:    Documentation/iio/ad7606.rst
  F:    drivers/iio/*/ad*
  F:    drivers/iio/adc/ltc249*
  F:    drivers/iio/amplifiers/hmc425a.c
@@@ -2033,7 -1989,7 +2033,7 @@@ L:      [email protected]
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  F:    Documentation/devicetree/bindings/arm/actions.yaml
 -F:    Documentation/devicetree/bindings/clock/actions,owl-cmu.txt
 +F:    Documentation/devicetree/bindings/clock/actions,owl-cmu.yaml
  F:    Documentation/devicetree/bindings/dma/owl-dma.yaml
  F:    Documentation/devicetree/bindings/i2c/i2c-owl.yaml
  F:    Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml
@@@ -2041,7 -1997,7 +2041,7 @@@ F:      Documentation/devicetree/bindings/mm
  F:    Documentation/devicetree/bindings/net/actions,owl-emac.yaml
  F:    Documentation/devicetree/bindings/pinctrl/actions,*
  F:    Documentation/devicetree/bindings/power/actions,owl-sps.txt
 -F:    Documentation/devicetree/bindings/timer/actions,owl-timer.txt
 +F:    Documentation/devicetree/bindings/timer/actions,owl-timer.yaml
  F:    arch/arm/boot/dts/actions/
  F:    arch/arm/mach-actions/
  F:    arch/arm64/boot/dts/actions/
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/sound/adi,ssm3515.yaml
 +F:    Documentation/devicetree/bindings/sound/cirrus,cs42l84.yaml
  F:    Documentation/devicetree/bindings/sound/apple,*
  F:    sound/soc/apple/*
  F:    sound/soc/codecs/cs42l83-i2c.c
 +F:    sound/soc/codecs/cs42l84.*
  F:    sound/soc/codecs/ssm3515.c
  
  ARM/APPLE MACHINE SUPPORT
@@@ -2240,7 -2194,7 +2240,7 @@@ F:      drivers/mmc/host/usdhi6rol0.
  F:    drivers/pinctrl/pinctrl-artpec*
  
  ARM/ASPEED I2C DRIVER
 -M:    Brendan Higgins <brendanhiggins@google.com>
 +M:    Ryan Chen <ryan_chen@aspeedtech.com>
  R:    Benjamin Herrenschmidt <[email protected]>
  R:    Joel Stanley <[email protected]>
  L:    [email protected]
@@@ -2851,7 -2805,6 +2851,7 @@@ F:      arch/arm64/boot/dts/qcom/sdm845-chez
  
  ARM/QUALCOMM MAILING LIST
  L:    [email protected]
 +C:    irc://irc.oftc.net/linux-msm
  F:    Documentation/devicetree/bindings/*/qcom*
  F:    Documentation/devicetree/bindings/soc/qcom/
  F:    arch/arm/boot/dts/qcom/
@@@ -2893,14 -2846,13 +2893,14 @@@ M:   Bjorn Andersson <[email protected]
  M:    Konrad Dybcio <[email protected]>
  L:    [email protected]
  S:    Maintained
 +C:    irc://irc.oftc.net/linux-msm
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git
  F:    Documentation/devicetree/bindings/arm/qcom-soc.yaml
  F:    Documentation/devicetree/bindings/arm/qcom.yaml
  F:    Documentation/devicetree/bindings/bus/qcom*
  F:    Documentation/devicetree/bindings/cache/qcom,llcc.yaml
  F:    Documentation/devicetree/bindings/firmware/qcom,scm.yaml
 -F:    Documentation/devicetree/bindings/reserved-memory/qcom
 +F:    Documentation/devicetree/bindings/reserved-memory/qcom*
  F:    Documentation/devicetree/bindings/soc/qcom/
  F:    arch/arm/boot/dts/qcom/
  F:    arch/arm/configs/qcom_defconfig
@@@ -2951,7 -2903,6 +2951,7 @@@ Q:      http://patchwork.kernel.org/project/
  C:    irc://irc.libera.chat/renesas-soc
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel.git next
  F:    Documentation/devicetree/bindings/hwinfo/renesas,prr.yaml
 +F:    Documentation/devicetree/bindings/nvmem/renesas,*
  F:    Documentation/devicetree/bindings/soc/renesas/
  F:    arch/arm/boot/dts/renesas/
  F:    arch/arm/configs/shmobile_defconfig
@@@ -2959,7 -2910,6 +2959,7 @@@ F:      arch/arm/include/debug/renesas-scif.
  F:    arch/arm/mach-shmobile/
  F:    arch/arm64/boot/dts/renesas/
  F:    arch/riscv/boot/dts/renesas/
 +F:    drivers/nvmem/rcar-efuse.c
  F:    drivers/pmdomain/renesas/
  F:    drivers/soc/renesas/
  F:    include/linux/soc/renesas/
@@@ -3397,7 -3347,7 +3397,7 @@@ ASAHI KASEI AK7375 LENS VOICE COIL DRIV
  M:    Tianshu Qiu <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/asahi-kasei,ak7375.yaml
  F:    drivers/media/i2c/ak7375.c
  
@@@ -3715,6 -3665,13 +3715,13 @@@ F:    kernel/audit
  F:    lib/*audit.c
  K:    \baudit_[a-z_0-9]\+\b
  
+ AUTOFDO BUILD
+ M:    Rong Xu <[email protected]>
+ M:    Han Shen <[email protected]>
+ S:    Supported
+ F:    Documentation/dev-tools/autofdo.rst
+ F:    scripts/Makefile.autofdo
  AUXILIARY BUS DRIVER
  M:    Greg Kroah-Hartman <[email protected]>
  R:    Dave Ertman <[email protected]>
@@@ -3795,7 -3752,6 +3802,7 @@@ F:      drivers/spi/spi-axi-spi-engine.
  AXI PWM GENERATOR
  M:    Michael Hennerich <[email protected]>
  M:    Nuno Sá <[email protected]>
 +R:    Trevor Gamblin <[email protected]>
  L:    [email protected]
  S:    Supported
  W:    https://ez.analog.com/linux-software-drivers
@@@ -3814,7 -3770,7 +3821,7 @@@ M:      Mauro Carvalho Chehab <mchehab@kerne
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/dvb-usb-v2/az6007.c
  
  AZTECH FM RADIO RECEIVER DRIVER
@@@ -3822,7 -3778,7 +3829,7 @@@ M:      Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-aztech*
  
  B43 WIRELESS DRIVER
@@@ -3841,7 -3797,7 +3848,7 @@@ F:      drivers/net/wireless/broadcom/b43leg
  
  BACKLIGHT CLASS/SUBSYSTEM
  M:    Lee Jones <[email protected]>
 -M:    Daniel Thompson <daniel.thompson@linaro.org>
 +M:    Daniel Thompson <danielt@kernel.org>
  M:    Jingoo Han <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -3906,7 -3862,7 +3913,7 @@@ M:      Fabien Dessenne <fabien.dessenne@fos
  L:    [email protected]
  S:    Supported
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/platform/st/sti/bdisp
  
  BECKHOFF CX5020 ETHERCAT MASTER DRIVER
@@@ -4065,13 -4021,6 +4072,13 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/iio/accel/bosch,bma400.yaml
  F:    drivers/iio/accel/bma400*
  
 +BOSCH SENSORTEC BMI270 IMU IIO DRIVER
 +M:    Alex Lanzano <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml
 +F:    drivers/iio/imu/bmi270/
 +
  BOSCH SENSORTEC BMI323 IMU IIO DRIVER
  M:    Jagath Jog J <[email protected]>
  L:    [email protected]
@@@ -4921,7 -4870,7 +4928,7 @@@ M:      Mauro Carvalho Chehab <mchehab@kerne
  L:    [email protected]
  S:    Odd fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/driver-api/media/drivers/bttv*
  F:    drivers/media/pci/bt8xx/bttv*
  
@@@ -5035,13 -4984,13 +5042,13 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-cadet*
  
  CAFE CMOS INTEGRATED CAMERA CONTROLLER DRIVER
  L:    [email protected]
  S:    Orphan
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/admin-guide/media/cafe_ccic*
  F:    drivers/media/platform/marvell/
  
@@@ -5225,7 -5174,7 +5232,7 @@@ M:      Hans Verkuil <hverkuil-cisco@xs4all.
  L:    [email protected]
  S:    Supported
  W:    http://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/ABI/testing/debugfs-cec-error-inj
  F:    Documentation/devicetree/bindings/media/cec/cec-common.yaml
  F:    Documentation/driver-api/media/cec-core.rst
@@@ -5242,7 -5191,7 +5249,7 @@@ M:      Hans Verkuil <hverkuil-cisco@xs4all.
  L:    [email protected]
  S:    Supported
  W:    http://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/cec/cec-gpio.yaml
  F:    drivers/media/cec/platform/cec-gpio/
  
@@@ -5449,7 -5398,7 +5456,7 @@@ CHRONTEL CH7322 CEC DRIVE
  M:    Joe Tessler <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/chrontel,ch7322.yaml
  F:    drivers/media/cec/i2c/ch7322.c
  
@@@ -5638,7 -5587,7 +5645,7 @@@ M:      Hans Verkuil <hverkuil-cisco@xs4all.
  L:    [email protected]
  S:    Supported
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/pci/cobalt/
  
  COCCINELLE/Semantic Patches (SmPL)
@@@ -5797,15 -5746,6 +5804,15 @@@ F:    fs/configfs
  F:    include/linux/configfs.h
  F:    samples/configfs/
  
 +CONGATEC BOARD CONTROLLER MFD DRIVER
 +M:    Thomas Richard <[email protected]>
 +S:    Maintained
 +F:    drivers/gpio/gpio-cgbc.c
 +F:    drivers/i2c/busses/i2c-cgbc.c
 +F:    drivers/mfd/cgbc-core.c
 +F:    drivers/watchdog/cgbc_wdt.c
 +F:    include/linux/mfd/cgbc.h
 +
  CONSOLE SUBSYSTEM
  M:    Greg Kroah-Hartman <[email protected]>
  S:    Supported
@@@ -5821,6 -5761,7 +5828,6 @@@ F:      kernel/context_tracking.
  
  CONTROL GROUP (CGROUP)
  M:    Tejun Heo <[email protected]>
 -M:    Zefan Li <[email protected]>
  M:    Johannes Weiner <[email protected]>
  M:    Michal Koutný <[email protected]>
  L:    [email protected]
@@@ -5849,6 -5790,7 +5856,6 @@@ F:      include/linux/blk-cgroup.
  
  CONTROL GROUP - CPUSET
  M:    Waiman Long <[email protected]>
 -M:    Zefan Li <[email protected]>
  L:    [email protected]
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git
@@@ -6089,7 -6031,7 +6096,7 @@@ M:      Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Odd Fixes
  W:    http://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/cs3308.c
  
  CS5535 Audio ALSA driver
@@@ -6120,7 -6062,7 +6127,7 @@@ M:      Andy Walls <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/pci/cx18/
  F:    include/uapi/linux/ivtv*
  
@@@ -6129,7 -6071,7 +6136,7 @@@ M:      Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/common/cx2341x*
  F:    include/media/drv-intf/cx2341x.h
  
@@@ -6147,7 -6089,7 +6154,7 @@@ M:      Mauro Carvalho Chehab <mchehab@kerne
  L:    [email protected]
  S:    Odd fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/driver-api/media/drivers/cx88*
  F:    drivers/media/pci/cx88/
  
@@@ -6364,6 -6306,7 +6371,6 @@@ DECSTATION PLATFORM SUPPOR
  M:    "Maciej W. Rozycki" <[email protected]>
  L:    [email protected]
  S:    Maintained
 -W:    http://www.linux-mips.org/wiki/DECstation
  F:    arch/mips/dec/
  F:    arch/mips/include/asm/dec/
  F:    arch/mips/include/asm/mach-dec/
@@@ -6382,7 -6325,7 +6389,7 @@@ DEINTERLACE DRIVERS FOR ALLWINNER H
  M:    Jernej Skrabec <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/allwinner,sun8i-h3-deinterlace.yaml
  F:    drivers/media/platform/sunxi/sun8i-di/
  
@@@ -6509,7 -6452,7 +6516,7 @@@ M:      Hugues Fruchet <hugues.fruchet@foss.
  L:    [email protected]
  S:    Supported
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/platform/st/sti/delta
  
  DENALI NAND DRIVER
@@@ -6917,7 -6860,7 +6924,7 @@@ DONGWOON DW9714 LENS VOICE COIL DRIVE
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/dongwoon,dw9714.yaml
  F:    drivers/media/i2c/dw9714.c
  
@@@ -6925,13 -6868,13 +6932,13 @@@ DONGWOON DW9719 LENS VOICE COIL DRIVE
  M:    Daniel Scally <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/dw9719.c
  
  DONGWOON DW9768 LENS VOICE COIL DRIVER
  L:    [email protected]
  S:    Orphan
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/dongwoon,dw9768.yaml
  F:    drivers/media/i2c/dw9768.c
  
@@@ -6939,7 -6882,7 +6946,7 @@@ DONGWOON DW9807 LENS VOICE COIL DRIVE
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/dongwoon,dw9807-vcm.yaml
  F:    drivers/media/i2c/dw9807-vcm.c
  
@@@ -7139,10 -7082,12 +7146,10 @@@ M:   Javier Martinez Canillas <javierm@re
  L:    [email protected]
  S:    Maintained
  T:    git https://gitlab.freedesktop.org/drm/misc/kernel.git
 -F:    drivers/gpu/drm/drm_aperture.c
  F:    drivers/gpu/drm/tiny/ofdrm.c
  F:    drivers/gpu/drm/tiny/simpledrm.c
  F:    drivers/video/aperture.c
  F:    drivers/video/nomodeset.c
 -F:    include/drm/drm_aperture.h
  F:    include/linux/aperture.h
  F:    include/video/nomodeset.h
  
@@@ -7423,18 -7368,6 +7430,18 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/display/panel/samsung,s6d7aa0.yaml
  F:    drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c
  
 +DRM DRIVER FOR SAMSUNG S6E3HA8 PANELS
 +M:    Dzmitry Sankouski <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/display/panel/samsung,s6e3ha8.yaml
 +F:    drivers/gpu/drm/panel/panel-samsung-s6e3ha8.c
 +
 +DRM DRIVER FOR SHARP MEMORY LCD
 +M:    Alex Lanzano <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/display/sharp,ls010b7dh04.yaml
 +F:    drivers/gpu/drm/tiny/sharp-memory.c
 +
  DRM DRIVER FOR SITRONIX ST7586 PANELS
  M:    David Lechner <[email protected]>
  S:    Maintained
@@@ -7512,7 -7445,8 +7519,7 @@@ T:      git https://gitlab.freedesktop.org/d
  F:    drivers/gpu/drm/udl/
  
  DRM DRIVER FOR VIRTUAL KERNEL MODESETTING (VKMS)
 -M:    Rodrigo Siqueira <[email protected]>
 -M:    Maíra Canal <[email protected]>
 +M:    Louis Chauvet <[email protected]>
  R:    Haneen Mohammed <[email protected]>
  R:    Simona Vetter <[email protected]>
  R:    Melissa Wen <[email protected]>
@@@ -7844,7 -7778,6 +7851,7 @@@ F:      include/uapi/drm/v3d_drm.
  DRM DRIVERS FOR VC4
  M:    Maxime Ripard <[email protected]>
  M:    Dave Stevenson <[email protected]>
 +R:    Maíra Canal <[email protected]>
  R:    Raspberry Pi Kernel Maintenance <[email protected]>
  S:    Supported
  T:    git https://gitlab.freedesktop.org/drm/misc/kernel.git
@@@ -7879,7 -7812,6 +7886,7 @@@ L:      [email protected]
  S:    Maintained
  T:    git https://gitlab.freedesktop.org/drm/misc/kernel.git
  F:    Documentation/devicetree/bindings/display/xlnx/
 +F:    Documentation/gpu/zynqmp.rst
  F:    drivers/gpu/drm/xlnx/
  
  DRM GPU SCHEDULER
@@@ -7930,10 -7862,10 +7937,10 @@@ F:   Documentation/gpu/automated_testing.
  F:    drivers/gpu/drm/ci/
  
  DSBR100 USB FM RADIO DRIVER
 -M:    Alexey Klimov <[email protected]>
 +M:    Alexey Klimov <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/dsbr100.c
  
  DT3155 MEDIA DRIVER
@@@ -7941,7 -7873,7 +7948,7 @@@ M:      Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Odd Fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/pci/dt3155/
  
  DVB_USB_AF9015 MEDIA DRIVER
@@@ -7986,7 -7918,7 +7993,7 @@@ S:      Maintaine
  W:    https://linuxtv.org
  W:    http://github.com/mkrufky
  Q:    http://patchwork.linuxtv.org/project/linux-media/list/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/dvb-usb/cxusb*
  
  DVB_USB_EC168 MEDIA DRIVER
@@@ -8134,10 -8066,10 +8141,10 @@@ S:   Maintaine
  F:    drivers/edac/highbank*
  
  EDAC-CAVIUM OCTEON
 -M:    Ralf Baechle <[email protected]>
 +M:    Thomas Bogendoerfer <[email protected]>
  L:    [email protected]
  L:    [email protected]
 -S:    Supported
 +S:    Maintained
  F:    drivers/edac/octeon_edac*
  
  EDAC-CAVIUM THUNDERX
@@@ -8177,8 -8109,7 +8184,8 @@@ S:      Maintaine
  F:    drivers/edac/e7xxx_edac.c
  
  EDAC-FSL_DDR
 -M:    York Sun <[email protected]>
 +R:    Frank Li <[email protected]>
 +L:    [email protected]
  L:    [email protected]
  S:    Maintained
  F:    drivers/edac/fsl_ddr_edac.*
@@@ -8356,7 -8287,7 +8363,7 @@@ M:      Mauro Carvalho Chehab <mchehab@kerne
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/admin-guide/media/em28xx*
  F:    drivers/media/usb/em28xx/
  
@@@ -8652,7 -8583,7 +8659,7 @@@ EXTRON DA HD 4K PLUS CEC DRIVE
  M:    Hans Verkuil <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/cec/usb/extron-da-hd-4k-plus/
  
  EXYNOS DP DRIVER
@@@ -9072,16 -9003,9 +9079,16 @@@ F:    drivers/dma/fsl-edma*.
  FREESCALE ENETC ETHERNET DRIVERS
  M:    Claudiu Manoil <[email protected]>
  M:    Vladimir Oltean <[email protected]>
 +M:    Wei Fang <[email protected]>
 +M:    Clark Wang <[email protected]>
 +L:    [email protected]
  L:    [email protected]
  S:    Maintained
 +F:    Documentation/devicetree/bindings/net/fsl,enetc*.yaml
 +F:    Documentation/devicetree/bindings/net/nxp,netc-blk-ctrl.yaml
  F:    drivers/net/ethernet/freescale/enetc/
 +F:    include/linux/fsl/enetc_mdio.h
 +F:    include/linux/fsl/netc_global.h
  
  FREESCALE eTSEC ETHERNET DRIVER (GIANFAR)
  M:    Claudiu Manoil <[email protected]>
@@@ -9092,7 -9016,6 +9099,7 @@@ F:      drivers/net/ethernet/freescale/gianf
  
  FREESCALE GPMI NAND DRIVER
  M:    Han Xu <[email protected]>
 +L:    [email protected]
  L:    [email protected]
  S:    Maintained
  F:    drivers/mtd/nand/raw/gpmi-nand/*
@@@ -9482,7 -9405,7 +9489,7 @@@ GALAXYCORE GC2145 SENSOR DRIVE
  M:    Alain Volmat <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/galaxycore,gc2145.yaml
  F:    drivers/media/i2c/gc2145.c
  
@@@ -9519,14 -9442,6 +9526,14 @@@ M:    Kieran Bingham <[email protected]
  S:    Supported
  F:    scripts/gdb/
  
 +GE HEALTHCARE PMC ADC DRIVER
 +M:    Herve Codina <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/iio/adc/gehc,pmc-adc.yaml
 +F:    drivers/iio/adc/gehc-pmc-adc.c
 +F:    include/dt-bindings/iio/adc/gehc,pmc-adc.h
 +
  GEMINI CRYPTO DRIVER
  M:    Corentin Labbe <[email protected]>
  L:    [email protected]
@@@ -9538,7 -9453,7 +9545,7 @@@ M:      Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-gemtek*
  
  GENERIC ARCHITECTURE TOPOLOGY
  S:    Maintained
  F:    drivers/platform/x86/gpd-pocket-fan.c
  
 +GPIB DRIVERS
 +M:    Dave Penkler <[email protected]>
 +S:    Maintained
 +F:    drivers/staging/gpib/
 +
  GPIO ACPI SUPPORT
  M:    Mika Westerberg <[email protected]>
  M:    Andy Shevchenko <[email protected]>
@@@ -9925,56 -9835,56 +9932,56 @@@ GS1662 VIDEO SERIALIZE
  M:    Charles-Antoine Couret <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/spi/gs1662.c
  
  GSPCA FINEPIX SUBDRIVER
  M:    Frank Zago <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/gspca/finepix.c
  
  GSPCA GL860 SUBDRIVER
  M:    Olivier Lorin <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/gspca/gl860/
  
  GSPCA M5602 SUBDRIVER
  M:    Erik Andren <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/gspca/m5602/
  
  GSPCA PAC207 SONIXB SUBDRIVER
  M:    Hans Verkuil <[email protected]>
  L:    [email protected]
  S:    Odd Fixes
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/gspca/pac207.c
  
  GSPCA SN9C20X SUBDRIVER
  M:    Brian Johnson <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/gspca/sn9c20x.c
  
  GSPCA T613 SUBDRIVER
  M:    Leandro Costantino <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/gspca/t613.c
  
  GSPCA USB WEBCAM DRIVER
  M:    Hans Verkuil <[email protected]>
  L:    [email protected]
  S:    Odd Fixes
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/gspca/
  
  GTP (GPRS Tunneling Protocol)
@@@ -10091,7 -10001,7 +10098,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Odd Fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/hdpvr/
  
  HEWLETT PACKARD ENTERPRISE ILO CHIF DRIVER
@@@ -10233,12 -10143,10 +10240,12 @@@ S:        Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git timers/core
  F:    Documentation/timers/
  F:    include/linux/clockchips.h
 +F:    include/linux/delay.h
  F:    include/linux/hrtimer.h
  F:    include/linux/timer.h
  F:    kernel/time/clockevents.c
  F:    kernel/time/hrtimer.c
 +F:    kernel/time/sleep_timeout.c
  F:    kernel/time/timer.c
  F:    kernel/time/timer_list.c
  F:    kernel/time/timer_migration.*
@@@ -10348,12 -10256,6 +10355,12 @@@ S: Maintaine
  W:    http://www.hisilicon.com
  F:    drivers/net/ethernet/hisilicon/hns3/
  
 +HISILICON NETWORK HIBMCGE DRIVER
 +M:    Jijie Shao <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/net/ethernet/hisilicon/hibmcge/
 +
  HISILICON NETWORK SUBSYSTEM DRIVER
  M:    Jian Shen <[email protected]>
  M:    Salil Mehta <[email protected]>
@@@ -10596,7 -10498,6 +10603,7 @@@ F:   Documentation/mm/hugetlbfs_reserv.rs
  F:    Documentation/mm/vmemmap_dedup.rst
  F:    fs/hugetlbfs/
  F:    include/linux/hugetlb.h
 +F:    include/trace/events/hugetlbfs.h
  F:    mm/hugetlb.c
  F:    mm/hugetlb_vmemmap.c
  F:    mm/hugetlb_vmemmap.h
@@@ -10607,7 -10508,7 +10614,7 @@@ M:   Jean-Christophe Trotin <jean-christo
  L:    [email protected]
  S:    Supported
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/platform/st/sti/hva
  
  HWPOISON MEMORY FAILURE HANDLING
@@@ -10635,7 -10536,7 +10642,7 @@@ HYNIX HI556 SENSOR DRIVE
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/hi556.c
  
  HYNIX HI846 SENSOR DRIVER
@@@ -10820,12 -10721,14 +10827,12 @@@ F:        Documentation/i2c/busses/i2c-viapro.
  F:    drivers/i2c/busses/i2c-ali1535.c
  F:    drivers/i2c/busses/i2c-ali1563.c
  F:    drivers/i2c/busses/i2c-ali15x3.c
 -F:    drivers/i2c/busses/i2c-amd756-s4882.c
  F:    drivers/i2c/busses/i2c-amd756.c
  F:    drivers/i2c/busses/i2c-amd8111.c
  F:    drivers/i2c/busses/i2c-i801.c
  F:    drivers/i2c/busses/i2c-isch.c
 -F:    drivers/i2c/busses/i2c-nforce2-s4985.c
  F:    drivers/i2c/busses/i2c-nforce2.c
 -F:    drivers/i2c/busses/i2c-piix4.c
 +F:    drivers/i2c/busses/i2c-piix4.*
  F:    drivers/i2c/busses/i2c-sis5595.c
  F:    drivers/i2c/busses/i2c-sis630.c
  F:    drivers/i2c/busses/i2c-sis96x.c
@@@ -11549,7 -11452,7 +11556,7 @@@ Q:   https://patchwork.kernel.org/project
  F:    drivers/dma/ioat*
  
  INTEL IAA CRYPTO DRIVER
 -M:    Tom Zanussi <tom.zanussi@linux.intel.com>
 +M:    Kristen Accardi <kristen.c.accardi@intel.com>
  L:    [email protected]
  S:    Supported
  F:    Documentation/driver-api/crypto/iaa/iaa-crypto.rst
@@@ -11604,7 -11507,7 +11611,7 @@@ M:   Dan Scally <[email protected]
  R:    Tianshu Qiu <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/userspace-api/media/v4l/pixfmt-srggb10-ipu3.rst
  F:    drivers/media/pci/intel/ipu3/
  
@@@ -11625,12 -11528,12 +11632,12 @@@ M:        Bingbu Cao <[email protected]
  R:    Tianshu Qiu <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/admin-guide/media/ipu6-isys.rst
  F:    drivers/media/pci/intel/ipu6/
  
  INTEL ISHTP ECLITE DRIVER
 -M:    Sumesh K Naduvalath <sumesh.k.naduvalath@intel.com>
 +M:    Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
  L:    [email protected]
  S:    Supported
  F:    drivers/platform/x86/intel/ishtp_eclite.c
@@@ -11690,7 -11593,7 +11697,7 @@@ F:   drivers/usb/misc/usb-ljca.
  F:    include/linux/usb/ljca.h
  
  INTEL MANAGEMENT ENGINE (mei)
 -M:    Tomas Winkler <tomas.winkler@intel.com>
 +M:    Alexander Usyskin <alexander.usyskin@intel.com>
  L:    [email protected]
  S:    Supported
  F:    Documentation/driver-api/mei/*
@@@ -11863,7 -11766,7 +11870,7 @@@ M:   Srinivas Pandruvada <srinivas.pandru
  L:    [email protected]
  S:    Maintained
  F:    Documentation/ABI/testing/debugfs-tpmi
 -F:    drivers/platform/x86/intel/tpmi.c
 +F:    drivers/platform/x86/intel/vsec_tpmi.c
  F:    include/linux/intel_tpmi.h
  
  INTEL UNCORE FREQUENCY CONTROL
@@@ -11971,7 -11874,7 +11978,7 @@@ F:   Documentation/devicetree/bindings/me
  F:    drivers/media/i2c/isl7998x.c
  
  INVENSENSE ICM-426xx IMU DRIVER
 -M:    Jean-Baptiste Maneyrol <jmaneyrol@invensense.com>
 +M:    Jean-Baptiste Maneyrol <jean-baptiste.maneyrol@tdk.com>
  L:    [email protected]
  S:    Maintained
  W:    https://invensense.tdk.com/
@@@ -11986,16 -11889,8 +11993,16 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/iio/gyroscope/invensense,mpu3050.yaml
  F:    drivers/iio/gyro/mpu3050*
  
 +INVENSENSE MPU-6050 IMU DRIVER
 +M:    Jean-Baptiste Maneyrol <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +W:    https://invensense.tdk.com/
 +F:    Documentation/devicetree/bindings/iio/imu/invensense,mpu6050.yaml
 +F:    drivers/iio/imu/inv_mpu6050/
 +
  IOC3 ETHERNET DRIVER
 -M:    Ralf Baechle <[email protected]>
 +M:    Thomas Bogendoerfer <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/net/ethernet/sgi/ioc3-eth.c
@@@ -12146,7 -12041,7 +12153,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-isa*
  
  ISAPNP
@@@ -12214,14 -12109,6 +12221,14 @@@ F: drivers/isdn/Makefil
  F:    drivers/isdn/hardware/
  F:    drivers/isdn/mISDN/
  
 +ISL28022 HARDWARE MONITORING DRIVER
 +M:    Carsten Spieß <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/hwmon/renesas,isl28022.yaml
 +F:    Documentation/hwmon/isl28022.rst
 +F:    drivers/hwmon/isl28022.c
 +
  ISOFS FILESYSTEM
  M:    Jan Kara <[email protected]>
  L:    [email protected]
@@@ -12243,14 -12130,6 +12250,14 @@@ W: https://linuxtv.or
  Q:    http://patchwork.linuxtv.org/project/linux-media/list/
  F:    drivers/media/tuners/it913x*
  
 +ITE IT6263 LVDS TO HDMI BRIDGE DRIVER
 +M:    Liu Ying <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +T:    git https://gitlab.freedesktop.org/drm/misc/kernel.git
 +F:    Documentation/devicetree/bindings/display/bridge/ite,it6263.yaml
 +F:    drivers/gpu/drm/bridge/ite-it6263.c
 +
  ITE IT66121 HDMI BRIDGE DRIVER
  M:    Phong LE <[email protected]>
  M:    Neil Armstrong <[email protected]>
@@@ -12264,7 -12143,7 +12271,7 @@@ M:   Andy Walls <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/admin-guide/media/ivtv*
  F:    drivers/media/pci/ivtv/
  F:    include/uapi/linux/ivtv*
@@@ -12412,7 -12291,7 +12419,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-keene*
  
  KERNEL AUTOMOUNTER
@@@ -12460,7 -12339,7 +12467,7 @@@ F:   mm/usercopy.
  F:    security/Kconfig.hardening
  K:    \b(add|choose)_random_kstack_offset\b
  K:    \b__check_(object_size|heap_object)\b
 -K:    \b__counted_by\b
 +K:    \b__counted_by(_le|_be)?\b
  
  KERNEL JANITORS
  L:    [email protected]
@@@ -12493,7 -12372,6 +12500,7 @@@ F:   include/trace/misc/sunrpc.
  F:    include/uapi/linux/nfsd/
  F:    include/uapi/linux/sunrpc/
  F:    net/sunrpc/
 +F:    tools/net/sunrpc/
  
  KERNEL PACMAN PACKAGING (in addition to generic KERNEL BUILD)
  M:    Thomas Weißschuh <[email protected]>
@@@ -12532,7 -12410,7 +12539,7 @@@ F:   fs/smb/common
  F:    fs/smb/server/
  
  KERNEL UNIT TESTING FRAMEWORK (KUnit)
 -M:    Brendan Higgins <brendan[email protected]>
 +M:    Brendan Higgins <brendan[email protected]>
  M:    David Gow <[email protected]>
  R:    Rae Moar <[email protected]>
  L:    [email protected]
@@@ -12788,7 -12666,7 +12795,7 @@@ F:   samples/kfifo
  
  KGDB / KDB /debug_core
  M:    Jason Wessel <[email protected]>
 -M:    Daniel Thompson <daniel.thompson@linaro.org>
 +M:    Daniel Thompson <danielt@kernel.org>
  R:    Douglas Anderson <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -13198,7 -13076,7 +13205,7 @@@ M:   Michael Ellerman <[email protected]
  R:    Nicholas Piggin <[email protected]>
  R:    Christophe Leroy <[email protected]>
  R:    Naveen N Rao <[email protected]>
 -R:    Madhavan Srinivasan <[email protected]>
 +M:    Madhavan Srinivasan <[email protected]>
  L:    [email protected]
  S:    Supported
  W:    https://github.com/linuxppc/wiki/wiki
@@@ -13465,12 -13343,12 +13472,12 @@@ S:        Maintaine
  F:    Documentation/devicetree/bindings/gpio/loongson,ls-gpio.yaml
  F:    drivers/gpio/gpio-loongson-64bit.c
  
 -LOONGSON LS2X APB DMA DRIVER
 +LOONGSON-2 APB DMA DRIVER
  M:    Binbin Zhou <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/dma/loongson,ls2x-apbdma.yaml
 -F:    drivers/dma/ls2x-apb-dma.c
 +F:    drivers/dma/loongson2-apb-dma.c
  
  LOONGSON LS2X I2C DRIVER
  M:    Binbin Zhou <[email protected]>
@@@ -13697,10 -13575,10 +13704,10 @@@ Q:        http://patchwork.linuxtv.org/project
  F:    drivers/media/dvb-frontends/m88rs2000*
  
  MA901 MASTERKIT USB FM RADIO DRIVER
 -M:    Alexey Klimov <[email protected]>
 +M:    Alexey Klimov <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-ma901.c
  
  MAC80211
@@@ -13802,7 -13680,6 +13809,7 @@@ F:   Documentation/devicetree/bindings/mf
  F:    drivers/input/misc/88pm886-onkey.c
  F:    drivers/mfd/88pm886.c
  F:    drivers/regulator/88pm886-regulator.c
 +F:    drivers/rtc/rtc-88pm886.c
  F:    include/linux/mfd/88pm886.h
  
  MARVELL ARMADA 3700 PHY DRIVERS
@@@ -13944,12 -13821,6 +13951,12 @@@ S: Supporte
  F:    Documentation/networking/device_drivers/ethernet/marvell/octeontx2.rst
  F:    drivers/net/ethernet/marvell/octeontx2/af/
  
 +MARVELL PEM PMU DRIVER
 +M:    Linu Cherian <[email protected]>
 +M:    Gowthami Thiagarajan <[email protected]>
 +S:    Supported
 +F:    drivers/perf/marvell_pem_pmu.c
 +
  MARVELL PRESTERA ETHERNET SWITCH DRIVER
  M:    Taras Chornyi <[email protected]>
  S:    Supported
  R:    [email protected]
  F:    drivers/vdpa/octeon_ep/
  
 +MARVELL OCTEON HOTPLUG DRIVER
 +R:    Shijith Thotton <[email protected]>
 +R:    Vamsi Attunuru <[email protected]>
 +S:    Supported
 +F:    drivers/pci/hotplug/octep_hp.c
 +
  MATROX FRAMEBUFFER DRIVER
  L:    [email protected]
  S:    Orphan
@@@ -14008,7 -13873,7 +14015,7 @@@ MAX2175 SDR TUNER DRIVE
  M:    Ramesh Shanmugasundaram <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/max2175.txt
  F:    Documentation/userspace-api/media/drivers/max2175.rst
  F:    drivers/media/i2c/max2175*
@@@ -14188,7 -14053,7 +14195,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-maxiradio*
  
  MAXLINEAR ETHERNET PHY DRIVER
@@@ -14271,7 -14136,7 +14278,7 @@@ M:   Laurent Pinchart <laurent.pinchart@i
  L:    [email protected]
  S:    Supported
  W:    https://www.linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/mc/
  F:    include/media/media-*.h
  F:    include/uapi/linux/media.h
@@@ -14280,7 -14145,7 +14287,7 @@@ MEDIA DRIVER FOR FREESCALE IMX PX
  M:    Philipp Zabel <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/platform/nxp/imx-pxp.[ch]
  
  MEDIA DRIVERS FOR ASCOT2E
  S:    Supported
  W:    https://linuxtv.org
  W:    http://netup.tv/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/dvb-frontends/ascot2e*
  
  MEDIA DRIVERS FOR CXD2099AR CI CONTROLLERS
@@@ -14297,7 -14162,7 +14304,7 @@@ M:   Jasmin Jessich <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/dvb-frontends/cxd2099*
  
  MEDIA DRIVERS FOR CXD2841ER
  S:    Supported
  W:    https://linuxtv.org
  W:    http://netup.tv/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/dvb-frontends/cxd2841er*
  
  MEDIA DRIVERS FOR CXD2880
@@@ -14314,7 -14179,7 +14321,7 @@@ M:   Yasunari Takiguchi <Yasunari.Takiguc
  L:    [email protected]
  S:    Supported
  W:    http://linuxtv.org/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/dvb-frontends/cxd2880/*
  F:    drivers/media/spi/cxd2880*
  
@@@ -14322,7 -14187,7 +14329,7 @@@ MEDIA DRIVERS FOR DIGITAL DEVICES PCIE 
  L:    [email protected]
  S:    Orphan
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/pci/ddbridge/*
  
  MEDIA DRIVERS FOR FREESCALE IMX
@@@ -14330,7 -14195,7 +14337,7 @@@ M:   Steve Longerbeam <slongerbeam@gmail.
  M:    Philipp Zabel <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/admin-guide/media/imx.rst
  F:    Documentation/devicetree/bindings/media/imx.txt
  F:    drivers/staging/media/imx/
@@@ -14344,7 -14209,7 +14351,7 @@@ M:   Martin Kepplinger <martin.kepplinger
  R:    Purism Kernel Team <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/admin-guide/media/imx7.rst
  F:    Documentation/devicetree/bindings/media/nxp,imx-mipi-csi2.yaml
  F:    Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml
  S:    Supported
  W:    https://linuxtv.org
  W:    http://netup.tv/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/dvb-frontends/helene*
  
  MEDIA DRIVERS FOR HORUS3A
  S:    Supported
  W:    https://linuxtv.org
  W:    http://netup.tv/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/dvb-frontends/horus3a*
  
  MEDIA DRIVERS FOR LNBH25
@@@ -14377,14 -14242,14 +14384,14 @@@ L:        [email protected]
  S:    Supported
  W:    https://linuxtv.org
  W:    http://netup.tv/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/dvb-frontends/lnbh25*
  
  MEDIA DRIVERS FOR MXL5XX TUNER DEMODULATORS
  L:    [email protected]
  S:    Orphan
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/dvb-frontends/mxl5xx*
  
  MEDIA DRIVERS FOR NETUP PCI UNIVERSAL DVB devices
  S:    Supported
  W:    https://linuxtv.org
  W:    http://netup.tv/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/pci/netup_unidvb/*
  
  MEDIA DRIVERS FOR NVIDIA TEGRA - VDE
@@@ -14401,7 -14266,7 +14408,7 @@@ M:   Dmitry Osipenko <[email protected]
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/nvidia,tegra-vde.yaml
  F:    drivers/media/platform/nvidia/tegra-vde/
  
@@@ -14410,7 -14275,7 +14417,7 @@@ M:   Jacopo Mondi <[email protected]
  L:    [email protected]
  L:    [email protected]
  S:    Supported
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/renesas,ceu.yaml
  F:    drivers/media/platform/renesas/renesas-ceu.c
  F:    include/media/drv-intf/renesas-ceu.h
@@@ -14420,7 -14285,7 +14427,7 @@@ M:   Fabrizio Castro <fabrizio.castro.jz@
  L:    [email protected]
  L:    [email protected]
  S:    Supported
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/renesas,drif.yaml
  F:    drivers/media/platform/renesas/rcar_drif.c
  
@@@ -14429,7 -14294,7 +14436,7 @@@ M:   Laurent Pinchart <laurent.pinchart@i
  L:    [email protected]
  L:    [email protected]
  S:    Supported
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/renesas,fcp.yaml
  F:    drivers/media/platform/renesas/rcar-fcp.c
  F:    include/media/rcar-fcp.h
@@@ -14439,7 -14304,7 +14446,7 @@@ M:   Kieran Bingham <kieran.bingham+renes
  L:    [email protected]
  L:    [email protected]
  S:    Supported
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/renesas,fdp1.yaml
  F:    drivers/media/platform/renesas/rcar_fdp1.c
  
@@@ -14448,7 -14313,7 +14455,7 @@@ M:   Niklas Söderlund <niklas.soderlund@
  L:    [email protected]
  L:    [email protected]
  S:    Supported
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/renesas,csi2.yaml
  F:    Documentation/devicetree/bindings/media/renesas,isp.yaml
  F:    Documentation/devicetree/bindings/media/renesas,vin.yaml
@@@ -14462,7 -14327,7 +14469,7 @@@ M:   Kieran Bingham <kieran.bingham+renes
  L:    [email protected]
  L:    [email protected]
  S:    Supported
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/renesas,vsp1.yaml
  F:    drivers/media/platform/renesas/vsp1/
  
@@@ -14470,14 -14335,14 +14477,14 @@@ MEDIA DRIVERS FOR ST STV0910 DEMODULATO
  L:    [email protected]
  S:    Orphan
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/dvb-frontends/stv0910*
  
  MEDIA DRIVERS FOR ST STV6111 TUNER ICs
  L:    [email protected]
  S:    Orphan
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/dvb-frontends/stv6111*
  
  MEDIA DRIVERS FOR STM32 - DCMI / DCMIPP
@@@ -14485,7 -14350,7 +14492,7 @@@ M:   Hugues Fruchet <hugues.fruchet@foss.
  M:    Alain Volmat <[email protected]>
  L:    [email protected]
  S:    Supported
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/st,stm32-dcmi.yaml
  F:    Documentation/devicetree/bindings/media/st,stm32-dcmipp.yaml
  F:    drivers/media/platform/st/stm32/stm32-dcmi.c
  S:    Maintained
  W:    https://linuxtv.org
  Q:    http://patchwork.kernel.org/project/linux-media/list/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/admin-guide/media/
  F:    Documentation/devicetree/bindings/media/
  F:    Documentation/driver-api/media/
@@@ -14524,12 -14389,10 +14531,12 @@@ F:        Documentation/devicetree/bindings/ne
  F:    drivers/bluetooth/btmtkuart.c
  
  MEDIATEK BOARD LEVEL SHUTDOWN DRIVERS
 +M:    Sen Chu <[email protected]>
  M:    Sean Wang <[email protected]>
 +M:    Macpaul Lin <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/devicetree/bindings/power/reset/mt6323-poweroff.txt
 +F:    Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml
  F:    drivers/power/reset/mt6323-poweroff.c
  
  MEDIATEK CIR DRIVER
@@@ -14569,10 -14432,8 +14576,10 @@@ M: Qingfang Deng <[email protected]
  M:    SkyLake Huang <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    drivers/net/phy/mediatek-ge-soc.c
 -F:    drivers/net/phy/mediatek-ge.c
 +F:    drivers/net/phy/mediatek/mtk-ge-soc.c
 +F:    drivers/net/phy/mediatek/mtk-phy-lib.c
 +F:    drivers/net/phy/mediatek/mtk-ge.c
 +F:    drivers/net/phy/mediatek/mtk.h
  F:    drivers/phy/mediatek/phy-mtk-xfi-tphy.c
  
  MEDIATEK I2C CONTROLLER DRIVER
@@@ -14636,32 -14497,6 +14643,32 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/mmc/mtk-sd.yaml
  F:    drivers/mmc/host/mtk-sd.c
  
 +MEDIATEK MT6735 CLOCK & RESET DRIVERS
 +M:    Yassine Oudjana <[email protected]>
 +L:    [email protected]
 +L:    [email protected] (moderated for non-subscribers)
 +S:    Maintained
 +F:    drivers/clk/mediatek/clk-mt6735-apmixedsys.c
 +F:    drivers/clk/mediatek/clk-mt6735-imgsys.c
 +F:    drivers/clk/mediatek/clk-mt6735-infracfg.c
 +F:    drivers/clk/mediatek/clk-mt6735-mfgcfg.c
 +F:    drivers/clk/mediatek/clk-mt6735-pericfg.c
 +F:    drivers/clk/mediatek/clk-mt6735-topckgen.c
 +F:    drivers/clk/mediatek/clk-mt6735-vdecsys.c
 +F:    drivers/clk/mediatek/clk-mt6735-vencsys.c
 +F:    include/dt-bindings/clock/mediatek,mt6735-apmixedsys.h
 +F:    include/dt-bindings/clock/mediatek,mt6735-imgsys.h
 +F:    include/dt-bindings/clock/mediatek,mt6735-infracfg.h
 +F:    include/dt-bindings/clock/mediatek,mt6735-mfgcfg.h
 +F:    include/dt-bindings/clock/mediatek,mt6735-pericfg.h
 +F:    include/dt-bindings/clock/mediatek,mt6735-topckgen.h
 +F:    include/dt-bindings/clock/mediatek,mt6735-vdecsys.h
 +F:    include/dt-bindings/clock/mediatek,mt6735-vencsys.h
 +F:    include/dt-bindings/reset/mediatek,mt6735-infracfg.h
 +F:    include/dt-bindings/reset/mediatek,mt6735-mfgcfg.h
 +F:    include/dt-bindings/reset/mediatek,mt6735-pericfg.h
 +F:    include/dt-bindings/reset/mediatek,mt6735-vdecsys.h
 +
  MEDIATEK MT76 WIRELESS LAN DRIVER
  M:    Felix Fietkau <[email protected]>
  M:    Lorenzo Bianconi <[email protected]>
@@@ -14718,11 -14553,9 +14725,11 @@@ F: Documentation/devicetree/bindings/mt
  F:    drivers/mtd/nand/raw/mtk_*
  
  MEDIATEK PMIC LED DRIVER
 +M:    Sen Chu <[email protected]>
  M:    Sean Wang <[email protected]>
 +M:    Macpaul Lin <[email protected]>
  S:    Maintained
 -F:    Documentation/devicetree/bindings/leds/leds-mt6323.txt
 +F:    Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml
  F:    drivers/leds/leds-mt6323.c
  
  MEDIATEK RANDOM NUMBER GENERATOR SUPPORT
@@@ -15022,8 -14855,6 +15029,8 @@@ S:   Maintaine
  W:    http://www.linux-mm.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
  T:    quilt git://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new
 +F:    Documentation/admin-guide/mm/
 +F:    Documentation/mm/
  F:    include/linux/gfp.h
  F:    include/linux/gfp_types.h
  F:    include/linux/memfd.h
  L:    [email protected]
  S:    Supported
  W:    http://linux-meson.com/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/cec/amlogic,meson-gx-ao-cec.yaml
  F:    drivers/media/cec/platform/meson/ao-cec-g12a.c
  F:    drivers/media/cec/platform/meson/ao-cec.c
@@@ -15117,7 -14948,7 +15124,7 @@@ M:   Neil Armstrong <neil.armstrong@linar
  L:    [email protected]
  L:    [email protected]
  S:    Supported
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/amlogic,axg-ge2d.yaml
  F:    drivers/media/platform/amlogic/meson-ge2d/
  
@@@ -15133,7 -14964,7 +15140,7 @@@ M:   Neil Armstrong <neil.armstrong@linar
  L:    [email protected]
  L:    [email protected]
  S:    Supported
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/amlogic,gx-vdec.yaml
  F:    drivers/staging/media/meson/vdec/
  
@@@ -15317,19 -15148,6 +15324,19 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/interrupt-controller/microchip,lan966x-oic.yaml
  F:    drivers/irqchip/irq-lan966x-oic.c
  
 +MICROCHIP LAN966X PCI DRIVER
 +M:    Herve Codina <[email protected]>
 +S:    Maintained
 +F:    drivers/misc/lan966x_pci.c
 +F:    drivers/misc/lan966x_pci.dtso
 +
 +MICROCHIP LAN969X ETHERNET DRIVER
 +M:    Daniel Machon <[email protected]>
 +M:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/net/ethernet/microchip/lan969x/*
 +
  MICROCHIP LCDFB DRIVER
  M:    Nicolas Ferre <[email protected]>
  L:    [email protected]
@@@ -15650,15 -15468,6 +15657,15 @@@ F: arch/arm/boot/dts/marvell/armada-xp-
  F:    arch/arm/boot/dts/marvell/armada-xp-crs328-4c-20s-4s-bit.dts
  F:    arch/arm/boot/dts/marvell/armada-xp-crs328-4c-20s-4s.dts
  
 +MIN HEAP
 +M:    Kuan-Wei Chiu <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/core-api/min_heap.rst
 +F:    include/linux/min_heap.h
 +F:    lib/min_heap.c
 +F:    lib/test_min_heap.c
 +
  MIPI CCS, SMIA AND SMIA++ IMAGE SENSOR DRIVER
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
  M:    Thomas Bogendoerfer <[email protected]>
  L:    [email protected]
  S:    Maintained
 -W:    http://www.linux-mips.org/
  Q:    https://patchwork.kernel.org/project/linux-mips/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux.git
  F:    Documentation/devicetree/bindings/mips/
@@@ -15752,7 -15562,7 +15759,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Odd Fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-miropcm20*
  
  MITSUMI MM8013 FG DRIVER
@@@ -15901,10 -15711,10 +15908,10 @@@ F:        Documentation/hwmon/mp9941.rs
  F:    drivers/hwmon/pmbus/mp9941.c
  
  MR800 AVERMEDIA USB FM RADIO DRIVER
 -M:    Alexey Klimov <[email protected]>
 +M:    Alexey Klimov <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-mr800.c
  
  MRF24J40 IEEE 802.15.4 RADIO DRIVER
@@@ -15971,7 -15781,7 +15978,7 @@@ MT9M114 ONSEMI SENSOR DRIVE
  M:    Laurent Pinchart <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/onnn,mt9m114.yaml
  F:    drivers/media/i2c/mt9m114.c
  
@@@ -15979,15 -15789,16 +15986,15 @@@ MT9P031 APTINA CAMERA SENSO
  M:    Laurent Pinchart <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/aptina,mt9p031.yaml
  F:    drivers/media/i2c/mt9p031.c
 -F:    include/media/i2c/mt9p031.h
  
  MT9T112 APTINA CAMERA SENSOR
  M:    Jacopo Mondi <[email protected]>
  L:    [email protected]
  S:    Odd Fixes
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/mt9t112.c
  F:    include/media/i2c/mt9t112.h
  
@@@ -15995,7 -15806,7 +16002,7 @@@ MT9V032 APTINA CAMERA SENSO
  M:    Laurent Pinchart <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/mt9v032.txt
  F:    drivers/media/i2c/mt9v032.c
  F:    include/media/i2c/mt9v032.h
@@@ -16004,7 -15815,7 +16011,7 @@@ MT9V111 APTINA CAMERA SENSO
  M:    Jacopo Mondi <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/aptina,mt9v111.yaml
  F:    drivers/media/i2c/mt9v111.c
  
@@@ -16136,14 -15947,6 +16143,14 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/hwmon/nuvoton,nct6775.yaml
  F:    drivers/hwmon/nct6775-i2c.c
  
 +NCT7363 HARDWARE MONITOR DRIVER
 +M:    Ban Feng <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/hwmon/nuvoton,nct7363.yaml
 +F:    Documentation/hwmon/nct7363.rst
 +F:    drivers/hwmon/nct7363.c
 +
  NETCONSOLE
  M:    Breno Leitao <[email protected]>
  S:    Maintained
@@@ -16195,8 -15998,9 +16202,8 @@@ F:   net/netfilter
  F:    tools/testing/selftests/net/netfilter/
  
  NETROM NETWORK LAYER
 -M:    Ralf Baechle <[email protected]>
  L:    [email protected]
 -S:    Maintained
 +S:    Orphan
  W:    https://linux-ax25.in-berlin.de
  F:    include/net/netrom.h
  F:    include/uapi/linux/netrom.h
@@@ -16266,13 -16070,10 +16273,13 @@@ F:        include/linux/platform_data/wiznet.
  F:    include/uapi/linux/cn_proc.h
  F:    include/uapi/linux/ethtool_netlink.h
  F:    include/uapi/linux/if_*
 +F:    include/uapi/linux/net_shaper.h
  F:    include/uapi/linux/netdev*
  F:    tools/testing/selftests/drivers/net/
  X:    Documentation/devicetree/bindings/net/bluetooth/
 +X:    Documentation/devicetree/bindings/net/can/
  X:    Documentation/devicetree/bindings/net/wireless/
 +X:    drivers/net/can/
  X:    drivers/net/wireless/
  
  NETWORKING DRIVERS (WIRELESS)
@@@ -16288,6 -16089,7 +16295,6 @@@ F:   drivers/net/wireless
  
  NETWORKING [DSA]
  M:    Andrew Lunn <[email protected]>
 -M:    Florian Fainelli <[email protected]>
  M:    Vladimir Oltean <[email protected]>
  S:    Maintained
  F:    Documentation/devicetree/bindings/net/dsa/
@@@ -16361,8 -16163,6 +16368,8 @@@ X:   include/net/mac80211.
  X:    include/net/wext.h
  X:    net/9p/
  X:    net/bluetooth/
 +X:    net/can/
 +X:    net/ceph/
  X:    net/mac80211/
  X:    net/rfkill/
  X:    net/wireless/
@@@ -16451,7 -16251,7 +16458,7 @@@ F:   include/net/mptcp.
  F:    include/trace/events/mptcp.h
  F:    include/uapi/linux/mptcp*.h
  F:    net/mptcp/
 -F:    tools/testing/selftests/bpf/*/*mptcp*.c
 +F:    tools/testing/selftests/bpf/*/*mptcp*.[ch]
  F:    tools/testing/selftests/net/mptcp/
  
  NETWORKING [TCP]
@@@ -16645,7 -16445,6 +16652,7 @@@ NOVATEK NVT-TS I2C TOUCHSCREEN DRIVE
  M:    Hans de Goede <[email protected]>
  L:    [email protected]
  S:    Maintained
 +F:    Documentation/devicetree/bindings/input/touchscreen/novatek,nvt-ts.yaml
  F:    drivers/input/touchscreen/novatek-nvt-ts.c
  
  NSDEPS
@@@ -16946,6 -16745,13 +16953,6 @@@ S:  Maintaine
  F:    Documentation/hwmon/nzxt-kraken3.rst
  F:    drivers/hwmon/nzxt-kraken3.c
  
 -NZXT-SMART2 HARDWARE MONITORING DRIVER
 -M:    Aleksandr Mezin <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/hwmon/nzxt-smart2.rst
 -F:    drivers/hwmon/nzxt-smart2.c
 -
  OBJAGG
  M:    Jiri Pirko <[email protected]>
  L:    [email protected]
@@@ -17087,6 -16893,14 +17094,6 @@@ S:  Maintaine
  F:    Documentation/devicetree/bindings/i2c/ti,omap4-i2c.yaml
  F:    drivers/i2c/busses/i2c-omap.c
  
 -OMAP IMAGING SUBSYSTEM (OMAP3 ISP and OMAP4 ISS)
 -M:    Laurent Pinchart <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/media/ti,omap3isp.txt
 -F:    drivers/media/platform/ti/omap3isp/
 -F:    drivers/staging/media/omap4iss/
 -
  OMAP MMC SUPPORT
  M:    Aaro Koskinen <[email protected]>
  L:    [email protected]
@@@ -17197,13 -17011,13 +17204,13 @@@ OMNIVISION OV01A10 SENSOR DRIVE
  M:    Bingbu Cao <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/ov01a10.c
  
  OMNIVISION OV02A10 SENSOR DRIVER
  L:    [email protected]
  S:    Orphan
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov02a10.yaml
  F:    drivers/media/i2c/ov02a10.c
  
@@@ -17211,29 -17025,28 +17218,29 @@@ OMNIVISION OV08D10 SENSOR DRIVE
  M:    Jimmy Su <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/ov08d10.c
  
  OMNIVISION OV08X40 SENSOR DRIVER
  M:    Jason Chen <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/ov08x40.c
 +F:    Documentation/devicetree/bindings/media/i2c/ovti,ov08x40.yaml
  
  OMNIVISION OV13858 SENSOR DRIVER
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/ov13858.c
  
  OMNIVISION OV13B10 SENSOR DRIVER
  M:    Arec Kao <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/ov13b10.c
  
  OMNIVISION OV2680 SENSOR DRIVER
@@@ -17241,7 -17054,7 +17248,7 @@@ M:   Rui Miguel Silva <[email protected]
  M:    Hans de Goede <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov2680.yaml
  F:    drivers/media/i2c/ov2680.c
  
@@@ -17249,7 -17062,7 +17256,7 @@@ OMNIVISION OV2685 SENSOR DRIVE
  M:    Shunqian Zheng <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov2685.yaml
  F:    drivers/media/i2c/ov2685.c
  
@@@ -17259,14 -17072,14 +17266,14 @@@ R:        Sakari Ailus <[email protected]
  R:    Bingbu Cao <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/ov2740.c
  
  OMNIVISION OV4689 SENSOR DRIVER
  M:    Mikhail Rudenko <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml
  F:    drivers/media/i2c/ov4689.c
  
@@@ -17274,7 -17087,7 +17281,7 @@@ OMNIVISION OV5640 SENSOR DRIVE
  M:    Steve Longerbeam <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/ov5640.c
  
  OMNIVISION OV5647 SENSOR DRIVER
@@@ -17282,7 -17095,7 +17289,7 @@@ M:   Dave Stevenson <dave.stevenson@raspb
  M:    Jacopo Mondi <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov5647.yaml
  F:    drivers/media/i2c/ov5647.c
  
@@@ -17290,7 -17103,7 +17297,7 @@@ OMNIVISION OV5670 SENSOR DRIVE
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov5670.yaml
  F:    drivers/media/i2c/ov5670.c
  
@@@ -17298,7 -17111,7 +17305,7 @@@ OMNIVISION OV5675 SENSOR DRIVE
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov5675.yaml
  F:    drivers/media/i2c/ov5675.c
  
@@@ -17306,7 -17119,7 +17313,7 @@@ OMNIVISION OV5693 SENSOR DRIVE
  M:    Daniel Scally <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov5693.yaml
  F:    drivers/media/i2c/ov5693.c
  
@@@ -17314,21 -17127,21 +17321,21 @@@ OMNIVISION OV5695 SENSOR DRIVE
  M:    Shunqian Zheng <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/ov5695.c
  
  OMNIVISION OV64A40 SENSOR DRIVER
  M:    Jacopo Mondi <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov64a40.yaml
  F:    drivers/media/i2c/ov64a40.c
  
  OMNIVISION OV7670 SENSOR DRIVER
  L:    [email protected]
  S:    Orphan
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ov7670.txt
  F:    drivers/media/i2c/ov7670.c
  
@@@ -17336,7 -17149,7 +17343,7 @@@ OMNIVISION OV772x SENSOR DRIVE
  M:    Jacopo Mondi <[email protected]>
  L:    [email protected]
  S:    Odd fixes
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov772x.yaml
  F:    drivers/media/i2c/ov772x.c
  F:    include/media/i2c/ov772x.h
  OMNIVISION OV7740 SENSOR DRIVER
  L:    [email protected]
  S:    Orphan
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ov7740.txt
  F:    drivers/media/i2c/ov7740.c
  
@@@ -17352,7 -17165,7 +17359,7 @@@ OMNIVISION OV8856 SENSOR DRIVE
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov8856.yaml
  F:    drivers/media/i2c/ov8856.c
  
@@@ -17361,7 -17174,7 +17368,7 @@@ M:   Jacopo Mondi <jacopo.mondi@ideasonbo
  M:    Nicholas Roth <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov8858.yaml
  F:    drivers/media/i2c/ov8858.c
  
@@@ -17369,7 -17182,7 +17376,7 @@@ OMNIVISION OV9282 SENSOR DRIVE
  M:    Dave Stevenson <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov9282.yaml
  F:    drivers/media/i2c/ov9282.c
  
@@@ -17385,7 -17198,7 +17392,7 @@@ R:   Akinobu Mita <[email protected]
  R:    Sylwester Nawrocki <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/ov9650.txt
  F:    drivers/media/i2c/ov9650.c
  
@@@ -17394,7 -17207,7 +17401,7 @@@ M:   Tianshu Qiu <[email protected]
  R:    Bingbu Cao <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/ov9734.c
  
  ONBOARD USB HUB DRIVER
@@@ -17619,7 -17432,6 +17626,7 @@@ S:   Supporte
  F:    Documentation/core-api/packing.rst
  F:    include/linux/packing.h
  F:    lib/packing.c
 +F:    lib/packing_test.c
  
  PADATA PARALLEL EXECUTION MECHANISM
  M:    Steffen Klassert <[email protected]>
@@@ -18059,8 -17871,8 +18066,8 @@@ M:   Bartosz Golaszewski <[email protected]
  L:    [email protected]
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git
 -F:    drivers/pci/pwrctl/*
 -F:    include/linux/pci-pwrctl.h
 +F:    drivers/pci/pwrctrl/*
 +F:    include/linux/pci-pwrctrl.h
  
  PCI SUBSYSTEM
  M:    Bjorn Helgaas <[email protected]>
@@@ -18082,15 -17894,6 +18089,15 @@@ F: include/linux/of_pci.
  F:    include/linux/pci*
  F:    include/uapi/linux/pci*
  
 +PCIE BANDWIDTH CONTROLLER
 +M:    Ilpo Järvinen <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/pci/pcie/bwctrl.c
 +F:    drivers/thermal/pcie_cooling.c
 +F:    include/linux/pci-bwctrl.h
 +F:    tools/testing/selftests/pcie_bwctrl/
 +
  PCIE DRIVER FOR AMAZON ANNAPURNA LABS
  M:    Jonathan Chocron <[email protected]>
  L:    [email protected]
@@@ -18390,13 -18193,6 +18397,13 @@@ F: drivers/pinctrl
  F:    include/dt-bindings/pinctrl/
  F:    include/linux/pinctrl/
  
 +PIN CONTROLLER - AIROHA
 +M:    Lorenzo Bianconi <[email protected]>
 +L:    [email protected] (moderated for non-subscribers)
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/pinctrl/airoha,en7581-pinctrl.yaml
 +F:    drivers/pinctrl/mediatek/pinctrl-airoha.c
 +
  PIN CONTROLLER - AMD
  M:    Basavaraj Natikar <[email protected]>
  M:    Shyam Sundar S K <[email protected]>
@@@ -18473,7 -18269,6 +18480,7 @@@ PIN CONTROLLER - QUALCOM
  M:    Bjorn Andersson <[email protected]>
  L:    [email protected]
  S:    Maintained
 +C:    irc://irc.oftc.net/linux-msm
  F:    Documentation/devicetree/bindings/pinctrl/qcom,*
  F:    drivers/pinctrl/qcom/
  
@@@ -18708,6 -18503,13 +18715,13 @@@ S: Maintaine
  F:    include/linux/psi*
  F:    kernel/sched/psi.c
  
+ PROPELLER BUILD
+ M:    Rong Xu <[email protected]>
+ M:    Han Shen <[email protected]>
+ S:    Supported
+ F:    Documentation/dev-tools/propeller.rst
+ F:    scripts/Makefile.propeller
  PRINTK
  M:    Petr Mladek <[email protected]>
  R:    Steven Rostedt <[email protected]>
@@@ -18735,6 -18537,7 +18749,6 @@@ F:   include/linux/proc_fs.
  F:    tools/testing/selftests/proc/
  
  PROC SYSCTL
 -M:    Luis Chamberlain <[email protected]>
  M:    Kees Cook <[email protected]>
  M:    Joel Granados <[email protected]>
  L:    [email protected]
@@@ -18840,13 -18643,6 +18854,13 @@@ S: Maintaine
  F:    drivers/ptp/ptp_vclock.c
  F:    net/ethtool/phc_vclocks.c
  
 +PTP VMCLOCK SUPPORT
 +M:    David Woodhouse <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/ptp/ptp_vmclock.c
 +F:    include/uapi/linux/vmclock-abi.h
 +
  PTRACE SUPPORT
  M:    Oleg Nesterov <[email protected]>
  S:    Maintained
@@@ -18863,7 -18659,7 +18877,7 @@@ PULSE8-CEC DRIVE
  M:    Hans Verkuil <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/cec/usb/pulse8/
  
  PURELIFI PLFXLC DRIVER
@@@ -18878,7 -18674,7 +18892,7 @@@ L:   [email protected]       (subscribers-only
  L:    [email protected]
  S:    Maintained
  W:    http://www.isely.net/pvrusb2/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/driver-api/media/drivers/pvrusb2*
  F:    drivers/media/usb/pvrusb2/
  
@@@ -18886,7 -18682,7 +18900,7 @@@ PWC WEBCAM DRIVE
  M:    Hans Verkuil <[email protected]>
  L:    [email protected]
  S:    Odd Fixes
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/pwc/*
  F:    include/trace/events/pwc.h
  
@@@ -19390,7 -19186,7 +19404,7 @@@ R:   Bryan O'Donoghue <bryan.odonoghue@li
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/*venus*
  F:    drivers/media/platform/qcom/venus/
  
@@@ -19435,14 -19231,14 +19449,14 @@@ RADIOSHARK RADIO DRIVE
  M:    Hans Verkuil <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-shark.c
  
  RADIOSHARK2 RADIO DRIVER
  M:    Hans Verkuil <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-shark2.c
  F:    drivers/media/radio/radio-tea5777.c
  
@@@ -19466,7 -19262,7 +19480,7 @@@ RAINSHADOW-CEC DRIVE
  M:    Hans Verkuil <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/cec/usb/rainshadow/
  
  RALINK MIPS ARCHITECTURE
@@@ -19545,19 -19341,12 +19559,19 @@@ F:        Documentation/devicetree/bindings/me
  F:    drivers/media/platform/raspberrypi/pisp_be/
  F:    include/uapi/linux/media/raspberrypi/
  
 +RASPBERRY PI PISP CAMERA FRONT END
 +M:    Tomi Valkeinen <[email protected]>
 +M:    Raspberry Pi Kernel Maintenance <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/media/raspberrypi,rp1-cfe.yaml
 +F:    drivers/media/platform/raspberrypi/rp1-cfe/
 +
  RC-CORE / LIRC FRAMEWORK
  M:    Sean Young <[email protected]>
  L:    [email protected]
  S:    Maintained
  W:    http://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/driver-api/media/rc-core.rst
  F:    Documentation/userspace-api/media/rc/
  F:    drivers/media/rc/
@@@ -19714,12 -19503,6 +19728,12 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/net/dsa/realtek.yaml
  F:    drivers/net/dsa/realtek/*
  
 +REALTEK SPI-NAND
 +M:    Chris Packham <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/spi/realtek,rtl9301-snand.yaml
 +F:    drivers/spi/spi-realtek-rtl-snand.c
 +
  REALTEK WIRELESS DRIVER (rtlwifi family)
  M:    Ping-Ke Shih <[email protected]>
  L:    [email protected]
@@@ -19755,6 -19538,11 +19769,6 @@@ F:  Documentation/devicetree/bindings/re
  F:    drivers/base/regmap/
  F:    include/linux/regmap.h
  
 -REISERFS FILE SYSTEM
 -L:    [email protected]
 -S:    Obsolete
 -F:    fs/reiserfs/
 -
  REMOTE PROCESSOR (REMOTEPROC) SUBSYSTEM
  M:    Bjorn Andersson <[email protected]>
  M:    Mathieu Poirier <[email protected]>
@@@ -19804,17 -19592,6 +19818,17 @@@ S: Supporte
  F:    Documentation/devicetree/bindings/i2c/renesas,iic-emev2.yaml
  F:    drivers/i2c/busses/i2c-emev2.c
  
 +RENESAS ETHERNET AVB DRIVER
 +M:    Paul Barker <[email protected]>
 +M:    Niklas Söderlund <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    Documentation/devicetree/bindings/net/renesas,etheravb.yaml
 +F:    drivers/net/ethernet/renesas/Kconfig
 +F:    drivers/net/ethernet/renesas/Makefile
 +F:    drivers/net/ethernet/renesas/ravb*
 +
  RENESAS ETHERNET SWITCH DRIVER
  R:    Yoshihiro Shimoda <[email protected]>
  L:    [email protected]
@@@ -19840,17 -19617,6 +19854,17 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/sound/renesas,idt821034.yaml
  F:    sound/soc/codecs/idt821034.c
  
 +RENESAS R-CAR & FSI AUDIO (ASoC) DRIVERS
 +M:    Kuninori Morimoto <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    Documentation/devicetree/bindings/sound/renesas,rsnd.*
 +F:    Documentation/devicetree/bindings/sound/renesas,fsi.yaml
 +F:    sound/soc/renesas/rcar/
 +F:    sound/soc/renesas/fsi.c
 +F:    include/sound/sh_fsi.h
 +
  RENESAS R-CAR GEN3 & RZ/N1 NAND CONTROLLER DRIVER
  M:    Miquel Raynal <[email protected]>
  L:    [email protected]
@@@ -19875,14 -19641,6 +19889,14 @@@ F: Documentation/devicetree/bindings/i2
  F:    drivers/i2c/busses/i2c-rcar.c
  F:    drivers/i2c/busses/i2c-sh_mobile.c
  
 +RENESAS R-CAR SATA DRIVER
 +M:    Geert Uytterhoeven <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    Documentation/devicetree/bindings/ata/renesas,rcar-sata.yaml
 +F:    drivers/ata/sata_rcar.c
 +
  RENESAS R-CAR THERMAL DRIVERS
  M:    Niklas Söderlund <[email protected]>
  L:    [email protected]
@@@ -19899,15 -19657,6 +19913,15 @@@ S: Supporte
  F:    Documentation/devicetree/bindings/i2c/renesas,riic.yaml
  F:    drivers/i2c/busses/i2c-riic.c
  
 +RENESAS RZ AUDIO (ASoC) DRIVER
 +M:    Biju Das <[email protected]>
 +M:    Lad Prabhakar <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    Documentation/devicetree/bindings/sound/renesas,rz-ssi.yaml
 +F:    sound/soc/renesas/rz-ssi.c
 +
  RENESAS RZ/G2L A/D DRIVER
  M:    Lad Prabhakar <[email protected]>
  L:    [email protected]
@@@ -19924,14 -19673,6 +19938,14 @@@ S: Supporte
  F:    Documentation/devicetree/bindings/timer/renesas,rz-mtu3.yaml
  F:    drivers/counter/rz-mtu3-cnt.c
  
 +RENESAS RTCA-3 RTC DRIVER
 +M:    Claudiu Beznea <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    Documentation/devicetree/bindings/rtc/renesas,rz-rtca3.yaml
 +F:    drivers/rtc/rtc-renesas-rtca3.c
 +
  RENESAS RZ/N1 A5PSW SWITCH DRIVER
  M:    Clément Léger <[email protected]>
  L:    [email protected]
@@@ -19975,17 -19716,6 +19989,17 @@@ S: Supporte
  F:    Documentation/devicetree/bindings/i2c/renesas,rzv2m.yaml
  F:    drivers/i2c/busses/i2c-rzv2m.c
  
 +RENESAS SUPERH ETHERNET DRIVER
 +M:    Niklas Söderlund <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    Documentation/devicetree/bindings/net/renesas,ether.yaml
 +F:    drivers/net/ethernet/renesas/Kconfig
 +F:    drivers/net/ethernet/renesas/Makefile
 +F:    drivers/net/ethernet/renesas/sh_eth*
 +F:    include/linux/sh_eth.h
 +
  RENESAS USB PHY DRIVER
  M:    Yoshihiro Shimoda <[email protected]>
  L:    [email protected]
@@@ -20093,15 -19823,6 +20107,15 @@@ F: arch/riscv
  N:    riscv
  K:    riscv
  
 +RISC-V IOMMU
 +M:    Tomasz Jeznach <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/iommu/linux.git
 +F:    Documentation/devicetree/bindings/iommu/riscv,iommu.yaml
 +F:    drivers/iommu/riscv/
 +
  RISC-V MICROCHIP FPGA SUPPORT
  M:    Conor Dooley <[email protected]>
  M:    Daire McNamara <[email protected]>
@@@ -20121,7 -19842,6 +20135,7 @@@ F:   arch/riscv/boot/dts/microchip
  F:    drivers/char/hw_random/mpfs-rng.c
  F:    drivers/clk/microchip/clk-mpfs*.c
  F:    drivers/firmware/microchip/mpfs-auto-update.c
 +F:    drivers/gpio/gpio-mpfs.c
  F:    drivers/i2c/busses/i2c-microchip-corei2c.c
  F:    drivers/mailbox/mailbox-mpfs.c
  F:    drivers/pci/controller/plda/pcie-microchip-host.c
@@@ -20140,10 -19860,12 +20154,10 @@@ L:        [email protected]
  S:    Maintained
  Q:    https://patchwork.kernel.org/project/linux-riscv/list/
  T:    git https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/
 -F:    Documentation/devicetree/bindings/riscv/
 -F:    arch/riscv/boot/dts/
 -X:    arch/riscv/boot/dts/allwinner/
 -X:    arch/riscv/boot/dts/renesas/
 -X:    arch/riscv/boot/dts/sophgo/
 -X:    arch/riscv/boot/dts/thead/
 +F:    arch/riscv/boot/dts/canaan/
 +F:    arch/riscv/boot/dts/microchip/
 +F:    arch/riscv/boot/dts/sifive/
 +F:    arch/riscv/boot/dts/starfive/
  
  RISC-V PMU DRIVERS
  M:    Atish Patra <[email protected]>
  S:    Maintained
  T:    git https://github.com/pdp7/linux.git
  F:    Documentation/devicetree/bindings/clock/thead,th1520-clk-ap.yaml
 +F:    Documentation/devicetree/bindings/mailbox/thead,th1520-mbox.yaml
 +F:    Documentation/devicetree/bindings/net/thead,th1520-gmac.yaml
 +F:    Documentation/devicetree/bindings/pinctrl/thead,th1520-pinctrl.yaml
  F:    arch/riscv/boot/dts/thead/
  F:    drivers/clk/thead/clk-th1520-ap.c
 +F:    drivers/mailbox/mailbox-th1520.c
 +F:    drivers/net/ethernet/stmicro/stmmac/dwmac-thead.c
 +F:    drivers/pinctrl/pinctrl-th1520.c
  F:    include/dt-bindings/clock/thead,th1520-clk-ap.h
  
  RNBD BLOCK DRIVERS
@@@ -20334,8 -20050,9 +20348,8 @@@ F:   include/linux/mfd/rohm-generic.
  F:    include/linux/mfd/rohm-shared.h
  
  ROSE NETWORK LAYER
 -M:    Ralf Baechle <[email protected]>
  L:    [email protected]
 -S:    Maintained
 +S:    Orphan
  W:    https://linux-ax25.in-berlin.de
  F:    include/net/rose.h
  F:    include/uapi/linux/rose.h
@@@ -20345,7 -20062,7 +20359,7 @@@ ROTATION DRIVER FOR ALLWINNER A83
  M:    Jernej Skrabec <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/allwinner,sun8i-a83t-de2-rotate.yaml
  F:    drivers/media/platform/sunxi/sun8i-rotate/
  
@@@ -20409,13 -20126,6 +20423,13 @@@ S: Maintaine
  T:    git https://github.com/pkshih/rtw.git
  F:    drivers/net/wireless/realtek/rtl8xxxu/
  
 +RTL9300 I2C DRIVER (rtl9300-i2c)
 +M:    Chris Packham <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/i2c/realtek,rtl9301-i2c.yaml
 +F:    drivers/i2c/busses/i2c-rtl9300.c
 +
  RTRS TRANSPORT DRIVERS
  M:    Md. Haris Iqbal <[email protected]>
  M:    Jack Wang <[email protected]>
@@@ -20450,22 -20160,13 +20464,22 @@@ B:        https://github.com/Rust-for-Linux/li
  C:    zulip://rust-for-linux.zulipchat.com
  P:    https://rust-for-linux.com/contributing
  T:    git https://github.com/Rust-for-Linux/linux.git rust-next
 +F:    .clippy.toml
  F:    Documentation/rust/
 +F:    include/trace/events/rust_sample.h
  F:    rust/
  F:    samples/rust/
  F:    scripts/*rust*
  F:    tools/testing/selftests/rust/
  K:    \b(?i:rust)\b
  
 +RUST [ALLOC]
 +M:    Danilo Krummrich <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    rust/kernel/alloc.rs
 +F:    rust/kernel/alloc/
 +
  RXRPC SOCKETS (AF_RXRPC)
  M:    David Howells <[email protected]>
  M:    Marc Dionne <[email protected]>
  S:    Supported
  F:    drivers/s390/cio/
  
 +S390 CRYPTO MODULES, PRNG DRIVER, ARCH RANDOM
 +M:    Harald Freudenberger <[email protected]>
 +M:    Holger Dengler <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    arch/s390/crypto/
 +F:    arch/s390/include/asm/archrandom.h
 +F:    arch/s390/include/asm/cpacf.h
 +
  S390 DASD DRIVER
  M:    Stefan Haberland <[email protected]>
  M:    Jan Hoeppner <[email protected]>
@@@ -20526,14 -20217,6 +20540,14 @@@ F: block/partitions/ibm.
  F:    drivers/s390/block/dasd*
  F:    include/linux/dasd_mod.h
  
 +S390 HWRANDOM TRNG DRIVER
 +M:    Harald Freudenberger <[email protected]>
 +M:    Holger Dengler <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/char/hw_random/s390-trng.c
 +
  S390 IOMMU (PCI)
  M:    Niklas Schnelle <[email protected]>
  M:    Matthew Rosato <[email protected]>
@@@ -20578,12 -20261,6 +20592,12 @@@ F: Documentation/arch/s390/pci.rs
  F:    arch/s390/pci/
  F:    drivers/pci/hotplug/s390_pci_hpc.c
  
 +S390 PTP DRIVER
 +M:    Sven Schnelle <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/ptp/ptp_s390.c
 +
  S390 SCM DRIVER
  M:    Vineeth Vijayan <[email protected]>
  L:    [email protected]
@@@ -20621,16 -20298,10 +20635,16 @@@ F:        arch/s390/kvm/pci
  F:    drivers/vfio/pci/vfio_pci_zdev.c
  F:    include/uapi/linux/vfio_zdev.h
  
 -S390 ZCRYPT DRIVER
 +S390 ZCRYPT AND PKEY DRIVER AND AP BUS
  M:    Harald Freudenberger <[email protected]>
 +M:    Holger Dengler <[email protected]>
  L:    [email protected]
  S:    Supported
 +F:    arch/s390/include/asm/ap.h
 +F:    arch/s390/include/asm/pkey.h
 +F:    arch/s390/include/asm/trace/zcrypt.h
 +F:    arch/s390/include/uapi/asm/pkey.h
 +F:    arch/s390/include/uapi/asm/zcrypt.h
  F:    drivers/s390/crypto/
  
  S390 ZFCP DRIVER
@@@ -20645,7 -20316,7 +20659,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Odd Fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/saa6588*
  
  SAA7134 VIDEO4LINUX DRIVER
@@@ -20653,7 -20324,7 +20667,7 @@@ M:   Mauro Carvalho Chehab <mchehab@kerne
  L:    [email protected]
  S:    Odd fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/driver-api/media/drivers/saa7134*
  F:    drivers/media/pci/saa7134/
  
@@@ -20661,7 -20332,7 +20675,7 @@@ SAA7146 VIDEO4LINUX-2 DRIVE
  M:    Hans Verkuil <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/common/saa7146/
  F:    drivers/media/pci/saa7146/
  F:    include/media/drv-intf/saa7146*
  S:    Maintained
  B:    mailto:[email protected]
  F:    Documentation/devicetree/bindings/clock/samsung,s2mps11.yaml
 -F:    Documentation/devicetree/bindings/mfd/samsung,s2m*.yaml
 +F:    Documentation/devicetree/bindings/mfd/samsung,s2*.yaml
  F:    Documentation/devicetree/bindings/mfd/samsung,s5m*.yaml
  F:    Documentation/devicetree/bindings/regulator/samsung,s2m*.yaml
  F:    Documentation/devicetree/bindings/regulator/samsung,s5m*.yaml
@@@ -21117,7 -20788,6 +21131,7 @@@ Q:   https://patchwork.kernel.org/project
  B:    mailto:[email protected]
  P:    https://github.com/LinuxSecurityModule/kernel/blob/main/README.md
  T:    git https://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm.git
 +F:    include/linux/lsm/
  F:    include/linux/lsm_audit.h
  F:    include/linux/lsm_hook_defs.h
  F:    include/linux/lsm_hooks.h
@@@ -21264,7 -20934,6 +21278,7 @@@ M:   Jan Karcher <[email protected]
  R:    D. Wythe <[email protected]>
  R:    Tony Lu <[email protected]>
  R:    Wen Gu <[email protected]>
 +L:    [email protected]
  L:    [email protected]
  S:    Supported
  F:    net/smc/
@@@ -21281,7 -20950,7 +21295,7 @@@ SHARP RJ54N1CB0C SENSOR DRIVE
  M:    Jacopo Mondi <[email protected]>
  L:    [email protected]
  S:    Odd fixes
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/rj54n1cb0c.c
  F:    include/media/i2c/rj54n1cb0c.h
  
@@@ -21331,7 -21000,7 +21345,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Odd Fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/silabs,si470x.yaml
  F:    drivers/media/radio/si470x/radio-si470x-i2c.c
  
@@@ -21340,7 -21009,7 +21354,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/si470x/radio-si470x-common.c
  F:    drivers/media/radio/si470x/radio-si470x-usb.c
  F:    drivers/media/radio/si470x/radio-si470x.h
@@@ -21350,7 -21019,7 +21364,7 @@@ M:   Eduardo Valentin <[email protected]
  L:    [email protected]
  S:    Odd Fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/si4713/si4713.?
  
  SI4713 FM RADIO TRANSMITTER PLATFORM DRIVER
@@@ -21358,7 -21027,7 +21372,7 @@@ M:   Eduardo Valentin <[email protected]
  L:    [email protected]
  S:    Odd Fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/si4713/radio-platform-si4713.c
  
  SI4713 FM RADIO TRANSMITTER USB DRIVER
@@@ -21366,7 -21035,7 +21380,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/si4713/radio-usb-si4713.c
  
  SIANO DVB DRIVER
@@@ -21374,23 -21043,23 +21388,23 @@@ M:        Mauro Carvalho Chehab <mchehab@kerne
  L:    [email protected]
  S:    Odd fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/common/siano/
  F:    drivers/media/mmc/siano/
  F:    drivers/media/usb/siano/
  F:    drivers/media/usb/siano/
  
  SIEMENS IPC LED DRIVERS
 -M:    Gerd Haeussler <gerd.haeussler.ext@siemens.com>
 -M:    Xing Tong Wu <xingtong.wu@siemens.com>
 +M:    Bao Cheng Su <baocheng.su@siemens.com>
 +M:    Benedikt Niedermayr <benedikt.niedermayr@siemens.com>
  M:    Tobias Schaffner <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/leds/simple/
  
  SIEMENS IPC PLATFORM DRIVERS
 -M:    Gerd Haeussler <gerd.haeussler.ext@siemens.com>
 -M:    Xing Tong Wu <xingtong.wu@siemens.com>
 +M:    Bao Cheng Su <baocheng.su@siemens.com>
 +M:    Benedikt Niedermayr <benedikt.niedermayr@siemens.com>
  M:    Tobias Schaffner <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -21399,8 -21068,8 +21413,8 @@@ F:   include/linux/platform_data/x86/sima
  F:    include/linux/platform_data/x86/simatic-ipc.h
  
  SIEMENS IPC WATCHDOG DRIVERS
 -M:    Gerd Haeussler <gerd.haeussler.ext@siemens.com>
 -M:    Xing Tong Wu <xingtong.wu@siemens.com>
 +M:    Bao Cheng Su <baocheng.su@siemens.com>
 +M:    Benedikt Niedermayr <benedikt.niedermayr@siemens.com>
  M:    Tobias Schaffner <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -21708,11 -21377,11 +21722,11 @@@ F:        include/linux/property.
  
  SOFTWARE RAID (Multiple Disks) SUPPORT
  M:    Song Liu <[email protected]>
 -R:    Yu Kuai <[email protected]>
 +M:    Yu Kuai <[email protected]>
  L:    [email protected]
  S:    Supported
  Q:    https://patchwork.kernel.org/project/linux-raid/list/
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/song/md.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mdraid/linux.git
  F:    drivers/md/Kconfig
  F:    drivers/md/Makefile
  F:    drivers/md/md*
@@@ -21750,14 -21419,14 +21764,14 @@@ SONY IMX208 SENSOR DRIVE
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/imx208.c
  
  SONY IMX214 SENSOR DRIVER
  M:    Ricardo Ribalda <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/sony,imx214.yaml
  F:    drivers/media/i2c/imx214.c
  
@@@ -21765,7 -21434,7 +21779,7 @@@ SONY IMX219 SENSOR DRIVE
  M:    Dave Stevenson <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/imx219.yaml
  F:    drivers/media/i2c/imx219.c
  
@@@ -21773,7 -21442,7 +21787,7 @@@ SONY IMX258 SENSOR DRIVE
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/sony,imx258.yaml
  F:    drivers/media/i2c/imx258.c
  
@@@ -21781,7 -21450,7 +21795,7 @@@ SONY IMX274 SENSOR DRIVE
  M:    Leon Luo <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/sony,imx274.yaml
  F:    drivers/media/i2c/imx274.c
  
@@@ -21790,7 -21459,7 +21804,7 @@@ M:   Kieran Bingham <kieran.bingham@ideas
  M:    Umang Jain <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/sony,imx283.yaml
  F:    drivers/media/i2c/imx283.c
  
@@@ -21798,7 -21467,7 +21812,7 @@@ SONY IMX290 SENSOR DRIVE
  M:    Manivannan Sadhasivam <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/sony,imx290.yaml
  F:    drivers/media/i2c/imx290.c
  
@@@ -21807,7 -21476,7 +21821,7 @@@ M:   Laurent Pinchart <laurent.pinchart@i
  M:    Manivannan Sadhasivam <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/sony,imx296.yaml
  F:    drivers/media/i2c/imx296.c
  
@@@ -21815,20 -21484,20 +21829,20 @@@ SONY IMX319 SENSOR DRIVE
  M:    Bingbu Cao <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/imx319.c
  
  SONY IMX334 SENSOR DRIVER
  L:    [email protected]
  S:    Orphan
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/sony,imx334.yaml
  F:    drivers/media/i2c/imx334.c
  
  SONY IMX335 SENSOR DRIVER
  L:    [email protected]
  S:    Orphan
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/sony,imx335.yaml
  F:    drivers/media/i2c/imx335.c
  
@@@ -21836,13 -21505,13 +21850,13 @@@ SONY IMX355 SENSOR DRIVE
  M:    Tianshu Qiu <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/imx355.c
  
  SONY IMX412 SENSOR DRIVER
  L:    [email protected]
  S:    Orphan
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/sony,imx412.yaml
  F:    drivers/media/i2c/imx412.c
  
@@@ -21850,7 -21519,7 +21864,7 @@@ SONY IMX415 SENSOR DRIVE
  M:    Michael Riesch <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/sony,imx415.yaml
  F:    drivers/media/i2c/imx415.c
  
@@@ -21963,15 -21632,6 +21977,15 @@@ S: Supporte
  W:    https://github.com/thesofproject/linux/
  F:    sound/soc/sof/
  
 +SOUND - GENERIC SOUND CARD (Simple-Audio-Card, Audio-Graph-Card)
 +M:    Kuninori Morimoto <[email protected]>
 +S:    Supported
 +L:    [email protected]
 +F:    sound/soc/generic/
 +F:    include/sound/simple_card*
 +F:    Documentation/devicetree/bindings/sound/simple-card.yaml
 +F:    Documentation/devicetree/bindings/sound/audio-graph*.yaml
 +
  SOUNDWIRE SUBSYSTEM
  M:    Vinod Koul <[email protected]>
  M:    Bard Liao <[email protected]>
@@@ -22139,7 -21799,7 +22153,7 @@@ M:   Benjamin Mugnier <benjamin.mugnier@f
  M:    Sylvain Petinot <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/st,st-mipid02.yaml
  F:    drivers/media/i2c/st-mipid02.c
  
@@@ -22175,7 -21835,7 +22189,7 @@@ M:   Benjamin Mugnier <benjamin.mugnier@f
  M:    Sylvain Petinot <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/st,st-vgxy61.yaml
  F:    Documentation/userspace-api/media/drivers/vgxy61.rst
  F:    drivers/media/i2c/vgxy61.c
  S:    Maintained
  F:    drivers/staging/media/atomisp/
  
 -STAGING - FIELDBUS SUBSYSTEM
 -M:    Sven Van Asbroeck <[email protected]>
 -S:    Maintained
 -F:    drivers/staging/fieldbus/*
 -F:    drivers/staging/fieldbus/Documentation/
 -
 -STAGING - HMS ANYBUS-S BUS
 -M:    Sven Van Asbroeck <[email protected]>
 -S:    Maintained
 -F:    drivers/staging/fieldbus/anybuss/
 -
  STAGING - INDUSTRIAL IO
  M:    Jonathan Cameron <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/staging/nvec/
  
 -STAGING - OLPC SECONDARY DISPLAY CONTROLLER (DCON)
 -M:    Jens Frederich <[email protected]>
 -M:    Jon Nettleton <[email protected]>
 -S:    Maintained
 -W:    http://wiki.laptop.org/go/DCON
 -F:    drivers/staging/olpc_dcon/
 -
 -STAGING - REALTEK RTL8712U DRIVERS
 -M:    Florian Schilhabel <[email protected]>.
 -S:    Odd Fixes
 -F:    drivers/staging/rtl8712/
 -
  STAGING - SEPS525 LCD CONTROLLER DRIVERS
  M:    Michael Hennerich <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/staging/sm750fb/
  
 -STAGING - VIA VT665X DRIVERS
 -M:    Philipp Hortmann <[email protected]>
 -S:    Odd Fixes
 -F:    drivers/staging/vt665?/
 -
  STAGING SUBSYSTEM
  M:    Greg Kroah-Hartman <[email protected]>
  L:    [email protected]
@@@ -22437,7 -22125,7 +22451,7 @@@ STK1160 USB VIDEO CAPTURE DRIVE
  M:    Ezequiel Garcia <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/stk1160/
  
  STM32 AUDIO (ASoC) DRIVERS
@@@ -22467,12 -22155,6 +22481,12 @@@ F: drivers/*/stm32-*timer
  F:    drivers/pwm/pwm-stm32*
  F:    include/linux/*/stm32-*tim*
  
 +STM32MP25 USB3/PCIE COMBOPHY DRIVER
 +M:    Christian Bruel <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/phy/st,stm32mp25-combophy.yaml
 +F:    drivers/phy/st/phy-stm32-combophy.c
 +
  STMMAC ETHERNET DRIVER
  M:    Alexandre Torgue <[email protected]>
  M:    Jose Abreu <[email protected]>
@@@ -22503,6 -22185,12 +22517,6 @@@ S:  Maintaine
  F:    Documentation/devicetree/bindings/input/allwinner,sun4i-a10-lradc-keys.yaml
  F:    drivers/input/keyboard/sun4i-lradc-keys.c
  
 -SUNDANCE NETWORK DRIVER
 -M:    Denis Kirjanov <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    drivers/net/ethernet/dlink/sundance.c
 -
  SUNPLUS ETHERNET DRIVER
  M:    Wells Lu <[email protected]>
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
  Q:    http://patchwork.linuxtv.org/project/linux-media/list/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/tuners/tda18250*
  
  TDA18271 MEDIA DRIVER
@@@ -22920,7 -22608,7 +22934,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/tda9840*
  
  TEA5761 TUNER DRIVER
@@@ -22928,7 -22616,7 +22942,7 @@@ M:   Mauro Carvalho Chehab <mchehab@kerne
  L:    [email protected]
  S:    Odd fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/tuners/tea5761.*
  
  TEA5767 TUNER DRIVER
@@@ -22936,7 -22624,7 +22950,7 @@@ M:   Mauro Carvalho Chehab <mchehab@kerne
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/tuners/tea5767.*
  
  TEA6415C MEDIA DRIVER
@@@ -22944,7 -22632,7 +22958,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/tea6415c*
  
  TEA6420 MEDIA DRIVER
@@@ -22952,7 -22640,7 +22966,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/i2c/tea6420*
  
  TEAM DRIVER
@@@ -23188,12 -22876,6 +23202,12 @@@ F: include/linux/dma/k3-udma-glue.
  F:    include/linux/dma/ti-cppi5.h
  X:    drivers/dma/ti/cppi41.c
  
 +TEXAS INSTRUMENTS TPS25990 HARDWARE MONITOR DRIVER
 +M:    Jerome Brunet <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/hwmon/pmbus/ti,tps25990.yaml
 +
  TEXAS INSTRUMENTS TPS23861 PoE PSE DRIVER
  M:    Robert Marko <[email protected]>
  M:    Luka Perkov <[email protected]>
@@@ -23246,7 -22928,7 +23260,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/radio/radio-raremono.c
  
  THERMAL
@@@ -23322,7 -23004,7 +23336,7 @@@ M:   Laurent Pinchart <laurent.pinchart@i
  M:    Paul Elder <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/i2c/thine,thp7312.yaml
  F:    Documentation/userspace-api/media/drivers/thp7312.rst
  F:    drivers/media/i2c/thp7312.c
@@@ -23501,7 -23183,7 +23515,7 @@@ F:   Documentation/devicetree/bindings/ne
  F:    drivers/net/ethernet/ti/icssg/*
  
  TI J721E CSI2RX DRIVER
 -M:    Jai Luthra <j[email protected]>
 +M:    Jai Luthra <j[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/media/ti,j721e-csi2rx-shim.yaml
@@@ -23879,9 -23561,10 +23893,9 @@@ F:  drivers/net/tun.
  
  TURBOCHANNEL SUBSYSTEM
  M:    "Maciej W. Rozycki" <[email protected]>
 -M:    Ralf Baechle <[email protected]>
  L:    [email protected]
  S:    Maintained
 -Q:    http://patchwork.linux-mips.org/project/linux-mips/list/
 +Q:    https://patchwork.kernel.org/project/linux-mips/list/
  F:    drivers/tc/
  F:    include/linux/tc.h
  
@@@ -23908,7 -23591,7 +23922,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Odd Fixes
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/pci/tw68/
  
  TW686X VIDEO4LINUX DRIVER
@@@ -23916,7 -23599,7 +23930,7 @@@ M:   Ezequiel Garcia <ezequiel@vanguardia
  L:    [email protected]
  S:    Maintained
  W:    http://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/pci/tw686x/
  
  U-BOOT ENVIRONMENT VARIABLES
@@@ -24018,7 -23701,6 +24032,7 @@@ UNICODE SUBSYSTE
  M:    Gabriel Krisman Bertazi <[email protected]>
  L:    [email protected]
  S:    Supported
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/krisman/unicode.git
  F:    fs/unicode/
  
  UNIFDEF
@@@ -24062,9 -23744,7 +24076,9 @@@ F:   drivers/ufs/host/*dwc
  
  UNIVERSAL FLASH STORAGE HOST CONTROLLER DRIVER EXYNOS HOOKS
  M:    Alim Akhtar <[email protected]>
 +R:    Peter Griffin <[email protected]>
  L:    [email protected]
 +L:    [email protected]
  S:    Maintained
  F:    drivers/ufs/host/ufs-exynos*
  
  S:    Orphan
  F:    drivers/usb/typec/tcpm/
  
 +USB TYPEC TUSB1046 MUX DRIVER
 +M:    Romain Gantois <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/usb/ti,tusb1046.yaml
 +F:    drivers/usb/typec/mux/tusb1046.c
 +
  USB UHCI DRIVER
  M:    Alan Stern <[email protected]>
  L:    [email protected]
@@@ -24406,11 -24079,10 +24420,11 @@@ F:        drivers/usb/host/uhci
  
  USB VIDEO CLASS
  M:    Laurent Pinchart <[email protected]>
 +M:    Hans de Goede <[email protected]>
  L:    [email protected]
  S:    Maintained
  W:    http://www.ideasonboard.org/uvc/
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/usb/uvc/
  F:    include/uapi/linux/uvcvideo.h
  
@@@ -24462,7 -24134,6 +24476,7 @@@ F:   lib/iov_iter.
  
  USERSPACE DMA BUFFER DRIVER
  M:    Gerd Hoffmann <[email protected]>
 +M:    Vivek Kasireddy <[email protected]>
  L:    [email protected]
  S:    Maintained
  T:    git https://gitlab.freedesktop.org/drm/misc/kernel.git
@@@ -24517,7 -24188,7 +24531,7 @@@ V4L2 ASYNC AND FWNODE FRAMEWORK
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/v4l2-core/v4l2-async.c
  F:    drivers/media/v4l2-core/v4l2-fwnode.c
  F:    include/media/v4l2-async.h
@@@ -24683,7 -24354,7 +24697,7 @@@ M:   Hans Verkuil <hverkuil-cisco@xs4all.
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/test-drivers/vicodec/*
  
  VIDEO I2C POLLING DRIVER
@@@ -24711,7 -24382,7 +24725,7 @@@ M:   Daniel W. S. Almeida <dwlsalmeida@gm
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/test-drivers/vidtv/*
  
  VIMC VIRTUAL MEDIA CONTROLLER DRIVER
@@@ -24720,7 -24391,7 +24734,7 @@@ R:   Kieran Bingham <kieran.bingham@ideas
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/test-drivers/vimc/*
  
  VIRT LIB
@@@ -24951,18 -24622,6 +24965,18 @@@ S: Maintaine
  F:    drivers/input/serio/userio.c
  F:    include/uapi/linux/userio.h
  
 +VISHAY VEML3235 AMBIENT LIGHT SENSOR DRIVER
 +M:    Javier Carrasco <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/iio/light/vishay,veml6030.yaml
 +F:    drivers/iio/light/veml3235.c
 +
 +VISHAY VEML6030 AMBIENT LIGHT SENSOR DRIVER
 +M:    Javier Carrasco <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/iio/light/vishay,veml6030.yaml
 +F:    drivers/iio/light/veml6030.c
 +
  VISHAY VEML6075 UVA AND UVB LIGHT SENSOR DRIVER
  M:    Javier Carrasco <[email protected]>
  S:    Maintained
@@@ -24980,7 -24639,7 +24994,7 @@@ M:   Hans Verkuil <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/test-drivers/vivid/*
  
  VM SOCKETS (AF_VSOCK)
@@@ -25534,7 -25193,7 +25548,7 @@@ M:   Mauro Carvalho Chehab <mchehab@kerne
  L:    [email protected]
  S:    Maintained
  W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    drivers/media/tuners/xc2028.*
  
  XDP (eXpress Data Path)
@@@ -25758,7 -25417,7 +25772,7 @@@ XILINX VIDEO IP CORE
  M:    Laurent Pinchart <[email protected]>
  L:    [email protected]
  S:    Supported
 -T:    git git://linuxtv.org/media_tree.git
 +T:    git git://linuxtv.org/media.git
  F:    Documentation/devicetree/bindings/media/xilinx/
  F:    drivers/media/platform/xilinx/
  F:    include/uapi/linux/xilinx-v4l2-controls.h
diff --combined Makefile
index 8129de0b214f5b73a3b1cca0798041d74270836b,f7f43c8997ae1f41018cee5529becc2e6a57405b..e34a97473fb6d7ffbf37c439f31c8753b91dc257
+++ b/Makefile
@@@ -2,7 -2,7 +2,7 @@@
  VERSION = 6
  PATCHLEVEL = 12
  SUBLEVEL = 0
 -EXTRAVERSION = -rc6
 +EXTRAVERSION =
  NAME = Baby Opossum Posse
  
  # *DOCUMENTATION*
@@@ -40,7 -40,7 +40,7 @@@ __all
  
  this-makefile := $(lastword $(MAKEFILE_LIST))
  abs_srctree := $(realpath $(dir $(this-makefile)))
- abs_objtree := $(CURDIR)
+ abs_output := $(CURDIR)
  
  ifneq ($(sub_make_done),1)
  
@@@ -134,6 -134,10 +134,10 @@@ ifeq ("$(origin M)", "command line"
    KBUILD_EXTMOD := $(M)
  endif
  
+ ifeq ("$(origin MO)", "command line")
+   KBUILD_EXTMOD_OUTPUT := $(MO)
+ endif
  $(if $(word 2, $(KBUILD_EXTMOD)), \
        $(error building multiple external modules is not supported))
  
@@@ -176,18 -180,41 +180,41 @@@ export KBUILD_EXTRA_WAR
  # The O= assignment takes precedence over the KBUILD_OUTPUT environment
  # variable.
  
- # Do we want to change the working directory?
  ifeq ("$(origin O)", "command line")
    KBUILD_OUTPUT := $(O)
  endif
  
- ifneq ($(KBUILD_OUTPUT),)
+ ifdef KBUILD_EXTMOD
+     ifdef KBUILD_OUTPUT
+         objtree := $(realpath $(KBUILD_OUTPUT))
+         $(if $(objtree),,$(error specified kernel directory "$(KBUILD_OUTPUT)" does not exist))
+     else
+         objtree := $(abs_srctree)
+     endif
+     # If Make is invoked from the kernel directory (either kernel
+     # source directory or kernel build directory), external modules
+     # are built in $(KBUILD_EXTMOD) for backward compatibility,
+     # otherwise, built in the current directory.
+     output := $(or $(KBUILD_EXTMOD_OUTPUT),$(if $(filter $(CURDIR),$(objtree) $(abs_srctree)),$(KBUILD_EXTMOD)))
+     # KBUILD_EXTMOD might be a relative path. Remember its absolute path before
+     # Make changes the working directory.
+     srcroot := $(realpath $(KBUILD_EXTMOD))
+     $(if $(srcroot),,$(error specified external module directory "$(KBUILD_EXTMOD)" does not exist))
+ else
+     objtree := .
+     output := $(KBUILD_OUTPUT)
+ endif
+ export objtree srcroot
+ # Do we want to change the working directory?
+ ifneq ($(output),)
  # $(realpath ...) gets empty if the path does not exist. Run 'mkdir -p' first.
- $(shell mkdir -p "$(KBUILD_OUTPUT)")
+ $(shell mkdir -p "$(output)")
  # $(realpath ...) resolves symlinks
- abs_objtree := $(realpath $(KBUILD_OUTPUT))
- $(if $(abs_objtree),,$(error failed to create output directory "$(KBUILD_OUTPUT)"))
- endif # ifneq ($(KBUILD_OUTPUT),)
+ abs_output := $(realpath $(output))
+ $(if $(abs_output),,$(error failed to create output directory "$(output)"))
+ endif
  
  ifneq ($(words $(subst :, ,$(abs_srctree))), 1)
  $(error source directory cannot contain spaces or colons)
@@@ -197,7 -224,7 +224,7 @@@ export sub_make_done := 
  
  endif # sub_make_done
  
- ifeq ($(abs_objtree),$(CURDIR))
+ ifeq ($(abs_output),$(CURDIR))
  # Suppress "Entering directory ..." if we are at the final work directory.
  no-print-directory := --no-print-directory
  else
@@@ -221,43 -248,41 +248,41 @@@ $(filter-out $(this-makefile), $(MAKECM
  
  # Invoke a second make in the output directory, passing relevant variables
  __sub-make:
-       $(Q)$(MAKE) $(no-print-directory) -C $(abs_objtree) \
+       $(Q)$(MAKE) $(no-print-directory) -C $(abs_output) \
        -f $(abs_srctree)/Makefile $(MAKECMDGOALS)
  
  else # need-sub-make
  
  # We process the rest of the Makefile if this is the final invocation of make
  
- ifeq ($(abs_srctree),$(abs_objtree))
-         # building in the source tree
-         srctree := .
-       building_out_of_srctree :=
- else
-         ifeq ($(abs_srctree)/,$(dir $(abs_objtree)))
-                 # building in a subdirectory of the source tree
-                 srctree := ..
-         else
-                 srctree := $(abs_srctree)
-         endif
-       building_out_of_srctree := 1
+ ifndef KBUILD_EXTMOD
+ srcroot := $(abs_srctree)
  endif
  
- ifneq ($(KBUILD_ABS_SRCTREE),)
- srctree := $(abs_srctree)
+ ifeq ($(srcroot),$(CURDIR))
+ building_out_of_srctree :=
+ else
+ export building_out_of_srctree := 1
  endif
  
- objtree               := .
+ ifdef KBUILD_ABS_SRCTREE
+     # Do nothing. Use the absolute path.
+ else ifeq ($(srcroot),$(CURDIR))
+     # Building in the source.
+     srcroot := .
+ else ifeq ($(srcroot)/,$(dir $(CURDIR)))
+     # Building in a subdirectory of the source.
+     srcroot := ..
+ endif
  
- VPATH         :=
+ export srctree := $(if $(KBUILD_EXTMOD),$(abs_srctree),$(srcroot))
  
- ifeq ($(KBUILD_EXTMOD),)
  ifdef building_out_of_srctree
- VPATH         := $(srctree)
- endif
+ export VPATH := $(srcroot)
+ else
+ VPATH :=
  endif
  
- export building_out_of_srctree srctree objtree VPATH
  # To make sure we do not include .config for any of the *config targets
  # catch them early, and hand them over to scripts/kconfig/Makefile
  # It is allowed to specify more targets when calling make, including
@@@ -276,7 -301,7 +301,7 @@@ no-dot-config-targets := $(clean-target
                         outputmakefile rustavailable rustfmt rustfmtcheck
  no-sync-config-targets := $(no-dot-config-targets) %install modules_sign kernelrelease \
                          image_name
- single-targets := %.a %.i %.ko %.lds %.ll %.lst %.mod %.o %.rsi %.s %.symtypes %/
+ single-targets := %.a %.i %.ko %.lds %.ll %.lst %.mod %.o %.rsi %.s %/
  
  config-build  :=
  mixed-build   :=
@@@ -354,7 -379,7 +379,7 @@@ else # !mixed-buil
  include $(srctree)/scripts/Kbuild.include
  
  # Read KERNELRELEASE from include/config/kernel.release (if it exists)
- KERNELRELEASE = $(call read-file, include/config/kernel.release)
+ KERNELRELEASE = $(call read-file, $(objtree)/include/config/kernel.release)
  KERNELVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION)
  export VERSION PATCHLEVEL SUBLEVEL KERNELRELEASE KERNELVERSION
  
@@@ -446,23 -471,18 +471,23 @@@ KBUILD_USERLDFLAGS := $(USERLDFLAGS
  export rust_common_flags := --edition=2021 \
                            -Zbinary_dep_depinfo=y \
                            -Astable_features \
 -                          -Dunsafe_op_in_unsafe_fn \
                            -Dnon_ascii_idents \
 +                          -Dunsafe_op_in_unsafe_fn \
 +                          -Wmissing_docs \
                            -Wrust_2018_idioms \
                            -Wunreachable_pub \
 -                          -Wmissing_docs \
 -                          -Wrustdoc::missing_crate_level_docs \
                            -Wclippy::all \
 +                          -Wclippy::ignored_unit_patterns \
                            -Wclippy::mut_mut \
                            -Wclippy::needless_bitwise_bool \
                            -Wclippy::needless_continue \
 +                          -Aclippy::needless_lifetimes \
                            -Wclippy::no_mangle_with_rust_abi \
 -                          -Wclippy::dbg_macro
 +                          -Wclippy::undocumented_unsafe_blocks \
 +                          -Wclippy::unnecessary_safety_comment \
 +                          -Wclippy::unnecessary_safety_doc \
 +                          -Wrustdoc::missing_crate_level_docs \
 +                          -Wrustdoc::unescaped_backticks
  
  KBUILD_HOSTCFLAGS   := $(KBUILD_USERHOSTCFLAGS) $(HOST_LFS_CFLAGS) \
                       $(HOSTCFLAGS) -I $(srctree)/scripts/include
@@@ -513,7 -533,7 +538,7 @@@ KGZIP              = gzi
  KBZIP2                = bzip2
  KLZOP         = lzop
  LZMA          = lzma
- LZ4           = lz4c
+ LZ4           = lz4
  XZ            = xz
  ZSTD          = zstd
  
@@@ -543,7 -563,7 +568,7 @@@ USERINCLUDE    := 
  LINUXINCLUDE    := \
                -I$(srctree)/arch/$(SRCARCH)/include \
                -I$(objtree)/arch/$(SRCARCH)/include/generated \
-               $(if $(building_out_of_srctree),-I$(srctree)/include) \
+               -I$(srctree)/include \
                -I$(objtree)/include \
                $(USERINCLUDE)
  
@@@ -587,9 -607,6 +612,9 @@@ endi
  # Allows the usage of unstable features in stable compilers.
  export RUSTC_BOOTSTRAP := 1
  
 +# Allows finding `.clippy.toml` in out-of-srctree builds.
 +export CLIPPY_CONF_DIR := $(srctree)
 +
  export ARCH SRCARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE LD CC HOSTPKG_CONFIG
  export RUSTC RUSTDOC RUSTFMT RUSTC_OR_CLIPPY_QUIET RUSTC_OR_CLIPPY BINDGEN
  export HOSTRUSTC KBUILD_HOSTRUSTFLAGS
@@@ -629,13 -646,25 +654,25 @@@ ifdef building_out_of_srctre
  # At the same time when output Makefile generated, generate .gitignore to
  # ignore whole output directory
  
+ ifdef KBUILD_EXTMOD
+ print_env_for_makefile = \
+       echo "export KBUILD_OUTPUT = $(objtree)"; \
+       echo "export KBUILD_EXTMOD = $(realpath $(srcroot))" ; \
+       echo "export KBUILD_EXTMOD_OUTPUT = $(CURDIR)"
+ else
+ print_env_for_makefile = \
+       echo "export KBUILD_OUTPUT = $(CURDIR)"
+ endif
  quiet_cmd_makefile = GEN     Makefile
        cmd_makefile = { \
-       echo "\# Automatically generated by $(srctree)/Makefile: don't edit"; \
-       echo "include $(srctree)/Makefile"; \
+       echo "\# Automatically generated by $(abs_srctree)/Makefile: don't edit"; \
+       $(print_env_for_makefile); \
+       echo "include $(abs_srctree)/Makefile"; \
        } > Makefile
  
  outputmakefile:
+ ifeq ($(KBUILD_EXTMOD),)
        @if [ -f $(srctree)/.config -o \
                 -d $(srctree)/include/config -o \
                 -d $(srctree)/arch/$(SRCARCH)/include/generated ]; then \
                echo >&2 "***"; \
                false; \
        fi
-       $(Q)ln -fsn $(srctree) source
+ else
+       @if [ -f $(srcroot)/modules.order ]; then \
+               echo >&2 "***"; \
+               echo >&2 "*** The external module source tree is not clean."; \
+               echo >&2 "*** Please run 'make -C $(abs_srctree) M=$(realpath $(srcroot)) clean'"; \
+               echo >&2 "***"; \
+               false; \
+       fi
+ endif
+       $(Q)ln -fsn $(srcroot) source
        $(call cmd,makefile)
        $(Q)test -e .gitignore || \
        { echo "# this is build directory, ignore it"; echo "*"; } > .gitignore
@@@ -717,7 -755,7 +763,7 @@@ endi
  # in addition to whatever we do anyway.
  # Just "make" or "make all" shall build modules as well
  
- ifneq ($(filter all modules nsdeps %compile_commands.json clang-%,$(MAKECMDGOALS)),)
+ ifneq ($(filter all modules nsdeps compile_commands.json clang-%,$(MAKECMDGOALS)),)
    KBUILD_MODULES := 1
  endif
  
@@@ -728,7 -766,7 +774,7 @@@ endi
  export KBUILD_MODULES KBUILD_BUILTIN
  
  ifdef need-config
- include include/config/auto.conf
+ include $(objtree)/include/config/auto.conf
  endif
  
  ifeq ($(KBUILD_EXTMOD),)
@@@ -789,17 -827,22 +835,22 @@@ $(KCONFIG_CONFIG)
  else # !may-sync-config
  # External modules and some install targets need include/generated/autoconf.h
  # and include/config/auto.conf but do not care if they are up-to-date.
- # Use auto.conf to trigger the test
- PHONY += include/config/auto.conf
- include/config/auto.conf:
-       @test -e include/generated/autoconf.h -a -e $@ || (             \
-       echo >&2;                                                       \
-       echo >&2 "  ERROR: Kernel configuration is invalid.";           \
-       echo >&2 "         include/generated/autoconf.h or $@ are missing.";\
-       echo >&2 "         Run 'make oldconfig && make prepare' on kernel src to fix it.";      \
-       echo >&2 ;                                                      \
-       /bin/false)
+ # Use auto.conf to show the error message
+ checked-configs := $(addprefix $(objtree)/, include/generated/autoconf.h include/generated/rustc_cfg include/config/auto.conf)
+ missing-configs := $(filter-out $(wildcard $(checked-configs)), $(checked-configs))
+ ifdef missing-configs
+ PHONY += $(objtree)/include/config/auto.conf
+ $(objtree)/include/config/auto.conf:
+       @echo   >&2 '***'
+       @echo   >&2 '***  ERROR: Kernel configuration is invalid. The following files are missing:'
+       @printf >&2 '***    - %s\n' $(missing-configs)
+       @echo   >&2 '***  Run "make oldconfig && make prepare" on kernel source to fix it.'
+       @echo   >&2 '***'
+       @/bin/false
+ endif
  
  endif # may-sync-config
  endif # need-config
@@@ -1013,8 -1056,10 +1064,10 @@@ ifdef CONFIG_CC_IS_GC
  KBUILD_CFLAGS   += -fconserve-stack
  endif
  
- # change __FILE__ to the relative path from the srctree
- KBUILD_CPPFLAGS += $(call cc-option,-fmacro-prefix-map=$(srctree)/=)
+ # change __FILE__ to the relative path to the source directory
+ ifdef building_out_of_srctree
+ KBUILD_CPPFLAGS += $(call cc-option,-fmacro-prefix-map=$(srcroot)/=)
+ endif
  
  # include additional Makefiles when needed
  include-y                     := scripts/Makefile.extrawarn
@@@ -1026,6 -1071,8 +1079,8 @@@ include-$(CONFIG_KMSAN)         += scripts/Mak
  include-$(CONFIG_UBSAN)               += scripts/Makefile.ubsan
  include-$(CONFIG_KCOV)                += scripts/Makefile.kcov
  include-$(CONFIG_RANDSTRUCT)  += scripts/Makefile.randstruct
+ include-$(CONFIG_AUTOFDO_CLANG)       += scripts/Makefile.autofdo
+ include-$(CONFIG_PROPELLER_CLANG)     += scripts/Makefile.propeller
  include-$(CONFIG_GCC_PLUGINS) += scripts/Makefile.gcc-plugins
  
  include $(addprefix $(srctree)/, $(include-y))
@@@ -1106,10 -1153,6 +1161,6 @@@ export MODLI
  
  PHONY += prepare0
  
- export extmod_prefix = $(if $(KBUILD_EXTMOD),$(KBUILD_EXTMOD)/)
- export MODORDER := $(extmod_prefix)modules.order
- export MODULES_NSDEPS := $(extmod_prefix)modules.nsdeps
  ifeq ($(KBUILD_EXTMOD),)
  
  build-dir     := .
@@@ -1204,7 -1247,8 +1255,8 @@@ PHONY += prepare archprepar
  
  archprepare: outputmakefile archheaders archscripts scripts include/config/kernel.release \
        asm-generic $(version_h) include/generated/utsrelease.h \
-       include/generated/compile.h include/generated/autoconf.h remove-stale-files
+       include/generated/compile.h include/generated/autoconf.h \
+       include/generated/rustc_cfg remove-stale-files
  
  prepare0: archprepare
        $(Q)$(MAKE) $(build)=scripts/mod
@@@ -1435,6 -1479,10 +1487,10 @@@ ifdef CONFIG_OF_EARLY_FLATTRE
  all: dtbs
  endif
  
+ ifdef CONFIG_GENERIC_BUILTIN_DTB
+ vmlinux: dtbs
+ endif
  endif
  
  PHONY += scripts_dtc
@@@ -1502,7 -1550,8 +1558,8 @@@ CLEAN_FILES += vmlinux.symvers modules-
               modules.builtin modules.builtin.modinfo modules.nsdeps \
               modules.builtin.ranges vmlinux.o.map \
               compile_commands.json rust/test \
-              rust-project.json .vmlinux.objs .vmlinux.export.c
+              rust-project.json .vmlinux.objs .vmlinux.export.c \
+                .builtin-dtbs-list .builtin-dtb.S
  
  # Directories & files removed with 'make mrproper'
  MRPROPER_FILES += include/config include/generated          \
@@@ -1610,6 -1659,7 +1667,6 @@@ help
        @echo  '                    with a stack size larger than MINSTACKSIZE (default: 100)'
        @echo  '  versioncheck    - Sanity check on version.h usage'
        @echo  '  includecheck    - Check for duplicate included header files'
 -      @echo  '  export_report   - List the usages of all exported symbols'
        @echo  '  headerdep       - Detect inclusion cycles in headers'
        @echo  '  coccicheck      - Check with Coccinelle'
        @echo  '  clang-analyzer  - Check with clang static analyzer'
@@@ -1750,18 -1800,9 +1807,9 @@@ rusttest: prepar
  # Formatting targets
  PHONY += rustfmt rustfmtcheck
  
- # We skip `rust/alloc` since we want to minimize the diff w.r.t. upstream.
- #
- # We match using absolute paths since `find` does not resolve them
- # when matching, which is a problem when e.g. `srctree` is `..`.
- # We `grep` afterwards in order to remove the directory entry itself.
  rustfmt:
-       $(Q)find $(abs_srctree) -type f -name '*.rs' \
-               -o -path $(abs_srctree)/rust/alloc -prune \
-               -o -path $(abs_objtree)/rust/test -prune \
-               | grep -Fv $(abs_srctree)/rust/alloc \
-               | grep -Fv $(abs_objtree)/rust/test \
-               | grep -Fv generated \
+       $(Q)find $(srctree) $(RCS_FIND_IGNORE) \
+               -type f -a -name '*.rs' -a ! -name '*generated*' -print \
                | xargs $(RUSTFMT) $(rustfmt_flags)
  
  rustfmtcheck: rustfmt_flags = --check
@@@ -1800,14 -1841,10 +1848,10 @@@ filechk_kernel.release = echo $(KERNELR
  KBUILD_BUILTIN :=
  KBUILD_MODULES := 1
  
- build-dir := $(KBUILD_EXTMOD)
+ build-dir := .
  
- compile_commands.json: $(extmod_prefix)compile_commands.json
- PHONY += compile_commands.json
- clean-dirs := $(KBUILD_EXTMOD)
- clean: private rm-files := $(KBUILD_EXTMOD)/Module.symvers $(KBUILD_EXTMOD)/modules.nsdeps \
-       $(KBUILD_EXTMOD)/compile_commands.json
+ clean-dirs := .
+ clean: private rm-files := Module.symvers modules.nsdeps compile_commands.json
  
  PHONY += prepare
  # now expand this into a simple variable to reduce the cost of shell evaluations
@@@ -1866,7 -1903,7 +1910,7 @@@ endi
  
  ifdef CONFIG_MODULES
  
$(MODORDER): $(build-dir)
modules.order: $(build-dir)
        @:
  
  # KBUILD_MODPOST_NOFINAL can be set to skip the final link of modules.
@@@ -1877,7 -1914,7 +1921,7 @@@ ifneq ($(KBUILD_MODPOST_NOFINAL),1
  endif
  
  PHONY += modules_check
- modules_check: $(MODORDER)
+ modules_check: modules.order
        $(Q)$(CONFIG_SHELL) $(srctree)/scripts/modules-check.sh $<
  
  else # CONFIG_MODULES
@@@ -1918,15 -1955,15 +1962,15 @@@ $(single-ko): single_module
  $(single-no-ko): $(build-dir)
        @:
  
- # Remove MODORDER when done because it is not the real one.
+ # Remove modules.order when done because it is not the real one.
  PHONY += single_modules
  single_modules: $(single-no-ko) modules_prepare
-       $(Q){ $(foreach m, $(single-ko), echo $(extmod_prefix)$(m:%.ko=%.o);) } > $(MODORDER)
+       $(Q){ $(foreach m, $(single-ko), echo $(m:%.ko=%.o);) } > modules.order
        $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
  ifneq ($(KBUILD_MODPOST_NOFINAL),1)
        $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modfinal
  endif
-       $(Q)rm -f $(MODORDER)
+       $(Q)rm -f modules.order
  
  single-goals := $(addprefix $(build-dir)/, $(single-no-ko))
  
@@@ -1934,6 -1971,8 +1978,8 @@@ KBUILD_MODULES := 
  
  endif
  
+ prepare: outputmakefile
  # Preset locale variables to speed up the build process. Limit locale
  # tweaks to this spot to avoid wrong language settings when running
  # make menuconfig etc.
@@@ -1949,7 -1988,7 +1995,7 @@@ $(clean-dirs)
  
  clean: $(clean-dirs)
        $(call cmd,rmfiles)
-       @find $(or $(KBUILD_EXTMOD), .) $(RCS_FIND_IGNORE) \
+       @find . $(RCS_FIND_IGNORE) \
                \( -name '*.[aios]' -o -name '*.rsi' -o -name '*.ko' -o -name '.*.cmd' \
                -o -name '*.ko.*' \
                -o -name '*.dtb' -o -name '*.dtbo' \
@@@ -1982,7 -2021,12 +2028,12 @@@ tags TAGS cscope gtags: FORC
  PHONY += rust-analyzer
  rust-analyzer:
        +$(Q)$(CONFIG_SHELL) $(srctree)/scripts/rust_is_available.sh
+ ifdef KBUILD_EXTMOD
+ # FIXME: external modules must not descend into a sub-directory of the kernel
+       $(Q)$(MAKE) $(build)=$(objtree)/rust src=$(srctree)/rust $@
+ else
        $(Q)$(MAKE) $(build)=rust $@
+ endif
  
  # Script to generate missing namespace dependencies
  # ---------------------------------------------------------------------------
@@@ -1998,12 -2042,12 +2049,12 @@@ nsdeps: module
  quiet_cmd_gen_compile_commands = GEN     $@
        cmd_gen_compile_commands = $(PYTHON3) $< -a $(AR) -o $@ $(filter-out $<, $(real-prereqs))
  
$(extmod_prefix)compile_commands.json: $(srctree)/scripts/clang-tools/gen_compile_commands.py \
+ compile_commands.json: $(srctree)/scripts/clang-tools/gen_compile_commands.py \
        $(if $(KBUILD_EXTMOD),, vmlinux.a $(KBUILD_VMLINUX_LIBS)) \
-       $(if $(CONFIG_MODULES), $(MODORDER)) FORCE
+       $(if $(CONFIG_MODULES), modules.order) FORCE
        $(call if_changed,gen_compile_commands)
  
- targets += $(extmod_prefix)compile_commands.json
+ targets += compile_commands.json
  
  PHONY += clang-tidy clang-analyzer
  
@@@ -2011,7 -2055,7 +2062,7 @@@ ifdef CONFIG_CC_IS_CLAN
  quiet_cmd_clang_tools = CHECK   $<
        cmd_clang_tools = $(PYTHON3) $(srctree)/scripts/clang-tools/run-clang-tools.py $@ $<
  
- clang-tidy clang-analyzer: $(extmod_prefix)compile_commands.json
+ clang-tidy clang-analyzer: compile_commands.json
        $(call cmd,clang_tools)
  else
  clang-tidy clang-analyzer:
@@@ -2022,7 -2066,7 +2073,7 @@@ endi
  # Scripts to check various things for consistency
  # ---------------------------------------------------------------------------
  
 -PHONY += includecheck versioncheck coccicheck export_report
 +PHONY += includecheck versioncheck coccicheck
  
  includecheck:
        find $(srctree)/* $(RCS_FIND_IGNORE) \
@@@ -2037,6 -2081,9 +2088,6 @@@ versioncheck
  coccicheck:
        $(Q)$(BASH) $(srctree)/scripts/$@
  
 -export_report:
 -      $(PERL) $(srctree)/scripts/export_report.pl
 -
  PHONY += checkstack kernelrelease kernelversion image_name
  
  # UML needs a little special treatment here.  It wants to use the host
diff --combined arch/Kconfig
index 832f68af7c7794f98788a1c7dcbd12985e8fd276,00551f340dbe34772d3cc6b6fd0393126d179c5f..6682b2a53e342cbacc05b70ef99cb1c47efe55e8
@@@ -135,7 -135,6 +135,7 @@@ config KPROBES_ON_FTRAC
  config UPROBES
        def_bool n
        depends on ARCH_SUPPORTS_UPROBES
 +      select TASKS_TRACE_RCU
        help
          Uprobes is the user-space counterpart to kprobes: they
          enable instrumentation applications (such as 'perf probe')
@@@ -812,6 -811,45 +812,45 @@@ config LTO_CLANG_THI
          If unsure, say Y.
  endchoice
  
+ config ARCH_SUPPORTS_AUTOFDO_CLANG
+       bool
+ config AUTOFDO_CLANG
+       bool "Enable Clang's AutoFDO build (EXPERIMENTAL)"
+       depends on ARCH_SUPPORTS_AUTOFDO_CLANG
+       depends on CC_IS_CLANG && CLANG_VERSION >= 170000
+       help
+         This option enables Clang’s AutoFDO build. When
+         an AutoFDO profile is specified in variable
+         CLANG_AUTOFDO_PROFILE during the build process,
+         Clang uses the profile to optimize the kernel.
+         If no profile is specified, AutoFDO options are
+         still passed to Clang to facilitate the collection
+         of perf data for creating an AutoFDO profile in
+         subsequent builds.
+         If unsure, say N.
+ config ARCH_SUPPORTS_PROPELLER_CLANG
+       bool
+ config PROPELLER_CLANG
+       bool "Enable Clang's Propeller build"
+       depends on ARCH_SUPPORTS_PROPELLER_CLANG
+       depends on CC_IS_CLANG && CLANG_VERSION >= 190000
+       help
+         This option enables Clang’s Propeller build. When the Propeller
+         profiles is specified in variable CLANG_PROPELLER_PROFILE_PREFIX
+         during the build process, Clang uses the profiles to optimize
+         the kernel.
+         If no profile is specified, Propeller options are still passed
+         to Clang to facilitate the collection of perf data for creating
+         the Propeller profiles in subsequent builds.
+         If unsure, say N.
  config ARCH_SUPPORTS_CFI_CLANG
        bool
        help
@@@ -1025,14 -1063,6 +1064,14 @@@ config ARCH_WANTS_EXECMEM_LAT
          enough entropy for module space randomization, for instance
          arm64.
  
 +config ARCH_HAS_EXECMEM_ROX
 +      bool
 +      depends on MMU && !HIGHMEM
 +      help
 +        For architectures that support allocations of executable memory
 +        with read-only execute permissions. Architecture must implement
 +        execmem_fill_trapping_insns() callback to enable this.
 +
  config HAVE_IRQ_EXIT_ON_IRQ_STACK
        bool
        help
@@@ -1537,7 -1567,7 +1576,7 @@@ config HAVE_SPARSE_SYSCALL_N
          entries at 4000, 5000 and 6000 locations. This option turns on syscall
          related optimizations for a given architecture.
  
 -config ARCH_HAS_VDSO_DATA
 +config ARCH_HAS_VDSO_TIME_DATA
        bool
  
  config HAVE_STATIC_CALL
@@@ -1691,10 -1721,4 +1730,10 @@@ config CC_HAS_SANE_FUNCTION_ALIGNMEN
  config ARCH_NEED_CMPXCHG_1_EMU
        bool
  
 +config ARCH_WANTS_PRE_LINK_VMLINUX
 +      bool
 +      help
 +        An architecture can select this if it provides arch/<arch>/tools/Makefile
 +        with .arch.vmlinux.o target to be linked into vmlinux.
 +
  endmenu
diff --combined arch/powerpc/Makefile
index 41489483a602f698d16e73f5568fa560feb8958a,321b596d25501c72290aaeb93cb2759705f7f675..f3804103c56ccfdb16289468397ccaea71bf721e
@@@ -62,14 -62,14 +62,14 @@@ KBUILD_LDFLAGS_MODULE += arch/powerpc/l
  endif
  
  ifdef CONFIG_CPU_LITTLE_ENDIAN
 -KBUILD_CFLAGS += -mlittle-endian
 +KBUILD_CPPFLAGS       += -mlittle-endian
  KBUILD_LDFLAGS        += -EL
  LDEMULATION   := lppc
  GNUTARGET     := powerpcle
  MULTIPLEWORD  := -mno-multiple
  KBUILD_CFLAGS_MODULE += $(call cc-option,-mno-save-toc-indirect)
  else
 -KBUILD_CFLAGS += $(call cc-option,-mbig-endian)
 +KBUILD_CPPFLAGS       += $(call cc-option,-mbig-endian)
  KBUILD_LDFLAGS        += -EB
  LDEMULATION   := ppc
  GNUTARGET     := powerpc
@@@ -95,11 -95,18 +95,11 @@@ aflags-$(CONFIG_CPU_BIG_ENDIAN)            += $(c
  aflags-$(CONFIG_CPU_LITTLE_ENDIAN)    += -mlittle-endian
  
  ifeq ($(HAS_BIARCH),y)
 -KBUILD_CFLAGS += -m$(BITS)
 +KBUILD_CPPFLAGS       += -m$(BITS)
  KBUILD_AFLAGS += -m$(BITS)
  KBUILD_LDFLAGS        += -m elf$(BITS)$(LDEMULATION)
  endif
  
 -cflags-$(CONFIG_STACKPROTECTOR)       += -mstack-protector-guard=tls
 -ifdef CONFIG_PPC64
 -cflags-$(CONFIG_STACKPROTECTOR)       += -mstack-protector-guard-reg=r13
 -else
 -cflags-$(CONFIG_STACKPROTECTOR)       += -mstack-protector-guard-reg=r2
 -endif
 -
  LDFLAGS_vmlinux-y := -Bstatic
  LDFLAGS_vmlinux-$(CONFIG_RELOCATABLE) := -pie
  LDFLAGS_vmlinux-$(CONFIG_RELOCATABLE) += -z notext
@@@ -148,15 -155,7 +148,15 @@@ CC_FLAGS_NO_FPU          := $(call cc-option,-m
  ifdef CONFIG_FUNCTION_TRACER
  ifdef CONFIG_ARCH_USING_PATCHABLE_FUNCTION_ENTRY
  KBUILD_CPPFLAGS       += -DCC_USING_PATCHABLE_FUNCTION_ENTRY
 +ifdef CONFIG_PPC_FTRACE_OUT_OF_LINE
 +CC_FLAGS_FTRACE := -fpatchable-function-entry=1
 +else
 +ifdef CONFIG_DYNAMIC_FTRACE_WITH_CALL_OPS # PPC32 only
 +CC_FLAGS_FTRACE := -fpatchable-function-entry=3,1
 +else
  CC_FLAGS_FTRACE := -fpatchable-function-entry=2
 +endif
 +endif
  else
  CC_FLAGS_FTRACE := -pg
  ifdef CONFIG_MPROFILE_KERNEL
@@@ -176,6 -175,7 +176,6 @@@ KBUILD_CPPFLAGS    += -I $(srctree)/arch/p
  KBUILD_AFLAGS += $(AFLAGS-y)
  KBUILD_CFLAGS += $(CC_FLAGS_NO_FPU)
  KBUILD_CFLAGS += $(CFLAGS-y)
 -CPP           = $(CC) -E $(KBUILD_CFLAGS)
  
  CHECKFLAGS    += -m$(BITS) -D__powerpc__ -D__powerpc$(BITS)__
  ifdef CONFIG_CPU_BIG_ENDIAN
@@@ -359,7 -359,7 +359,7 @@@ define archhel
    echo '  install         - Install kernel using'
    echo '                    (your) ~/bin/$(INSTALLKERNEL) or'
    echo '                    (distribution) /sbin/$(INSTALLKERNEL) or'
 -  echo '                    install to $$(INSTALL_PATH) and run lilo'
 +  echo '                    install to $$(INSTALL_PATH)'
    echo '  *_defconfig     - Select default config from arch/powerpc/configs'
    echo ''
    echo '  Targets with <dt> embed a device tree blob inside the image'
@@@ -402,11 -402,9 +402,13 @@@ prepare: stack_protector_prepar
  PHONY += stack_protector_prepare
  stack_protector_prepare: prepare0
  ifdef CONFIG_PPC64
 -      $(eval KBUILD_CFLAGS += -mstack-protector-guard-offset=$(shell awk '{if ($$2 == "PACA_CANARY") print $$3;}' $(objtree)/include/generated/asm-offsets.h))
 +      $(eval KBUILD_CFLAGS += -mstack-protector-guard=tls -mstack-protector-guard-reg=r13 \
-                               -mstack-protector-guard-offset=$(shell awk '{if ($$2 == "PACA_CANARY") print $$3;}' include/generated/asm-offsets.h))
++                              -mstack-protector-guard-offset=$(shell awk '{if ($$2 == "PACA_CANARY") print $$3;}' \
++                              $(objtree)/include/generated/asm-offsets.h))
  else
 -      $(eval KBUILD_CFLAGS += -mstack-protector-guard-offset=$(shell awk '{if ($$2 == "TASK_CANARY") print $$3;}' $(objtree)/include/generated/asm-offsets.h))
 +      $(eval KBUILD_CFLAGS += -mstack-protector-guard=tls -mstack-protector-guard-reg=r2 \
-                               -mstack-protector-guard-offset=$(shell awk '{if ($$2 == "TASK_CANARY") print $$3;}' include/generated/asm-offsets.h))
++                              -mstack-protector-guard-offset=$(shell awk '{if ($$2 == "TASK_CANARY") print $$3;}' \
++                              $(objtree)/include/generated/asm-offsets.h))
  endif
  endif
  
diff --combined arch/riscv/Makefile
index 9fe1ee740dda8544f5f85aaf37b322de53859205,a08cfeb6cbf98d2fe4069b4c67afe98b62d0435e..13fbc0f94238797acad3b8991b48b0aa02c84990
@@@ -82,12 -82,6 +82,12 @@@ els
  riscv-march-$(CONFIG_TOOLCHAIN_NEEDS_EXPLICIT_ZICSR_ZIFENCEI) := $(riscv-march-y)_zicsr_zifencei
  endif
  
 +# Check if the toolchain supports Zacas
 +riscv-march-$(CONFIG_TOOLCHAIN_HAS_ZACAS) := $(riscv-march-y)_zacas
 +
 +# Check if the toolchain supports Zabha
 +riscv-march-$(CONFIG_TOOLCHAIN_HAS_ZABHA) := $(riscv-march-y)_zabha
 +
  # Remove F,D,V from isa string for all. Keep extensions between "fd" and "v" by
  # matching non-v and non-multi-letter extensions out with the filter ([^v_]*)
  KBUILD_CFLAGS += -march=$(shell echo $(riscv-march-y) | sed -E 's/(rv32ima|rv64ima)fd([^v_]*)v?/\1\2/')
@@@ -135,7 -129,7 +135,7 @@@ stack_protector_prepare: prepare
                                -mstack-protector-guard-reg=tp            \
                                -mstack-protector-guard-offset=$(shell    \
                        awk '{if ($$2 == "TSK_STACK_CANARY") print $$3;}' \
-                                       include/generated/asm-offsets.h))
+                               $(objtree)/include/generated/asm-offsets.h))
  endif
  
  # arch specific predefines for sparse
diff --combined arch/x86/Kconfig
index 6c633d93c6390ab3dfa3ed40ae0e16ef51c869c4,89b8fc452a7cf0dbd15ae270a5e80a976cb59888..9d7bd0ae48c4260f4abb6dbedc696e3915c230ea
@@@ -83,7 -83,6 +83,7 @@@ config X8
        select ARCH_HAS_DMA_OPS                 if GART_IOMMU || XEN
        select ARCH_HAS_EARLY_DEBUG             if KGDB
        select ARCH_HAS_ELF_RANDOMIZE
 +      select ARCH_HAS_EXECMEM_ROX             if X86_64
        select ARCH_HAS_FAST_MULTIPLIER
        select ARCH_HAS_FORTIFY_SOURCE
        select ARCH_HAS_GCOV_PROFILE_ALL
@@@ -94,7 -93,6 +94,7 @@@
        select ARCH_HAS_NMI_SAFE_THIS_CPU_OPS
        select ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE
        select ARCH_HAS_PMEM_API                if X86_64
 +      select ARCH_HAS_PREEMPT_LAZY
        select ARCH_HAS_PTE_DEVMAP              if X86_64
        select ARCH_HAS_PTE_SPECIAL
        select ARCH_HAS_HW_PTE_YOUNG
        select ARCH_SUPPORTS_LTO_CLANG
        select ARCH_SUPPORTS_LTO_CLANG_THIN
        select ARCH_SUPPORTS_RT
+       select ARCH_SUPPORTS_AUTOFDO_CLANG
+       select ARCH_SUPPORTS_PROPELLER_CLANG    if X86_64
        select ARCH_USE_BUILTIN_BSWAP
        select ARCH_USE_CMPXCHG_LOCKREF         if X86_CMPXCHG64
        select ARCH_USE_MEMTEST
        select ARCH_HAS_PARANOID_L1D_FLUSH
        select BUILDTIME_TABLE_SORT
        select CLKEVT_I8253
 -      select CLOCKSOURCE_VALIDATE_LAST_CYCLE
        select CLOCKSOURCE_WATCHDOG
        # Word-size accesses may read uninitialized data past the trailing \0
        # in strings and cause false KMSAN reports.
@@@ -1955,7 -1956,6 +1957,7 @@@ config X86_USER_SHADOW_STAC
        depends on AS_WRUSS
        depends on X86_64
        select ARCH_USES_HIGH_VMA_FLAGS
 +      select ARCH_HAS_USER_SHADOW_STACK
        select X86_CET
        help
          Shadow stack protection is a hardware feature that detects function
@@@ -2086,9 -2086,6 +2088,9 @@@ config ARCH_SUPPORTS_KEXEC_JUM
  config ARCH_SUPPORTS_CRASH_DUMP
        def_bool X86_64 || (X86_32 && HIGHMEM)
  
 +config ARCH_DEFAULT_CRASH_DUMP
 +      def_bool y
 +
  config ARCH_SUPPORTS_CRASH_HOTPLUG
        def_bool y
  
@@@ -2429,14 -2426,6 +2431,14 @@@ config CFI_AUTO_DEFAUL
  
  source "kernel/livepatch/Kconfig"
  
 +config X86_BUS_LOCK_DETECT
 +      bool "Split Lock Detect and Bus Lock Detect support"
 +      depends on CPU_SUP_INTEL || CPU_SUP_AMD
 +      default y
 +      help
 +        Enable Split Lock Detect and Bus Lock Detect functionalities.
 +        See <file:Documentation/arch/x86/buslock.rst> for more information.
 +
  endmenu
  
  config CC_HAS_NAMED_AS
@@@ -2565,14 -2554,15 +2567,14 @@@ config MITIGATION_CALL_DEPTH_TRACKIN
        default y
        help
          Compile the kernel with call depth tracking to mitigate the Intel
 -        SKL Return-Speculation-Buffer (RSB) underflow issue. The
 -        mitigation is off by default and needs to be enabled on the
 -        kernel command line via the retbleed=stuff option. For
 -        non-affected systems the overhead of this option is marginal as
 -        the call depth tracking is using run-time generated call thunks
 -        in a compiler generated padding area and call patching. This
 -        increases text size by ~5%. For non affected systems this space
 -        is unused. On affected SKL systems this results in a significant
 -        performance gain over the IBRS mitigation.
 +        SKL Return-Stack-Buffer (RSB) underflow issue. The mitigation is off
 +        by default and needs to be enabled on the kernel command line via the
 +        retbleed=stuff option. For non-affected systems the overhead of this
 +        option is marginal as the call depth tracking is using run-time
 +        generated call thunks in a compiler generated padding area and call
 +        patching. This increases text size by ~5%. For non affected systems
 +        this space is unused. On affected SKL systems this results in a
 +        significant performance gain over the IBRS mitigation.
  
  config CALL_THUNKS_DEBUG
        bool "Enable call thunks and call depth tracking debugging"
index 68efd8cd8bf1b41f887f422a250c563714c4541d,cf22081601ed6e010c788abddea19903ddb9d001..fab3ac9a4574ab406fee90e6c5d86fd4a81af319
@@@ -193,6 -193,29 +193,6 @@@ SECTION
  
        ORC_UNWIND_TABLE
  
 -      . = ALIGN(PAGE_SIZE);
 -      __vvar_page = .;
 -
 -      .vvar : AT(ADDR(.vvar) - LOAD_OFFSET) {
 -              /* work around gold bug 13023 */
 -              __vvar_beginning_hack = .;
 -
 -              /* Place all vvars at the offsets in asm/vvar.h. */
 -#define EMIT_VVAR(name, offset)                               \
 -              . = __vvar_beginning_hack + offset;     \
 -              *(.vvar_ ## name)
 -#include <asm/vvar.h>
 -#undef EMIT_VVAR
 -
 -              /*
 -               * Pad the rest of the page with zeros.  Otherwise the loader
 -               * can leave garbage here.
 -               */
 -              . = __vvar_beginning_hack + PAGE_SIZE;
 -      } :data
 -
 -      . = ALIGN(__vvar_page + PAGE_SIZE, PAGE_SIZE);
 -
        /* Init code and data - will be freed after init */
        . = ALIGN(PAGE_SIZE);
        .init.begin : AT(ADDR(.init.begin) - LOAD_OFFSET) {
  
        STABS_DEBUG
        DWARF_DEBUG
+ #ifdef CONFIG_PROPELLER_CLANG
+       .llvm_bb_addr_map : { *(.llvm_bb_addr_map) }
+ #endif
        ELF_DETAILS
  
        DISCARDS
  . = ASSERT((_end - LOAD_OFFSET <= KERNEL_IMAGE_SIZE),
           "kernel image bigger than KERNEL_IMAGE_SIZE");
  
 +/* needed for Clang - see arch/x86/entry/entry.S */
 +PROVIDE(__ref_stack_chk_guard = __stack_chk_guard);
 +
  #ifdef CONFIG_X86_64
  /*
   * Per-cpu symbols which need to be offset from __per_cpu_load
@@@ -508,22 -532,3 +512,22 @@@ INIT_PER_CPU(irq_stack_backing_store)
  #endif
  
  #endif /* CONFIG_X86_64 */
 +
 +/*
 + * The symbols below are referenced using relative relocations in the
 + * respective ELF notes. This produces build time constants that the
 + * linker will never mark as relocatable. (Using just ABSOLUTE() is not
 + * sufficient for that).
 + */
 +#ifdef CONFIG_XEN
 +#ifdef CONFIG_XEN_PV
 +xen_elfnote_entry_value =
 +      ABSOLUTE(xen_elfnote_entry) + ABSOLUTE(startup_xen);
 +#endif
 +xen_elfnote_hypercall_page_value =
 +      ABSOLUTE(xen_elfnote_hypercall_page) + ABSOLUTE(hypercall_page);
 +#endif
 +#ifdef CONFIG_PVH
 +xen_elfnote_phys32_entry_value =
 +      ABSOLUTE(xen_elfnote_phys32_entry) + ABSOLUTE(pvh_start_xen - LOAD_OFFSET);
 +#endif
diff --combined drivers/of/Kconfig
index f0b8cc23c46d377f8cce792893cdf1c39fe2d1f1,6a53cbaa134ce064fbb6bde97777a6f7deb161ab..50697cc3b07ebeb24283e22299797ce4612db89c
@@@ -2,6 -2,12 +2,12 @@@
  config DTC
        bool
  
+ config GENERIC_BUILTIN_DTB
+       bool
+ config BUILTIN_DTB_ALL
+       bool
  menuconfig OF
        bool "Device Tree and Open Firmware support"
        help
@@@ -111,7 -117,7 +117,7 @@@ config OF_OVERLAY_KUNIT_TES
        tristate "Device Tree overlay KUnit tests" if !KUNIT_ALL_TESTS
        depends on KUNIT
        default KUNIT_ALL_TESTS
 -      select OF_OVERLAY
 +      select DTC
        help
          This option builds KUnit unit tests for the device tree overlay code.
  
diff --combined include/linux/module.h
index 2a9386cbdf8502d9eb05bcc6cc981d577cc107ed,3dd79a3d0cbf6b1c2e3f23dd6bc20097250903f2..c60ee39cb9b1293c33e478aadc775820d3981562
@@@ -247,7 -247,7 +247,7 @@@ extern void cleanup_module(void)
  #ifdef MODULE
  /* Creates an alias so file2alias.c can find device table. */
  #define MODULE_DEVICE_TABLE(type, name)                                       \
- extern typeof(name) __mod_##type##__##name##_device_table             \
+ extern typeof(name) __mod_device_table__##type##__##name              \
    __attribute__ ((unused, alias(__stringify(name))))
  #else  /* !MODULE */
  #define MODULE_DEVICE_TABLE(type, name)
@@@ -367,8 -367,6 +367,8 @@@ enum mod_mem_type 
  
  struct module_memory {
        void *base;
 +      void *rw_copy;
 +      bool is_rox;
        unsigned int size;
  
  #ifdef CONFIG_MODULES_TREE_LOOKUP
@@@ -769,15 -767,6 +769,15 @@@ static inline bool is_livepatch_module(
  
  void set_module_sig_enforced(void);
  
 +void *__module_writable_address(struct module *mod, void *loc);
 +
 +static inline void *module_writable_address(struct module *mod, void *loc)
 +{
 +      if (!IS_ENABLED(CONFIG_ARCH_HAS_EXECMEM_ROX) || !mod)
 +              return loc;
 +      return __module_writable_address(mod, loc);
 +}
 +
  #else /* !CONFIG_MODULES... */
  
  static inline struct module *__module_address(unsigned long addr)
@@@ -885,11 -874,6 +885,11 @@@ static inline bool module_is_coming(str
  {
        return false;
  }
 +
 +static inline void *module_writable_address(struct module *mod, void *loc)
 +{
 +      return loc;
 +}
  #endif /* CONFIG_MODULES */
  
  #ifdef CONFIG_SYSFS
diff --combined include/net/net_debug.h
index 9fecb1496be3f0fca4da9ce83f6b69b27077483a,4a79204c8d306e93bb5aac31fe3bd67cf63c5131..47f7a4a878b9f3f52d6c55a13e8c19bbd7f8edcf
@@@ -27,7 -27,7 +27,7 @@@ void netdev_info(const struct net_devic
  
  #define netdev_level_once(level, dev, fmt, ...)                       \
  do {                                                          \
-       static bool __section(".data.once") __print_once;       \
+       static bool __section(".data..once") __print_once;      \
                                                                \
        if (!__print_once) {                                    \
                __print_once = true;                            \
@@@ -149,11 -149,9 +149,11 @@@ do {                                                             
  
  
  #if defined(CONFIG_DEBUG_NET)
 -#define DEBUG_NET_WARN_ON_ONCE(cond) (void)WARN_ON_ONCE(cond)
 +#define DEBUG_NET_WARN_ON_ONCE(cond) ((void)WARN_ON_ONCE(cond))
 +#define DEBUG_NET_WARN_ONCE(cond, format...) ((void)WARN_ONCE(cond, format))
  #else
  #define DEBUG_NET_WARN_ON_ONCE(cond) BUILD_BUG_ON_INVALID(cond)
 +#define DEBUG_NET_WARN_ONCE(cond, format...) BUILD_BUG_ON_INVALID(cond)
  #endif
  
  #endif        /* _LINUX_NET_DEBUG_H */
diff --combined mm/internal.h
index 5a7302baeed7ccbae6a6fc827e1599e179161a88,a23f7b11b7608929f44dfe8bbdfdab30a999f005..cb8d8e8e3ffa5f7fec34d8498a9aad1808232748
@@@ -12,7 -12,6 +12,7 @@@
  #include <linux/mm.h>
  #include <linux/mm_inline.h>
  #include <linux/pagemap.h>
 +#include <linux/pagewalk.h>
  #include <linux/rmap.h>
  #include <linux/swap.h>
  #include <linux/swapops.h>
@@@ -49,7 -48,7 +49,7 @@@ struct folio_batch
   * when we specify __GFP_NOWARN.
   */
  #define WARN_ON_ONCE_GFP(cond, gfp)   ({                              \
-       static bool __section(".data.once") __warned;                   \
+       static bool __section(".data..once") __warned;                  \
        int __ret_warn_once = !!(cond);                                 \
                                                                        \
        if (unlikely(!(gfp & __GFP_NOWARN) && __ret_warn_once && !__warned)) { \
@@@ -109,51 -108,6 +109,51 @@@ static inline void *folio_raw_mapping(c
        return (void *)(mapping & ~PAGE_MAPPING_FLAGS);
  }
  
 +/*
 + * This is a file-backed mapping, and is about to be memory mapped - invoke its
 + * mmap hook and safely handle error conditions. On error, VMA hooks will be
 + * mutated.
 + *
 + * @file: File which backs the mapping.
 + * @vma:  VMA which we are mapping.
 + *
 + * Returns: 0 if success, error otherwise.
 + */
 +static inline int mmap_file(struct file *file, struct vm_area_struct *vma)
 +{
 +      int err = call_mmap(file, vma);
 +
 +      if (likely(!err))
 +              return 0;
 +
 +      /*
 +       * OK, we tried to call the file hook for mmap(), but an error
 +       * arose. The mapping is in an inconsistent state and we most not invoke
 +       * any further hooks on it.
 +       */
 +      vma->vm_ops = &vma_dummy_vm_ops;
 +
 +      return err;
 +}
 +
 +/*
 + * If the VMA has a close hook then close it, and since closing it might leave
 + * it in an inconsistent state which makes the use of any hooks suspect, clear
 + * them down by installing dummy empty hooks.
 + */
 +static inline void vma_close(struct vm_area_struct *vma)
 +{
 +      if (vma->vm_ops && vma->vm_ops->close) {
 +              vma->vm_ops->close(vma);
 +
 +              /*
 +               * The mapping is in an inconsistent state, and no further hooks
 +               * may be invoked upon it.
 +               */
 +              vma->vm_ops = &vma_dummy_vm_ops;
 +      }
 +}
 +
  #ifdef CONFIG_MMU
  
  /* Flags for folio_pte_batch(). */
@@@ -685,11 -639,11 +685,11 @@@ static inline void folio_set_order(stru
  #endif
  }
  
 -void __folio_undo_large_rmappable(struct folio *folio);
 -static inline void folio_undo_large_rmappable(struct folio *folio)
 +bool __folio_unqueue_deferred_split(struct folio *folio);
 +static inline bool folio_unqueue_deferred_split(struct folio *folio)
  {
        if (folio_order(folio) <= 1 || !folio_test_large_rmappable(folio))
 -              return;
 +              return false;
  
        /*
         * At this point, there is no one trying to add the folio to
         * to check without acquiring the split_queue_lock.
         */
        if (data_race(list_empty(&folio->_deferred_list)))
 -              return;
 +              return false;
  
 -      __folio_undo_large_rmappable(folio);
 +      return __folio_unqueue_deferred_split(folio);
  }
  
  static inline struct folio *page_rmappable_folio(struct page *page)
@@@ -842,7 -796,7 +842,7 @@@ static inline bool free_area_empty(stru
  }
  
  /* mm/util.c */
 -struct anon_vma *folio_anon_vma(struct folio *folio);
 +struct anon_vma *folio_anon_vma(const struct folio *folio);
  
  #ifdef CONFIG_MMU
  void unmap_mapping_folio(struct folio *folio);
@@@ -960,7 -914,7 +960,7 @@@ extern pmd_t maybe_pmd_mkwrite(pmd_t pm
   * If any page in this range is mapped by this VMA, return the first address
   * where any of these pages appear.  Otherwise, return -EFAULT.
   */
 -static inline unsigned long vma_address(struct vm_area_struct *vma,
 +static inline unsigned long vma_address(const struct vm_area_struct *vma,
                pgoff_t pgoff, unsigned long nr_pages)
  {
        unsigned long address;
@@@ -1118,11 -1072,10 +1118,11 @@@ void ClearPageHWPoisonTakenOff(struct p
  bool take_page_off_buddy(struct page *page);
  bool put_page_back_buddy(struct page *page);
  struct task_struct *task_early_kill(struct task_struct *tsk, int force_early);
 -void add_to_kill_ksm(struct task_struct *tsk, struct page *p,
 +void add_to_kill_ksm(struct task_struct *tsk, const struct page *p,
                     struct vm_area_struct *vma, struct list_head *to_kill,
                     unsigned long ksm_addr);
 -unsigned long page_mapped_in_vma(struct page *page, struct vm_area_struct *vma);
 +unsigned long page_mapped_in_vma(const struct page *page,
 +              struct vm_area_struct *vma);
  
  #else
  static inline void unmap_poisoned_folio(struct folio *folio, enum ttu_flags ttu)
@@@ -1236,7 -1189,6 +1236,7 @@@ size_t splice_folio_into_pipe(struct pi
  void __init vmalloc_init(void);
  int __must_check vmap_pages_range_noflush(unsigned long addr, unsigned long end,
                  pgprot_t prot, struct page **pages, unsigned int page_shift);
 +unsigned int get_vm_area_page_order(struct vm_struct *vm);
  #else
  static inline void vmalloc_init(void)
  {
@@@ -1265,12 -1217,6 +1265,12 @@@ int numa_migrate_check(struct folio *fo
  void free_zone_device_folio(struct folio *folio);
  int migrate_device_coherent_folio(struct folio *folio);
  
 +struct vm_struct *__get_vm_area_node(unsigned long size,
 +                                   unsigned long align, unsigned long shift,
 +                                   unsigned long flags, unsigned long start,
 +                                   unsigned long end, int node, gfp_t gfp_mask,
 +                                   const void *caller);
 +
  /*
   * mm/gup.c
   */
@@@ -1285,34 -1231,6 +1285,34 @@@ void touch_pud(struct vm_area_struct *v
  void touch_pmd(struct vm_area_struct *vma, unsigned long addr,
               pmd_t *pmd, bool write);
  
 +static inline bool alloc_zeroed(void)
 +{
 +      return static_branch_maybe(CONFIG_INIT_ON_ALLOC_DEFAULT_ON,
 +                      &init_on_alloc);
 +}
 +
 +/*
 + * Parses a string with mem suffixes into its order. Useful to parse kernel
 + * parameters.
 + */
 +static inline int get_order_from_str(const char *size_str,
 +                                   unsigned long valid_orders)
 +{
 +      unsigned long size;
 +      char *endptr;
 +      int order;
 +
 +      size = memparse(size_str, &endptr);
 +
 +      if (!is_power_of_2(size))
 +              return -EINVAL;
 +      order = get_order(size);
 +      if (BIT(order) & ~valid_orders)
 +              return -EINVAL;
 +
 +      return order;
 +}
 +
  enum {
        /* mark page accessed */
        FOLL_TOUCH = 1 << 16,
@@@ -1393,7 -1311,7 +1393,7 @@@ static inline bool gup_must_unshare(str
                smp_rmb();
  
        /*
 -       * Note that PageKsm() pages cannot be exclusive, and consequently,
 +       * Note that KSM pages cannot be exclusive, and consequently,
         * cannot get pinned.
         */
        return !PageAnonExclusive(page);
@@@ -1525,9 -1443,4 +1525,9 @@@ static inline void accept_page(struct p
  }
  #endif /* CONFIG_UNACCEPTED_MEMORY */
  
 +/* pagewalk.c */
 +int walk_page_range_mm(struct mm_struct *mm, unsigned long start,
 +              unsigned long end, const struct mm_walk_ops *ops,
 +              void *private);
 +
  #endif        /* __MM_INTERNAL_H */
diff --combined rust/Makefile
index 01cf8e6ba3b3bdf711ac7c8e1c4dc24e44de059a,742740816c4b32147b4ac5d39e940f0d6fdbfdd7..9da9042fd62796ddb852f4bf7cf46d70f0b8ca97
@@@ -3,7 -3,7 +3,7 @@@
  # Where to place rustdoc generated documentation
  rustdoc_output := $(objtree)/Documentation/output/rust/rustdoc
  
 -obj-$(CONFIG_RUST) += core.o compiler_builtins.o
 +obj-$(CONFIG_RUST) += core.o compiler_builtins.o ffi.o
  always-$(CONFIG_RUST) += exports_core_generated.h
  
  # Missing prototypes are expected in the helpers since these are exported
@@@ -15,8 -15,8 +15,8 @@@ always-$(CONFIG_RUST) += libmacros.s
  no-clean-files += libmacros.so
  
  always-$(CONFIG_RUST) += bindings/bindings_generated.rs bindings/bindings_helpers_generated.rs
 -obj-$(CONFIG_RUST) += alloc.o bindings.o kernel.o
 -always-$(CONFIG_RUST) += exports_alloc_generated.h exports_helpers_generated.h \
 +obj-$(CONFIG_RUST) += bindings.o kernel.o
 +always-$(CONFIG_RUST) += exports_helpers_generated.h \
      exports_bindings_generated.h exports_kernel_generated.h
  
  always-$(CONFIG_RUST) += uapi/uapi_generated.rs
@@@ -36,8 -36,6 +36,8 @@@ always-$(CONFIG_RUST_KERNEL_DOCTESTS) +
  obj-$(CONFIG_RUST_KERNEL_DOCTESTS) += doctests_kernel_generated.o
  obj-$(CONFIG_RUST_KERNEL_DOCTESTS) += doctests_kernel_generated_kunit.o
  
 +always-$(subst y,$(CONFIG_RUST),$(CONFIG_JUMP_LABEL)) += kernel/generated_arch_static_branch_asm.rs
 +
  # Avoids running `$(RUSTC)` for the sysroot when it may not be available.
  ifdef CONFIG_RUST
  
@@@ -55,10 -53,15 +55,10 @@@ endi
  core-cfgs = \
      --cfg no_fp_fmt_parse
  
 -alloc-cfgs = \
 -    --cfg no_global_oom_handling \
 -    --cfg no_rc \
 -    --cfg no_sync
 -
  quiet_cmd_rustdoc = RUSTDOC $(if $(rustdoc_host),H, ) $<
        cmd_rustdoc = \
        OBJTREE=$(abspath $(objtree)) \
 -      $(RUSTDOC) $(if $(rustdoc_host),$(rust_common_flags),$(rust_flags)) \
 +      $(RUSTDOC) $(filter-out $(skip_flags),$(if $(rustdoc_host),$(rust_common_flags),$(rust_flags))) \
                $(rustc_target_flags) -L$(objtree)/$(obj) \
                -Zunstable-options --generate-link-to-definition \
                --output $(rustdoc_output) \
@@@ -78,7 -81,7 +78,7 @@@
  # command-like flags to solve the issue. Meanwhile, we use the non-custom case
  # and then retouch the generated files.
  rustdoc: rustdoc-core rustdoc-macros rustdoc-compiler_builtins \
 -    rustdoc-alloc rustdoc-kernel
 +    rustdoc-kernel
        $(Q)cp $(srctree)/Documentation/images/logo.svg $(rustdoc_output)/static.files/
        $(Q)cp $(srctree)/Documentation/images/COPYING-logo $(rustdoc_output)/static.files/
        $(Q)find $(rustdoc_output) -name '*.html' -type f -print0 | xargs -0 sed -Ei \
@@@ -95,9 -98,6 +95,9 @@@ rustdoc-macros: private rustc_target_fl
  rustdoc-macros: $(src)/macros/lib.rs FORCE
        +$(call if_changed,rustdoc)
  
 +# Starting with Rust 1.82.0, skipping `-Wrustdoc::unescaped_backticks` should
 +# not be needed -- see https://github.com/rust-lang/rust/pull/128307.
 +rustdoc-core: private skip_flags = -Wrustdoc::unescaped_backticks
  rustdoc-core: private rustc_target_flags = $(core-cfgs)
  rustdoc-core: $(RUST_LIB_SRC)/core/src/lib.rs FORCE
        +$(call if_changed,rustdoc)
  rustdoc-compiler_builtins: $(src)/compiler_builtins.rs rustdoc-core FORCE
        +$(call if_changed,rustdoc)
  
 -# We need to allow `rustdoc::broken_intra_doc_links` because some
 -# `no_global_oom_handling` functions refer to non-`no_global_oom_handling`
 -# functions. Ideally `rustdoc` would have a way to distinguish broken links
 -# due to things that are "configured out" vs. entirely non-existing ones.
 -rustdoc-alloc: private rustc_target_flags = $(alloc-cfgs) \
 -    -Arustdoc::broken_intra_doc_links
 -rustdoc-alloc: $(RUST_LIB_SRC)/alloc/src/lib.rs rustdoc-core rustdoc-compiler_builtins FORCE
 +rustdoc-ffi: $(src)/ffi.rs rustdoc-core FORCE
        +$(call if_changed,rustdoc)
  
 -rustdoc-kernel: private rustc_target_flags = --extern alloc \
 +rustdoc-kernel: private rustc_target_flags = --extern ffi \
      --extern build_error --extern macros=$(objtree)/$(obj)/libmacros.so \
      --extern bindings --extern uapi
 -rustdoc-kernel: $(src)/kernel/lib.rs rustdoc-core rustdoc-macros \
 -    rustdoc-compiler_builtins rustdoc-alloc $(obj)/libmacros.so \
 +rustdoc-kernel: $(src)/kernel/lib.rs rustdoc-core rustdoc-ffi rustdoc-macros \
 +    rustdoc-compiler_builtins $(obj)/libmacros.so \
      $(obj)/bindings.o FORCE
        +$(call if_changed,rustdoc)
  
@@@ -129,33 -135,19 +129,33 @@@ quiet_cmd_rustc_test_library = RUSTC T
  rusttestlib-build_error: $(src)/build_error.rs FORCE
        +$(call if_changed,rustc_test_library)
  
 +rusttestlib-ffi: $(src)/ffi.rs FORCE
 +      +$(call if_changed,rustc_test_library)
 +
  rusttestlib-macros: private rustc_target_flags = --extern proc_macro
  rusttestlib-macros: private rustc_test_library_proc = yes
  rusttestlib-macros: $(src)/macros/lib.rs FORCE
        +$(call if_changed,rustc_test_library)
  
 -rusttestlib-bindings: $(src)/bindings/lib.rs FORCE
 +rusttestlib-kernel: private rustc_target_flags = --extern ffi \
 +    --extern build_error --extern macros \
 +    --extern bindings --extern uapi
 +rusttestlib-kernel: $(src)/kernel/lib.rs \
 +    rusttestlib-bindings rusttestlib-uapi rusttestlib-build_error \
 +    $(obj)/libmacros.so $(obj)/bindings.o FORCE
 +      +$(call if_changed,rustc_test_library)
 +
 +rusttestlib-bindings: private rustc_target_flags = --extern ffi
 +rusttestlib-bindings: $(src)/bindings/lib.rs rusttestlib-ffi FORCE
        +$(call if_changed,rustc_test_library)
  
 -rusttestlib-uapi: $(src)/uapi/lib.rs FORCE
 +rusttestlib-uapi: private rustc_target_flags = --extern ffi
 +rusttestlib-uapi: $(src)/uapi/lib.rs rusttestlib-ffi FORCE
        +$(call if_changed,rustc_test_library)
  
  quiet_cmd_rustdoc_test = RUSTDOC T $<
        cmd_rustdoc_test = \
 +      RUST_MODFILE=test.rs \
        OBJTREE=$(abspath $(objtree)) \
        $(RUSTDOC) --test $(rust_common_flags) \
                @$(objtree)/include/generated/rustc_cfg \
@@@ -170,7 -162,7 +170,7 @@@ quiet_cmd_rustdoc_test_kernel = RUSTDO
        mkdir -p $(objtree)/$(obj)/test/doctests/kernel; \
        OBJTREE=$(abspath $(objtree)) \
        $(RUSTDOC) --test $(rust_flags) \
 -              -L$(objtree)/$(obj) --extern alloc --extern kernel \
 +              -L$(objtree)/$(obj) --extern ffi --extern kernel \
                --extern build_error --extern macros \
                --extern bindings --extern uapi \
                --no-run --crate-name kernel -Zunstable-options \
@@@ -200,20 -192,19 +200,20 @@@ quiet_cmd_rustc_test = RUSTC T  $
  
  rusttest: rusttest-macros rusttest-kernel
  
 -rusttest-macros: private rustc_target_flags = --extern proc_macro
 +rusttest-macros: private rustc_target_flags = --extern proc_macro \
 +      --extern macros --extern kernel
  rusttest-macros: private rustdoc_test_target_flags = --crate-type proc-macro
 -rusttest-macros: $(src)/macros/lib.rs FORCE
 +rusttest-macros: $(src)/macros/lib.rs \
 +    rusttestlib-macros rusttestlib-kernel FORCE
        +$(call if_changed,rustc_test)
        +$(call if_changed,rustdoc_test)
  
 -rusttest-kernel: private rustc_target_flags = --extern alloc \
 +rusttest-kernel: private rustc_target_flags = --extern ffi \
      --extern build_error --extern macros --extern bindings --extern uapi
 -rusttest-kernel: $(src)/kernel/lib.rs \
 +rusttest-kernel: $(src)/kernel/lib.rs rusttestlib-ffi rusttestlib-kernel \
      rusttestlib-build_error rusttestlib-macros rusttestlib-bindings \
      rusttestlib-uapi FORCE
        +$(call if_changed,rustc_test)
 -      +$(call if_changed,rustc_test_library)
  
  ifdef CONFIG_CC_IS_CLANG
  bindgen_c_flags = $(c_flags)
@@@ -274,16 -265,12 +274,16 @@@ els
  bindgen_c_flags_lto = $(bindgen_c_flags)
  endif
  
 -bindgen_c_flags_final = $(bindgen_c_flags_lto) -D__BINDGEN__
 +# `-fno-builtin` is passed to avoid `bindgen` from using `clang` builtin
 +# prototypes for functions like `memcpy` -- if this flag is not passed,
 +# `bindgen`-generated prototypes use `c_ulong` or `c_uint` depending on
 +# architecture instead of generating `usize`.
 +bindgen_c_flags_final = $(bindgen_c_flags_lto) -fno-builtin -D__BINDGEN__
  
  quiet_cmd_bindgen = BINDGEN $@
        cmd_bindgen = \
        $(BINDGEN) $< $(bindgen_target_flags) \
 -              --use-core --with-derive-default --ctypes-prefix core::ffi --no-layout-tests \
 +              --use-core --with-derive-default --ctypes-prefix ffi --no-layout-tests \
                --no-debug '.*' --enable-function-attribute-detection \
                -o $@ -- $(bindgen_c_flags_final) -DMODULE \
                $(bindgen_target_cflags) $(bindgen_target_extra)
@@@ -324,6 -311,9 +324,6 @@@ quiet_cmd_exports = EXPORTS $
  $(obj)/exports_core_generated.h: $(obj)/core.o FORCE
        $(call if_changed,exports)
  
 -$(obj)/exports_alloc_generated.h: $(obj)/alloc.o FORCE
 -      $(call if_changed,exports)
 -
  # Even though Rust kernel modules should never use the bindings directly,
  # symbols from the `bindings` crate and the C helpers need to be exported
  # because Rust generics and inlined functions may not get their code generated
@@@ -370,10 -360,10 +370,10 @@@ quiet_cmd_rustc_library = $(if $(skip_c
  
  rust-analyzer:
        $(Q)$(srctree)/scripts/generate_rust_analyzer.py \
 -              --cfgs='core=$(core-cfgs)' --cfgs='alloc=$(alloc-cfgs)' \
 +              --cfgs='core=$(core-cfgs)' \
                $(realpath $(srctree)) $(realpath $(objtree)) \
-               $(rustc_sysroot) $(RUST_LIB_SRC) $(KBUILD_EXTMOD) > \
-               $(if $(KBUILD_EXTMOD),$(extmod_prefix),$(objtree))/rust-project.json
+               $(rustc_sysroot) $(RUST_LIB_SRC) $(if $(KBUILD_EXTMOD),$(srcroot)) \
+               rust-project.json
  
  redirect-intrinsics = \
        __addsf3 __eqsf2 __extendsfdf2 __gesf2 __lesf2 __ltsf2 __mulsf3 __nesf2 __truncdfsf2 __unordsf2 \
@@@ -408,33 -398,30 +408,33 @@@ $(obj)/compiler_builtins.o: private rus
  $(obj)/compiler_builtins.o: $(src)/compiler_builtins.rs $(obj)/core.o FORCE
        +$(call if_changed_rule,rustc_library)
  
 -$(obj)/alloc.o: private skip_clippy = 1
 -$(obj)/alloc.o: private skip_flags = -Wunreachable_pub
 -$(obj)/alloc.o: private rustc_target_flags = $(alloc-cfgs)
 -$(obj)/alloc.o: $(RUST_LIB_SRC)/alloc/src/lib.rs $(obj)/compiler_builtins.o FORCE
 +$(obj)/build_error.o: $(src)/build_error.rs $(obj)/compiler_builtins.o FORCE
        +$(call if_changed_rule,rustc_library)
  
 -$(obj)/build_error.o: $(src)/build_error.rs $(obj)/compiler_builtins.o FORCE
 +$(obj)/ffi.o: $(src)/ffi.rs $(obj)/compiler_builtins.o FORCE
        +$(call if_changed_rule,rustc_library)
  
 +$(obj)/bindings.o: private rustc_target_flags = --extern ffi
  $(obj)/bindings.o: $(src)/bindings/lib.rs \
 -    $(obj)/compiler_builtins.o \
 +    $(obj)/ffi.o \
      $(obj)/bindings/bindings_generated.rs \
      $(obj)/bindings/bindings_helpers_generated.rs FORCE
        +$(call if_changed_rule,rustc_library)
  
 +$(obj)/uapi.o: private rustc_target_flags = --extern ffi
  $(obj)/uapi.o: $(src)/uapi/lib.rs \
 -    $(obj)/compiler_builtins.o \
 +    $(obj)/ffi.o \
      $(obj)/uapi/uapi_generated.rs FORCE
        +$(call if_changed_rule,rustc_library)
  
 -$(obj)/kernel.o: private rustc_target_flags = --extern alloc \
 +$(obj)/kernel.o: private rustc_target_flags = --extern ffi \
      --extern build_error --extern macros --extern bindings --extern uapi
 -$(obj)/kernel.o: $(src)/kernel/lib.rs $(obj)/alloc.o $(obj)/build_error.o \
 +$(obj)/kernel.o: $(src)/kernel/lib.rs $(obj)/build_error.o \
      $(obj)/libmacros.so $(obj)/bindings.o $(obj)/uapi.o FORCE
        +$(call if_changed_rule,rustc_library)
  
 +ifdef CONFIG_JUMP_LABEL
 +$(obj)/kernel.o: $(obj)/kernel/generated_arch_static_branch_asm.rs
 +endif
 +
  endif # CONFIG_RUST
diff --combined scripts/Makefile.build
index f483a54380e71b460c1d54f2c2380e89de491f71,f41ce213197939de2ce874293cc8b2476ed95b88..c16e4cf54d770fd2cf585a65dc4ad9b6a6bd6e42
@@@ -3,7 -3,7 +3,7 @@@
  # Building
  # ==========================================================================
  
- src := $(if $(VPATH),$(VPATH)/)$(obj)
+ src := $(srcroot)/$(obj)
  
  PHONY := $(obj)/
  $(obj)/:
@@@ -34,7 -34,7 +34,7 @@@ subdir-asflags-y :
  subdir-ccflags-y :=
  
  # Read auto.conf if it exists, otherwise ignore
- -include include/config/auto.conf
+ -include $(objtree)/include/config/auto.conf
  
  include $(srctree)/scripts/Kbuild.include
  include $(srctree)/scripts/Makefile.compiler
@@@ -107,20 -107,14 +107,14 @@@ cmd_cpp_i_c       = $(CPP) $(c_flags) -
  $(obj)/%.i: $(obj)/%.c FORCE
        $(call if_changed_dep,cpp_i_c)
  
- genksyms = scripts/genksyms/genksyms          \
-       $(if $(1), -T $(2))                     \
-       $(if $(KBUILD_PRESERVE), -p)            \
-       -r $(or $(wildcard $(2:.symtypes=.symref)), /dev/null)
+ genksyms = $(objtree)/scripts/genksyms/genksyms               \
+       $(if $(KBUILD_SYMTYPES), -T $(@:.o=.symtypes))  \
+       $(if $(KBUILD_PRESERVE), -p)                    \
+       $(addprefix -r , $(wildcard $(@:.o=.symref)))
  
  # These mirror gensymtypes_S and co below, keep them in synch.
  cmd_gensymtypes_c = $(CPP) -D__GENKSYMS__ $(c_flags) $< | $(genksyms)
  
- quiet_cmd_cc_symtypes_c = SYM $(quiet_modtag) $@
-       cmd_cc_symtypes_c = $(call cmd_gensymtypes_c,true,$@) >/dev/null
- $(obj)/%.symtypes : $(obj)/%.c FORCE
-       $(call cmd,cc_symtypes_c)
  # LLVM assembly
  # Generate .ll files from .c
  quiet_cmd_cc_ll_c = CC $(quiet_modtag)  $@
@@@ -135,17 -129,6 +129,6 @@@ $(obj)/%.ll: $(obj)/%.c FORC
  
  is-single-obj-m = $(and $(part-of-module),$(filter $@, $(obj-m)),y)
  
- # When a module consists of a single object, there is no reason to keep LLVM IR.
- # Make $(LD) covert LLVM IR to ELF here.
- ifdef CONFIG_LTO_CLANG
- cmd_ld_single_m = $(if $(is-single-obj-m), ; $(LD) $(ld_flags) -r -o $(tmp-target) $@; mv $(tmp-target) $@)
- endif
- quiet_cmd_cc_o_c = CC $(quiet_modtag)  $@
-       cmd_cc_o_c = $(CC) $(c_flags) -c -o $@ $< \
-               $(cmd_ld_single_m) \
-               $(cmd_objtool)
  ifdef CONFIG_MODVERSIONS
  # When module versioning is enabled the following steps are executed:
  # o compile a <file>.o from <file>.c
  
  gen_symversions =                                                             \
        if $(NM) $@ 2>/dev/null | grep -q ' __export_symbol_'; then             \
-               $(call cmd_gensymtypes_$(1),$(KBUILD_SYMTYPES),$(@:.o=.symtypes)) \
-                       >> $(dot-target).cmd;                                   \
+               $(cmd_gensymtypes_$1) >> $(dot-target).cmd;                     \
        fi
  
  cmd_gen_symversions_c =       $(call gen_symversions,c)
@@@ -207,23 -189,6 +189,6 @@@ ifneq ($(findstring 1, $(KBUILD_EXTRA_W
  cmd_warn_shared_object = $(if $(word 2, $(modname-multi)),$(warning $(kbuild-file): $*.o is added to multiple modules: $(modname-multi)))
  endif
  
- define rule_cc_o_c
-       $(call cmd_and_fixdep,cc_o_c)
-       $(call cmd,checksrc)
-       $(call cmd,checkdoc)
-       $(call cmd,gen_objtooldep)
-       $(call cmd,gen_symversions_c)
-       $(call cmd,record_mcount)
-       $(call cmd,warn_shared_object)
- endef
- define rule_as_o_S
-       $(call cmd_and_fixdep,as_o_S)
-       $(call cmd,gen_objtooldep)
-       $(call cmd,gen_symversions_S)
-       $(call cmd,warn_shared_object)
- endef
  # Built-in and composite module parts
  $(obj)/%.o: $(obj)/%.c $(recordmcount_source) FORCE
        $(call if_changed_rule,cc_o_c)
@@@ -248,18 -213,17 +213,18 @@@ $(obj)/%.lst: $(obj)/%.c FORC
  # Compile Rust sources (.rs)
  # ---------------------------------------------------------------------------
  
 -rust_allowed_features := new_uninit
 +rust_allowed_features := asm_const,asm_goto,arbitrary_self_types,lint_reasons
  
  # `--out-dir` is required to avoid temporaries being created by `rustc` in the
  # current working directory, which may be not accessible in the out-of-tree
  # modules case.
  rust_common_cmd = \
 +      OBJTREE=$(abspath $(objtree)) \
        RUST_MODFILE=$(modfile) $(RUSTC_OR_CLIPPY) $(rust_flags) \
        -Zallow-features=$(rust_allowed_features) \
        -Zcrate-attr=no_std \
        -Zcrate-attr='feature($(rust_allowed_features))' \
 -      -Zunstable-options --extern force:alloc --extern kernel \
 +      -Zunstable-options --extern kernel \
        --crate-type rlib -L $(objtree)/rust/ \
        --crate-name $(basename $(notdir $@)) \
        --sysroot=/dev/null \
@@@ -304,12 -268,6 +269,12 @@@ quiet_cmd_rustc_ll_rs = $(RUSTC_OR_CLIP
  $(obj)/%.ll: $(obj)/%.rs FORCE
        +$(call if_changed_dep,rustc_ll_rs)
  
 +quiet_cmd_rustc_rs_rs_S = RSCPP $(quiet_modtag) $@
 +      cmd_rustc_rs_rs_S = $(CPP) $(c_flags) -xc -C -P $< | sed '1,/^\/\/ Cut here.$$/d' >$@
 +
 +$(obj)/%.rs: $(obj)/%.rs.S FORCE
 +      +$(call if_changed_dep,rustc_rs_rs_S)
 +
  # Compile assembler sources (.S)
  # ---------------------------------------------------------------------------
  
@@@ -330,22 -288,12 +295,12 @@@ cmd_gensymtypes_S 
       $(NM) $@ | sed -n 's/.* __export_symbol_\(.*\)/EXPORT_SYMBOL(\1);/p' ; } | \
      $(CPP) -D__GENKSYMS__ $(c_flags) -xc - | $(genksyms)
  
- quiet_cmd_cc_symtypes_S = SYM $(quiet_modtag) $@
-       cmd_cc_symtypes_S = $(call cmd_gensymtypes_S,true,$@) >/dev/null
- $(obj)/%.symtypes : $(obj)/%.S FORCE
-       $(call cmd,cc_symtypes_S)
  quiet_cmd_cpp_s_S = CPP $(quiet_modtag) $@
  cmd_cpp_s_S       = $(CPP) $(a_flags) -o $@ $<
  
  $(obj)/%.s: $(obj)/%.S FORCE
        $(call if_changed_dep,cpp_s_S)
  
- quiet_cmd_as_o_S = AS $(quiet_modtag)  $@
-       cmd_as_o_S = $(CC) $(a_flags) -c -o $@ $< $(cmd_objtool)
  ifdef CONFIG_ASM_MODVERSIONS
  
  # versioning matches the C process described above, with difference that
diff --combined scripts/Makefile.vmlinux
index dddad554e91274be801c80f57f6b0b4ff16664ea,2ecd350e9c43b3f13a80d79b0731e01ac5393bfd..873caaa553134e09d034e0c4e0ac7f07c9e3f31b
@@@ -5,30 -5,59 +5,66 @@@ __default: vmlinu
  
  include include/config/auto.conf
  include $(srctree)/scripts/Kbuild.include
- # for c_flags
  include $(srctree)/scripts/Makefile.lib
  
  targets :=
  
- quiet_cmd_cc_o_c = CC      $@
-       cmd_cc_o_c = $(CC) $(c_flags) -c -o $@ $<
  %.o: %.c FORCE
-       $(call if_changed_dep,cc_o_c)
+       $(call if_changed_rule,cc_o_c)
+ %.o: %.S FORCE
+       $(call if_changed_rule,as_o_S)
+ # Built-in dtb
+ # ---------------------------------------------------------------------------
+ quiet_cmd_wrap_dtbs = WRAP    $@
+       cmd_wrap_dtbs = {                                                       \
+       echo '\#include <asm-generic/vmlinux.lds.h>';                   \
+       echo '.section .dtb.init.rodata,"a"';                           \
+       while read dtb; do                                              \
+               symbase=__dtb_$$(basename -s .dtb "$${dtb}" | tr - _);  \
+               echo '.balign STRUCT_ALIGNMENT';                        \
+               echo ".global $${symbase}_begin";                       \
+               echo "$${symbase}_begin:";                              \
+               echo '.incbin "'$$dtb'" ';                              \
+               echo ".global $${symbase}_end";                         \
+               echo "$${symbase}_end:";                                \
+       done < $<;                                                      \
+       } > $@
+ .builtin-dtbs.S: .builtin-dtbs-list FORCE
+       $(call if_changed,wrap_dtbs)
+ quiet_cmd_gen_dtbs_list = GEN     $@
+       cmd_gen_dtbs_list = \
+       $(if $(CONFIG_BUILTIN_DTB_NAME), echo "arch/$(SRCARCH)/boot/dts/$(CONFIG_BUILTIN_DTB_NAME).dtb",:) > $@
+ .builtin-dtbs-list: arch/$(SRCARCH)/boot/dts/dtbs-list FORCE
+       $(call if_changed,$(if $(CONFIG_BUILTIN_DTB_ALL),copy,gen_dtbs_list))
+ targets += .builtin-dtbs-list
+ ifdef CONFIG_GENERIC_BUILTIN_DTB
+ targets += .builtin-dtbs.S .builtin-dtbs.o
+ vmlinux: .builtin-dtbs.o
+ endif
+ # vmlinux
+ # ---------------------------------------------------------------------------
  
  ifdef CONFIG_MODULES
  targets += .vmlinux.export.o
  vmlinux: .vmlinux.export.o
  endif
  
 +ifdef CONFIG_ARCH_WANTS_PRE_LINK_VMLINUX
 +vmlinux: arch/$(SRCARCH)/tools/vmlinux.arch.o
 +
 +arch/$(SRCARCH)/tools/vmlinux.arch.o: vmlinux.o FORCE
 +      $(Q)$(MAKE) $(build)=arch/$(SRCARCH)/tools $@
 +endif
 +
  ARCH_POSTLINK := $(wildcard $(srctree)/arch/$(SRCARCH)/Makefile.postlink)
  
  # Final link of vmlinux with optional arch pass after final link
@@@ -39,6 -68,9 +75,9 @@@ cmd_link_vmlinux =                                                    
  targets += vmlinux
  vmlinux: scripts/link-vmlinux.sh vmlinux.o $(KBUILD_LDS) FORCE
        +$(call if_changed_dep,link_vmlinux)
+ ifdef CONFIG_DEBUG_INFO_BTF
+ vmlinux: $(RESOLVE_BTFIDS)
+ endif
  
  # module.builtin.ranges
  # ---------------------------------------------------------------------------
diff --combined scripts/link-vmlinux.sh
index a3c634b2f348f9c976cff9693caf290db7f31666,139aa4d1215ad769311085e2a070df609a9f3c95..d853ddb3b28c1238ec9079ebbbe77df26980a0a1
@@@ -68,6 -68,10 +68,10 @@@ vmlinux_link(
                libs="${KBUILD_VMLINUX_LIBS}"
        fi
  
+       if is_enabled CONFIG_GENERIC_BUILTIN_DTB; then
+               objs="${objs} .builtin-dtbs.o"
+       fi
        if is_enabled CONFIG_MODULES; then
                objs="${objs} .vmlinux.export.o"
        fi
        ${ld} ${ldflags} -o ${output}                                   \
                ${wl}--whole-archive ${objs} ${wl}--no-whole-archive    \
                ${wl}--start-group ${libs} ${wl}--end-group             \
 -              ${kallsymso} ${btf_vmlinux_bin_o} ${ldlibs}
 +              ${kallsymso} ${btf_vmlinux_bin_o} ${arch_vmlinux_o} ${ldlibs}
  }
  
  # generate .BTF typeinfo from DWARF debuginfo
  
  ${MAKE} -f "${srctree}/scripts/Makefile.build" obj=init init/version-timestamp.o
  
 +arch_vmlinux_o=
 +if is_enabled CONFIG_ARCH_WANTS_PRE_LINK_VMLINUX; then
 +      arch_vmlinux_o=arch/${SRCARCH}/tools/vmlinux.arch.o
 +fi
 +
  btf_vmlinux_bin_o=
  kallsymso=
  strip_debug=
  
  if is_enabled CONFIG_KALLSYMS; then
-       true > .tmp_vmlinux.kallsyms0.syms
-       kallsyms .tmp_vmlinux.kallsyms0.syms .tmp_vmlinux0.kallsyms
+       true > .tmp_vmlinux0.syms
+       kallsyms .tmp_vmlinux0.syms .tmp_vmlinux0.kallsyms
  fi
  
  if is_enabled CONFIG_KALLSYMS || is_enabled CONFIG_DEBUG_INFO_BTF; then
@@@ -236,14 -235,14 +240,14 @@@ if is_enabled CONFIG_KALLSYMS; the
        # Generate section listing all symbols and add it into vmlinux
        # It's a four step process:
        # 0)  Generate a dummy __kallsyms with empty symbol list.
-       # 1)  Link .tmp_vmlinux.kallsyms1 so it has all symbols and sections,
+       # 1)  Link .tmp_vmlinux1.kallsyms so it has all symbols and sections,
        #     with a dummy __kallsyms.
-       #     Running kallsyms on that gives us .tmp_kallsyms1.o with
+       #     Running kallsyms on that gives us .tmp_vmlinux1.kallsyms.o with
        #     the right size
-       # 2)  Link .tmp_vmlinux.kallsyms2 so it now has a __kallsyms section of
+       # 2)  Link .tmp_vmlinux2.kallsyms so it now has a __kallsyms section of
        #     the right size, but due to the added section, some
        #     addresses have shifted.
-       #     From here, we generate a correct .tmp_vmlinux.kallsyms2.o
+       #     From here, we generate a correct .tmp_vmlinux2.kallsyms.o
        # 3)  That link may have expanded the kernel image enough that
        #     more linker branch stubs / trampolines had to be added, which
        #     introduces new names, which further expands kallsyms. Do another
diff --combined tools/objtool/check.c
index f7586f82b967ad6db1f607a594f72e459ee915aa,05a0fb4a3d1a010a854772d246378c7cb63f7ef4..4ce176ad411fb12a10101bbedbb6180275941b4b
@@@ -4392,51 -4392,6 +4392,51 @@@ static bool noendbr_range(struct objtoo
        return insn->offset == sym->offset + sym->len;
  }
  
 +static int __validate_ibt_insn(struct objtool_file *file, struct instruction *insn,
 +                             struct instruction *dest)
 +{
 +      if (dest->type == INSN_ENDBR) {
 +              mark_endbr_used(dest);
 +              return 0;
 +      }
 +
 +      if (insn_func(dest) && insn_func(insn) &&
 +          insn_func(dest)->pfunc == insn_func(insn)->pfunc) {
 +              /*
 +               * Anything from->to self is either _THIS_IP_ or
 +               * IRET-to-self.
 +               *
 +               * There is no sane way to annotate _THIS_IP_ since the
 +               * compiler treats the relocation as a constant and is
 +               * happy to fold in offsets, skewing any annotation we
 +               * do, leading to vast amounts of false-positives.
 +               *
 +               * There's also compiler generated _THIS_IP_ through
 +               * KCOV and such which we have no hope of annotating.
 +               *
 +               * As such, blanket accept self-references without
 +               * issue.
 +               */
 +              return 0;
 +      }
 +
 +      /*
 +       * Accept anything ANNOTATE_NOENDBR.
 +       */
 +      if (dest->noendbr)
 +              return 0;
 +
 +      /*
 +       * Accept if this is the instruction after a symbol
 +       * that is (no)endbr -- typical code-range usage.
 +       */
 +      if (noendbr_range(file, dest))
 +              return 0;
 +
 +      WARN_INSN(insn, "relocation to !ENDBR: %s", offstr(dest->sec, dest->offset));
 +      return 1;
 +}
 +
  static int validate_ibt_insn(struct objtool_file *file, struct instruction *insn)
  {
        struct instruction *dest;
         * direct/indirect branches:
         */
        switch (insn->type) {
 +
        case INSN_CALL:
        case INSN_CALL_DYNAMIC:
        case INSN_JUMP_CONDITIONAL:
        case INSN_RETURN:
        case INSN_NOP:
                return 0;
 +
 +      case INSN_LEA_RIP:
 +              if (!insn_reloc(file, insn)) {
 +                      /* local function pointer reference without reloc */
 +
 +                      off = arch_jump_destination(insn);
 +
 +                      dest = find_insn(file, insn->sec, off);
 +                      if (!dest) {
 +                              WARN_INSN(insn, "corrupt function pointer reference");
 +                              return 1;
 +                      }
 +
 +                      return __validate_ibt_insn(file, insn, dest);
 +              }
 +              break;
 +
        default:
                break;
        }
                                              reloc_offset(reloc) + 1,
                                              (insn->offset + insn->len) - (reloc_offset(reloc) + 1))) {
  
 -              /*
 -               * static_call_update() references the trampoline, which
 -               * doesn't have (or need) ENDBR.  Skip warning in that case.
 -               */
 -              if (reloc->sym->static_call_tramp)
 -                      continue;
 -
                off = reloc->sym->offset;
                if (reloc_type(reloc) == R_X86_64_PC32 ||
                    reloc_type(reloc) == R_X86_64_PLT32)
                if (!dest)
                        continue;
  
 -              if (dest->type == INSN_ENDBR) {
 -                      mark_endbr_used(dest);
 -                      continue;
 -              }
 -
 -              if (insn_func(dest) && insn_func(insn) &&
 -                  insn_func(dest)->pfunc == insn_func(insn)->pfunc) {
 -                      /*
 -                       * Anything from->to self is either _THIS_IP_ or
 -                       * IRET-to-self.
 -                       *
 -                       * There is no sane way to annotate _THIS_IP_ since the
 -                       * compiler treats the relocation as a constant and is
 -                       * happy to fold in offsets, skewing any annotation we
 -                       * do, leading to vast amounts of false-positives.
 -                       *
 -                       * There's also compiler generated _THIS_IP_ through
 -                       * KCOV and such which we have no hope of annotating.
 -                       *
 -                       * As such, blanket accept self-references without
 -                       * issue.
 -                       */
 -                      continue;
 -              }
 -
 -              /*
 -               * Accept anything ANNOTATE_NOENDBR.
 -               */
 -              if (dest->noendbr)
 -                      continue;
 -
 -              /*
 -               * Accept if this is the instruction after a symbol
 -               * that is (no)endbr -- typical code-range usage.
 -               */
 -              if (noendbr_range(file, dest))
 -                      continue;
 -
 -              WARN_INSN(insn, "relocation to !ENDBR: %s", offstr(dest->sec, dest->offset));
 -
 -              warnings++;
 +              warnings += __validate_ibt_insn(file, insn, dest);
        }
  
        return warnings;
@@@ -4573,7 -4557,8 +4573,9 @@@ static int validate_ibt(struct objtool_
                    !strcmp(sec->name, "__jump_table")                  ||
                    !strcmp(sec->name, "__mcount_loc")                  ||
                    !strcmp(sec->name, ".kcfi_traps")                   ||
+                   !strcmp(sec->name, ".llvm.call-graph-profile")      ||
+                   !strcmp(sec->name, ".llvm_bb_addr_map")             ||
 +                  !strcmp(sec->name, "__tracepoints")                 ||
                    strstr(sec->name, "__patchable_function_entries"))
                        continue;
  
This page took 0.356591 seconds and 4 git commands to generate.