]> Git Repo - linux.git/commitdiff
Merge tag 'kbuild-v5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy...
authorLinus Torvalds <[email protected]>
Wed, 10 Aug 2022 17:40:41 +0000 (10:40 -0700)
committerLinus Torvalds <[email protected]>
Wed, 10 Aug 2022 17:40:41 +0000 (10:40 -0700)
Pull Kbuild updates from Masahiro Yamada:

 - Remove the support for -O3 (CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3)

 - Fix error of rpm-pkg cross-builds

 - Support riscv for checkstack tool

 - Re-enable -Wformwat warnings for Clang

 - Clean up modpost, Makefiles, and misc scripts

* tag 'kbuild-v5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (30 commits)
  modpost: remove .symbol_white_list field entirely
  modpost: remove unneeded .symbol_white_list initializers
  modpost: add PATTERNS() helper macro
  modpost: shorten warning messages in report_sec_mismatch()
  Revert "Kbuild, lto, workaround: Don't warn for initcall_reference in modpost"
  modpost: use more reliable way to get fromsec in section_rel(a)()
  modpost: add array range check to sec_name()
  modpost: refactor get_secindex()
  kbuild: set EXIT trap before creating temporary directory
  modpost: remove unused Elf_Sword macro
  Makefile.extrawarn: re-enable -Wformat for clang
  kbuild: add dtbs_prepare target
  kconfig: Qt5: tell the user which packages are required
  modpost: use sym_get_data() to get module device_table data
  modpost: drop executable ELF support
  checkstack: add riscv support for scripts/checkstack.pl
  kconfig: shorten the temporary directory name for cc-option
  scripts: headers_install.sh: Update config leak ignore entries
  kbuild: error out if $(INSTALL_MOD_PATH) contains % or :
  kbuild: error out if $(KBUILD_EXTMOD) contains % or :
  ...

1  2 
MAINTAINERS
Makefile
init/Kconfig
scripts/mod/modpost.c

diff --combined MAINTAINERS
index b7221f4143cbaf169a08eab8abe76e0d6011d99c,cd569d35d55c1677cf39b3d9650ece3faa5c64ab..31a856edbf44d8350e50ad52e84006533709516e
@@@ -171,6 -171,7 +171,6 @@@ F: drivers/scsi/53c700
  
  6LOWPAN GENERIC (BTLE/IEEE 802.15.4)
  M:    Alexander Aring <[email protected]>
 -M:    Jukka Rissanen <[email protected]>
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
@@@ -241,11 -242,6 +241,11 @@@ F:       include/trace/events/9p.
  F:    include/uapi/linux/virtio_9p.h
  F:    net/9p/
  
 +A64FX DIAG DRIVER
 +M:    Hitomi Hasegawa <[email protected]>
 +S:    Supported
 +F:    drivers/soc/fujitsu/a64fx-diag.c
 +
  A8293 MEDIA DRIVER
  M:    Antti Palosaari <[email protected]>
  L:    [email protected]
@@@ -284,37 -280,38 +284,37 @@@ S:      Maintaine
  F:    drivers/hwmon/abituguru3.c
  
  ACCES 104-DIO-48E GPIO DRIVER
 -M:    William Breathitt Gray <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/gpio/gpio-104-dio-48e.c
  
  ACCES 104-IDI-48 GPIO DRIVER
 -M:    "William Breathitt Gray" <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/gpio/gpio-104-idi-48.c
  
  ACCES 104-IDIO-16 GPIO DRIVER
 -M:    "William Breathitt Gray" <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/gpio/gpio-104-idio-16.c
  
  ACCES 104-QUAD-8 DRIVER
 -M:    William Breathitt Gray <[email protected]>
 -M:    Syed Nayyar Waris <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/counter/104-quad-8.c
  
  ACCES PCI-IDIO-16 GPIO DRIVER
 -M:    William Breathitt Gray <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/gpio/gpio-pci-idio-16.c
  
  ACCES PCIe-IDIO-24 GPIO DRIVER
 -M:    William Breathitt Gray <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/gpio/gpio-pcie-idio-24.c
@@@ -736,14 -733,6 +736,14 @@@ S:       Maintaine
  F:    Documentation/i2c/busses/i2c-ali1563.rst
  F:    drivers/i2c/busses/i2c-ali1563.c
  
 +ALIBABA ELASTIC RDMA DRIVER
 +M:    Cheng Xu <[email protected]>
 +M:    Kai Shen <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/infiniband/hw/erdma
 +F:    include/uapi/rdma/erdma-abi.h
 +
  ALIENWARE WMI DRIVER
  L:    [email protected]
  S:    Maintained
@@@ -773,14 -762,6 +773,14 @@@ T:       git git://linuxtv.org/media_tree.gi
  F:    Documentation/devicetree/bindings/media/allwinner,sun4i-a10-csi.yaml
  F:    drivers/media/platform/sunxi/sun4i-csi/
  
 +ALLWINNER A31 MIPI CSI-2 BRIDGE DRIVER
 +M:    Paul Kocialkowski <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +T:    git git://linuxtv.org/media_tree.git
 +F:    Documentation/devicetree/bindings/media/allwinner,sun6i-a31-mipi-csi2.yaml
 +F:    drivers/media/platform/sunxi/sun6i-mipi-csi2/
 +
  ALLWINNER CPUFREQ DRIVER
  M:    Yangtao Li <[email protected]>
  L:    [email protected]
@@@ -816,7 -797,7 +816,7 @@@ S: Maintaine
  F:    drivers/staging/media/sunxi/cedrus/
  
  ALPHA PORT
 -M:    Richard Henderson <r[email protected]>
 +M:    Richard Henderson <r[email protected]>
  M:    Ivan Kokshaysky <[email protected]>
  M:    Matt Turner <[email protected]>
  L:    [email protected]
@@@ -1015,7 -996,7 +1015,7 @@@ AMD PMC DRIVE
  M:    Shyam Sundar S K <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    drivers/platform/x86/amd-pmc.*
 +F:    drivers/platform/x86/amd/pmc.c
  
  AMD HSMP DRIVER
  M:    Naveen Krishna Chatradhi <[email protected]>
@@@ -1025,7 -1006,7 +1025,7 @@@ S:      Maintaine
  F:    Documentation/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.c
  
  AMD POWERPLAY AND SWSMU
  M:    Evan Quan <[email protected]>
@@@ -1057,7 -1038,6 +1057,7 @@@ F:      arch/arm64/boot/dts/amd
  
  AMD XGBE DRIVER
  M:    Tom Lendacky <[email protected]>
 +M:    "Shyam Sundar S K" <[email protected]>
  L:    [email protected]
  S:    Supported
  F:    arch/arm64/boot/dts/amd/amd-seattle-xgbe*.dtsi
@@@ -1347,7 -1327,7 +1347,7 @@@ M:      Todd Kjos <[email protected]
  M:    Martijn Coenen <[email protected]>
  M:    Joel Fernandes <[email protected]>
  M:    Christian Brauner <[email protected]>
 -M:    Hridya Valsaraju <hridya@google.com>
 +M:    Carlos Llamas <cmllamas@google.com>
  M:    Suren Baghdasaryan <[email protected]>
  L:    [email protected]
  S:    Supported
@@@ -1374,7 -1354,7 +1374,7 @@@ S:      Maintaine
  F:    sound/aoa/
  
  APEX EMBEDDED SYSTEMS STX104 IIO DRIVER
 -M:    William Breathitt Gray <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/iio/adc/stx104.c
@@@ -1488,13 -1468,6 +1488,13 @@@ S:    Supporte
  W:    http://www.aquantia.com
  F:    drivers/net/ethernet/aquantia/atlantic/aq_ptp*
  
 +AR0521 ON SEMICONDUCTOR CAMERA SENSOR DRIVER
 +M:    Krzysztof Hałasa <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/media/i2c/onnn,ar0521.yaml
 +F:    drivers/media/i2c/ar0521.c
 +
  ARASAN NAND CONTROLLER DRIVER
  M:    Miquel Raynal <[email protected]>
  M:    Naga Sureshkumar Relli <[email protected]>
@@@ -1547,7 -1520,7 +1547,7 @@@ F:      Documentation/devicetree/bindings/ar
  F:    Documentation/devicetree/bindings/arm/arm,vexpress-juno.yaml
  F:    Documentation/devicetree/bindings/auxdisplay/arm,versatile-lcd.yaml
  F:    Documentation/devicetree/bindings/clock/arm,syscon-icst.yaml
 -F:    Documentation/devicetree/bindings/i2c/i2c-versatile.txt
 +F:    Documentation/devicetree/bindings/i2c/arm,i2c-versatile.yaml
  F:    Documentation/devicetree/bindings/interrupt-controller/arm,versatile-fpga-irq.txt
  F:    Documentation/devicetree/bindings/mtd/mtd-physmap.yaml
  F:    arch/arm/boot/dts/arm-realview-*
@@@ -1850,7 -1823,6 +1850,7 @@@ ARM/APPLE MACHINE SUPPOR
  M:    Hector Martin <[email protected]>
  M:    Sven Peter <[email protected]>
  R:    Alyssa Rosenzweig <[email protected]>
 +L:    [email protected]
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  W:    https://asahilinux.org
@@@ -1860,7 -1832,6 +1860,7 @@@ T:      git https://github.com/AsahiLinux/li
  F:    Documentation/devicetree/bindings/arm/apple.yaml
  F:    Documentation/devicetree/bindings/arm/apple/*
  F:    Documentation/devicetree/bindings/clock/apple,nco.yaml
 +F:    Documentation/devicetree/bindings/dma/apple,admac.yaml
  F:    Documentation/devicetree/bindings/i2c/apple,i2c.yaml
  F:    Documentation/devicetree/bindings/interrupt-controller/apple,*
  F:    Documentation/devicetree/bindings/iommu/apple,dart.yaml
@@@ -1874,7 -1845,6 +1874,7 @@@ F:      Documentation/devicetree/bindings/po
  F:    Documentation/devicetree/bindings/watchdog/apple,wdt.yaml
  F:    arch/arm64/boot/dts/apple/
  F:    drivers/clk/clk-apple-nco.c
 +F:    drivers/dma/apple-admac.c
  F:    drivers/i2c/busses/i2c-pasemi-core.c
  F:    drivers/i2c/busses/i2c-pasemi-platform.c
  F:    drivers/iommu/apple-dart.c
@@@ -1923,7 -1893,6 +1923,7 @@@ L:      [email protected] (moder
  S:    Supported
  Q:    https://patchwork.ozlabs.org/project/linux-aspeed/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/joel/aspeed.git
 +F:    Documentation/devicetree/bindings/arm/aspeed/
  F:    arch/arm/boot/dts/aspeed-*
  F:    arch/arm/mach-aspeed/
  N:    aspeed
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/coresight/linux.git
  F:    Documentation/ABI/testing/sysfs-bus-coresight-devices-*
 -F:    Documentation/devicetree/bindings/arm/coresight-cpu-debug.txt
 -F:    Documentation/devicetree/bindings/arm/coresight-cti.yaml
 -F:    Documentation/devicetree/bindings/arm/coresight.txt
 -F:    Documentation/devicetree/bindings/arm/ete.yaml
 -F:    Documentation/devicetree/bindings/arm/trbe.yaml
 +F:    Documentation/devicetree/bindings/arm/arm,coresight-*.yaml
 +F:    Documentation/devicetree/bindings/arm/arm,embedded-trace-extension.yaml
 +F:    Documentation/devicetree/bindings/arm/arm,trace-buffer-extension.yaml
  F:    Documentation/trace/coresight/*
  F:    drivers/hwtracing/coresight/*
  F:    include/dt-bindings/arm/coresight-cti-dt.h
@@@ -2169,13 -2140,11 +2169,13 @@@ M:   Jean-Marie Verdun <[email protected]
  M:    Nick Hawkins <[email protected]>
  S:    Maintained
  F:    Documentation/devicetree/bindings/arm/hpe,gxp.yaml
 +F:    Documentation/devicetree/bindings/spi/hpe,gxp-spi.yaml
  F:    Documentation/devicetree/bindings/timer/hpe,gxp-timer.yaml
  F:    arch/arm/boot/dts/hpe-bmc*
  F:    arch/arm/boot/dts/hpe-gxp*
  F:    arch/arm/mach-hpe/
  F:    drivers/clocksource/timer-gxp.c
 +F:    drivers/spi/spi-gxp.c
  F:    drivers/watchdog/gxp-wdt.c
  
  ARM/IGEP MACHINE SUPPORT
@@@ -2447,7 -2416,7 +2447,7 @@@ T:      git git://git.kernel.org/pub/scm/lin
  F:    Documentation/devicetree/bindings/arm/ste-*
  F:    Documentation/devicetree/bindings/arm/ux500.yaml
  F:    Documentation/devicetree/bindings/arm/ux500/
 -F:    Documentation/devicetree/bindings/i2c/i2c-nomadik.txt
 +F:    Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml
  F:    arch/arm/boot/dts/ste-*
  F:    arch/arm/mach-nomadik/
  F:    arch/arm/mach-ux500/
@@@ -2479,11 -2448,9 +2479,11 @@@ F:    Documentation/devicetree/bindings/*/
  F:    Documentation/devicetree/bindings/arm/npcm/*
  F:    arch/arm/boot/dts/nuvoton-npcm*
  F:    arch/arm/mach-npcm/
 +F:    arch/arm64/boot/dts/nuvoton/
  F:    drivers/*/*npcm*
  F:    drivers/*/*/*npcm*
  F:    include/dt-bindings/clock/nuvoton,npcm7xx-clock.h
 +F:    include/dt-bindings/clock/nuvoton,npcm845-clk.h
  
  ARM/NUVOTON WPCM450 ARCHITECTURE
  M:    Jonathan Neuschäfer <[email protected]>
@@@ -2530,8 -2497,10 +2530,8 @@@ F:     drivers/power/reset/oxnas-restart.
  N:    oxnas
  
  ARM/PALM TREO SUPPORT
 -M:    Tomas Cech <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
 -S:    Maintained
 -W:    http://hackndev.com
 +S:    Orphan
  F:    arch/arm/mach-pxa/palmtreo.*
  
  ARM/PALMTX,PALMT5,PALMLD,PALMTE2,PALMTC SUPPORT
@@@ -2620,7 -2589,7 +2620,7 @@@ L:      [email protected] (mo
  S:    Maintained
  F:    Documentation/devicetree/bindings/arm/rda.yaml
  F:    Documentation/devicetree/bindings/gpio/gpio-rda.yaml
 -F:    Documentation/devicetree/bindings/interrupt-controller/rda,8810pl-intc.txt
 +F:    Documentation/devicetree/bindings/interrupt-controller/rda,8810pl-intc.yaml
  F:    Documentation/devicetree/bindings/serial/rda,8810pl-uart.yaml
  F:    Documentation/devicetree/bindings/timer/rda,8810pl-timer.yaml
  F:    arch/arm/boot/dts/rda8810pl-*
@@@ -2648,8 -2617,6 +2648,8 @@@ 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/arm/renesas.yaml
 +F:    Documentation/devicetree/bindings/hwinfo/renesas,prr.yaml
 +F:    Documentation/devicetree/bindings/soc/renesas/
  F:    arch/arm64/boot/dts/renesas/
  F:    drivers/soc/renesas/
  F:    include/linux/soc/renesas/
@@@ -2700,7 -2667,6 +2700,7 @@@ B:      mailto:[email protected]
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git
  F:    Documentation/arm/samsung/
  F:    Documentation/devicetree/bindings/arm/samsung/
 +F:    Documentation/devicetree/bindings/hwinfo/samsung,*
  F:    Documentation/devicetree/bindings/power/pd-samsung.yaml
  F:    Documentation/devicetree/bindings/soc/samsung/
  F:    arch/arm/boot/dts/exynos*
@@@ -2750,7 -2716,6 +2750,7 @@@ M:      Sylwester Nawrocki <s.nawrocki@samsu
  L:    [email protected] (moderated for non-subscribers)
  L:    [email protected]
  S:    Maintained
 +F:    Documentation/devicetree/bindings/media/samsung,s5pv210-jpeg.yaml
  F:    drivers/media/platform/samsung/s5p-jpeg/
  
  ARM/SAMSUNG S5P SERIES Multi Format Codec (MFC) SUPPORT
@@@ -2770,7 -2735,6 +2770,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/arm/renesas.yaml
 +F:    Documentation/devicetree/bindings/soc/renesas/
  F:    arch/arm/boot/dts/emev2*
  F:    arch/arm/boot/dts/gr-peach*
  F:    arch/arm/boot/dts/iwg20d-q7*
@@@ -2860,23 -2824,6 +2860,23 @@@ F:    drivers/clocksource/armv7m_systick.
  N:    stm32
  N:    stm
  
 +ARM/SUNPLUS SP7021 SOC SUPPORT
 +M:    Qin Jian <[email protected]>
 +L:    [email protected] (moderated for mon-subscribers)
 +S:    Maintained
 +W:    https://sunplus-tibbo.atlassian.net/wiki/spaces/doc/overview
 +F:    Documentation/devicetree/bindings/arm/sunplus,sp7021.yaml
 +F:    Documentation/devicetree/bindings/clock/sunplus,sp7021-clkc.yaml
 +F:    Documentation/devicetree/bindings/interrupt-controller/sunplus,sp7021-intc.yaml
 +F:    Documentation/devicetree/bindings/reset/sunplus,reset.yaml
 +F:    arch/arm/boot/dts/sunplus-sp7021*.dts*
 +F:    arch/arm/configs/sp7021_*defconfig
 +F:    arch/arm/mach-sunplus/
 +F:    drivers/irqchip/irq-sp7021-intc.c
 +F:    drivers/reset/reset-sunplus.c
 +F:    include/dt-bindings/clock/sunplus,sp7021-clkc.h
 +F:    include/dt-bindings/reset/sunplus,sp7021-reset.h
 +
  ARM/Synaptics SoC support
  M:    Jisheng Zhang <[email protected]>
  M:    Sebastian Hesselbarth <[email protected]>
@@@ -2953,7 -2900,6 +2953,7 @@@ M:      Tero Kristo <[email protected]
  L:    [email protected] (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/devicetree/bindings/arm/ti/k3.yaml
 +F:    Documentation/devicetree/bindings/hwinfo/ti,k3-socinfo.yaml
  F:    arch/arm64/boot/dts/ti/Makefile
  F:    arch/arm64/boot/dts/ti/k3-*
  F:    include/dt-bindings/pinctrl/k3.h
@@@ -3192,13 -3138,6 +3192,13 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/media/aspeed-video.txt
  F:    drivers/media/platform/aspeed/
  
 +ASPEED USB UDC DRIVER
 +M:    Neal Liu <[email protected]>
 +L:    [email protected] (moderated for non-subscribers)
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/usb/aspeed,ast2600-udc.yaml
 +F:    drivers/usb/gadget/udc/aspeed_udc.c
 +
  ASUS NOTEBOOKS AND EEEPC ACPI/WMI EXTRAS DRIVERS
  M:    Corentin Chary <[email protected]>
  L:    [email protected]
@@@ -3501,7 -3440,7 +3501,7 @@@ W:      https://wireless.wiki.kernel.org/en/
  F:    drivers/net/wireless/broadcom/b43legacy/
  
  BACKLIGHT CLASS/SUBSYSTEM
 -M:    Lee Jones <lee.jones@linaro.org>
 +M:    Lee Jones <lee@kernel.org>
  M:    Daniel Thompson <[email protected]>
  M:    Jingoo Han <[email protected]>
  L:    [email protected]
@@@ -3603,6 -3542,7 +3603,6 @@@ F:      lib/bitmap.
  F:    lib/cpumask.c
  F:    lib/find_bit.c
  F:    lib/find_bit_benchmark.c
 -F:    lib/nodemask.c
  F:    lib/test_bitmap.c
  F:    tools/include/linux/bitmap.h
  F:    tools/include/linux/find.h
@@@ -3936,28 -3876,15 +3936,28 @@@ BROADCOM BCMBCA ARM ARCHITECTUR
  M:    William Zhang <[email protected]>
  M:    Anand Gore <[email protected]>
  M:    Kursad Oney <[email protected]>
 +M:    Florian Fainelli <[email protected]>
  R:    Broadcom internal kernel review list <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  T:    git git://github.com/broadcom/stblinux.git
  F:    Documentation/devicetree/bindings/arm/bcm/brcm,bcmbca.yaml
 -F:    arch/arm/boot/dts/bcm47622.dtsi
 -F:    arch/arm/boot/dts/bcm947622.dts
 +F:    arch/arm64/boot/dts/broadcom/bcmbca/*
  N:    bcmbca
  N:    bcm[9]?47622
 +N:    bcm[9]?4912
 +N:    bcm[9]?63138
 +N:    bcm[9]?63146
 +N:    bcm[9]?63148
 +N:    bcm[9]?63158
 +N:    bcm[9]?63178
 +N:    bcm[9]?6756
 +N:    bcm[9]?6813
 +N:    bcm[9]?6846
 +N:    bcm[9]?6855
 +N:    bcm[9]?6856
 +N:    bcm[9]?6858
 +N:    bcm[9]?6878
  
  BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE
  M:    Florian Fainelli <[email protected]>
@@@ -4033,6 -3960,14 +4033,6 @@@ S:     Maintaine
  F:    arch/arm/boot/dts/bcm47189*
  F:    arch/arm/boot/dts/bcm53573*
  
 -BROADCOM BCM63XX ARM ARCHITECTURE
 -M:    Florian Fainelli <[email protected]>
 -R:    Broadcom internal kernel review list <[email protected]>
 -L:    [email protected] (moderated for non-subscribers)
 -S:    Maintained
 -T:    git git://github.com/broadcom/stblinux.git
 -N:    bcm63xx
 -
  BROADCOM BCM63XX/BCM33XX UDC DRIVER
  M:    Kevin Cernekee <[email protected]>
  L:    [email protected]
@@@ -4439,7 -4374,7 +4439,7 @@@ L:      [email protected]
  L:    [email protected]
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/linux.git
 -F:    Documentation/devicetree/bindings/devfreq/exynos-bus.txt
 +F:    Documentation/devicetree/bindings/interconnect/samsung,exynos-bus.yaml
  F:    drivers/devfreq/exynos-bus.c
  
  BUSLOGIC SCSI DRIVER
@@@ -4783,7 -4718,6 +4783,6 @@@ L:      [email protected]
  S:    Maintained
  F:    Documentation/admin-guide/module-signing.rst
  F:    certs/
- F:    scripts/check-blacklist-hashes.awk
  F:    scripts/sign-file.c
  F:    tools/certs/
  
@@@ -4911,7 -4845,6 +4910,7 @@@ S:      Maintaine
  F:    Documentation/devicetree/bindings/sound/cirrus,cs*
  F:    include/dt-bindings/sound/cs*
  F:    sound/pci/hda/cs*
 +F:    sound/pci/hda/hda_cs_dsp_ctl.*
  F:    sound/soc/codecs/cs*
  
  CIRRUS LOGIC DSP FIRMWARE DRIVER
@@@ -5030,7 -4963,7 +5029,7 @@@ R:      Nick Desaulniers <ndesaulniers@googl
  L:    [email protected]
  S:    Supported
  B:    https://github.com/ClangBuiltLinux/linux/issues
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/clang/features
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/hardening
  F:    include/linux/cfi.h
  F:    kernel/cfi.c
  
@@@ -5122,15 -5055,12 +5121,15 @@@ F:   include/linux/clk
  F:    include/linux/of_clk.h
  X:    drivers/clk/clkdev.c
  
 -COMMON INTERNET FILE SYSTEM CLIENT (CIFS)
 +COMMON INTERNET FILE SYSTEM CLIENT (CIFS and SMB3)
  M:    Steve French <[email protected]>
 +R:    Paulo Alcantara <[email protected]> (DFS, global name space)
 +R:    Ronnie Sahlberg <[email protected]> (directory leases, sparse files)
 +R:    Shyam Prasad N <[email protected]> (multichannel)
  L:    [email protected]
  L:    [email protected] (moderated for non-subscribers)
  S:    Supported
 -W:    http://linux-cifs.samba.org/
 +W:    https://wiki.samba.org/index.php/LinuxCIFS
  T:    git git://git.samba.org/sfrench/cifs-2.6.git
  F:    Documentation/admin-guide/cifs/
  F:    fs/cifs/
@@@ -5200,7 -5130,6 +5199,7 @@@ F:      include/linux/console
  
  CONTEXT TRACKING
  M:    Frederic Weisbecker <[email protected]>
 +M:    "Paul E. McKenney" <[email protected]>
  S:    Maintained
  F:    kernel/context_tracking.c
  F:    include/linux/context_tracking*
@@@ -5276,10 -5205,10 +5275,10 @@@ F:   Documentation/hwmon/corsair-psu.rs
  F:    drivers/hwmon/corsair-psu.c
  
  COUNTER SUBSYSTEM
 -M:    William Breathitt Gray <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git [email protected]:vilhelmgray/counter.git
 +T:    git https://git.linaro.org/people/william.gray/counter.git
  F:    Documentation/ABI/testing/sysfs-bus-counter
  F:    Documentation/driver-api/generic-counter.rst
  F:    drivers/counter/
@@@ -5523,7 -5452,7 +5522,7 @@@ W:      http://www.chelsio.co
  F:    drivers/net/ethernet/chelsio/cxgb3/
  
  CXGB3 ISCSI DRIVER (CXGB3I)
 -M:    Karen Xie <kxie@chelsio.com>
 +M:    Varun Prakash <varun@chelsio.com>
  L:    [email protected]
  S:    Supported
  W:    http://www.chelsio.com
@@@ -5555,7 -5484,7 +5554,7 @@@ W:      http://www.chelsio.co
  F:    drivers/net/ethernet/chelsio/cxgb4/
  
  CXGB4 ISCSI DRIVER (CXGB4I)
 -M:    Karen Xie <kxie@chelsio.com>
 +M:    Varun Prakash <varun@chelsio.com>
  L:    [email protected]
  S:    Supported
  W:    http://www.chelsio.com
@@@ -5671,7 -5600,7 +5670,7 @@@ L:      [email protected]
  S:    Maintained
  F:    Documentation/ABI/testing/sysfs-kernel-mm-damon
  F:    Documentation/admin-guide/mm/damon/
 -F:    Documentation/vm/damon/
 +F:    Documentation/mm/damon/
  F:    include/linux/damon.h
  F:    include/trace/events/damon.h
  F:    mm/damon/
@@@ -5926,7 -5855,6 +5925,7 @@@ L:      [email protected]
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/linux.git
  F:    Documentation/devicetree/bindings/devfreq/
 +F:    Documentation/devicetree/bindings/interconnect/mediatek,cci.yaml
  F:    drivers/devfreq/
  F:    include/linux/devfreq.h
  F:    include/trace/events/devfreq.h
@@@ -6001,7 -5929,6 +6000,7 @@@ W:      http://www.dialog-semiconductor.com/
  F:    Documentation/devicetree/bindings/input/da90??-onkey.txt
  F:    Documentation/devicetree/bindings/input/dlg,da72??.txt
  F:    Documentation/devicetree/bindings/mfd/da90*.txt
 +F:    Documentation/devicetree/bindings/mfd/da90*.yaml
  F:    Documentation/devicetree/bindings/regulator/dlg,da9*.yaml
  F:    Documentation/devicetree/bindings/regulator/da92*.txt
  F:    Documentation/devicetree/bindings/regulator/slg51000.txt
@@@ -6040,7 -5967,7 +6039,7 @@@ F:      include/sound/da[79]*.
  F:    sound/soc/codecs/da[79]*.[ch]
  
  DIAMOND SYSTEMS GPIO-MM GPIO DRIVER
 -M:    William Breathitt Gray <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/gpio/gpio-gpio-mm.c
@@@ -6117,7 -6044,6 +6116,7 @@@ T:      git git://git.kernel.org/pub/scm/lin
  F:    Documentation/devicetree/bindings/dma/
  F:    Documentation/driver-api/dmaengine/
  F:    drivers/dma/
 +F:    include/dt-bindings/dma/
  F:    include/linux/dma/
  F:    include/linux/dmaengine.h
  F:    include/linux/of_dma.h
@@@ -6288,6 -6214,14 +6287,6 @@@ F:     Documentation/networking/device_driv
  F:    drivers/net/ethernet/freescale/dpaa2/dpaa2-switch*
  F:    drivers/net/ethernet/freescale/dpaa2/dpsw*
  
 -DPT_I2O SCSI RAID DRIVER
 -M:    Adaptec OEM Raid Solutions <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -W:    http://www.adaptec.com/
 -F:    drivers/scsi/dpt*
 -F:    drivers/scsi/dpt/
 -
  DRBD DRIVER
  M:    Philipp Reisner <[email protected]>
  M:    Lars Ellenberg <[email protected]>
@@@ -6383,13 -6317,6 +6382,13 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/display/bridge/chipone,icn6211.yaml
  F:    drivers/gpu/drm/bridge/chipone-icn6211.c
  
 +DRM DRIVER FOR EBBG FT8719 PANEL
 +M:    Joel Selvaraj <[email protected]>
 +S:    Maintained
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +F:    Documentation/devicetree/bindings/display/panel/ebbg,ft8719.yaml
 +F:    drivers/gpu/drm/panel/panel-ebbg-ft8719.c
 +
  DRM DRIVER FOR FARADAY TVE200 TV ENCODER
  M:    Linus Walleij <[email protected]>
  S:    Maintained
@@@ -6448,12 -6375,6 +6447,12 @@@ S:    Orphan / Obsolet
  F:    drivers/gpu/drm/i810/
  F:    include/uapi/drm/i810_drm.h
  
 +DRM DRIVER FOR LOGICVC DISPLAY CONTROLLER
 +M:    Paul Kocialkowski <[email protected]>
 +S:    Supported
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +F:    drivers/gpu/drm/logicvc/
 +
  DRM DRIVER FOR LVDS PANELS
  M:    Laurent Pinchart <[email protected]>
  L:    [email protected]
@@@ -6630,17 -6551,12 +6629,17 @@@ S:   Orphan / Obsolet
  F:    drivers/gpu/drm/savage/
  F:    include/uapi/drm/savage_drm.h
  
 -DRM DRIVER FOR SIMPLE FRAMEBUFFERS
 +DRM DRIVER FOR FIRMWARE FRAMEBUFFERS
  M:    Thomas Zimmermann <[email protected]>
 +M:    Javier Martinez Canillas <[email protected]>
  L:    [email protected]
  S:    Maintained
  T:    git git://anongit.freedesktop.org/drm/drm-misc
 +F:    drivers/gpu/drm/drm_aperture.c
  F:    drivers/gpu/drm/tiny/simpledrm.c
 +F:    drivers/video/aperture.c
 +F:    include/drm/drm_aperture.h
 +F:    include/linux/aperture.h
  
  DRM DRIVER FOR SIS VIDEO CARDS
  S:    Orphan / Obsolete
@@@ -6678,12 -6594,6 +6677,12 @@@ DRM DRIVER FOR TDFX VIDEO CARD
  S:    Orphan / Obsolete
  F:    drivers/gpu/drm/tdfx/
  
 +DRM DRIVER FOR TI DLPC3433 MIPI DSI TO DMD BRIDGE
 +M:    Jagan Teki <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/display/bridge/ti,dlpc3433.yaml
 +F:    drivers/gpu/drm/bridge/ti-dlpc3433.c
 +
  DRM DRIVER FOR TI SN65DSI86 BRIDGE CHIP
  R:    Douglas Anderson <[email protected]>
  F:    Documentation/devicetree/bindings/display/bridge/ti,sn65dsi86.yaml
@@@ -6813,6 -6723,7 +6812,6 @@@ F:      drivers/gpu/drm/bridge
  
  DRM DRIVERS FOR EXYNOS
  M:    Inki Dae <[email protected]>
 -M:    Joonyoung Shim <[email protected]>
  M:    Seung-Woo Kim <[email protected]>
  M:    Kyungmin Park <[email protected]>
  L:    [email protected]
@@@ -6841,16 -6752,6 +6840,16 @@@ F:    Documentation/devicetree/bindings/di
  F:    drivers/gpu/drm/imx/
  F:    drivers/gpu/ipu-v3/
  
 +DRM DRIVERS FOR FREESCALE IMX BRIDGE
 +M:    Liu Ying <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/display/bridge/fsl,imx8qxp-ldb.yaml
 +F:    Documentation/devicetree/bindings/display/bridge/fsl,imx8qxp-pixel-combiner.yaml
 +F:    Documentation/devicetree/bindings/display/bridge/fsl,imx8qxp-pixel-link.yaml
 +F:    Documentation/devicetree/bindings/display/bridge/fsl,imx8qxp-pxl2dpi.yaml
 +F:    drivers/gpu/drm/bridge/imx/
 +
  DRM DRIVERS FOR GMA500 (Poulsbo, Moorestown and derivative chipsets)
  M:    Patrik Jakobsson <[email protected]>
  L:    [email protected]
@@@ -6895,7 -6796,6 +6894,7 @@@ L:      [email protected] (
  S:    Supported
  F:    Documentation/devicetree/bindings/display/mediatek/
  F:    drivers/gpu/drm/mediatek/
 +F:    drivers/phy/mediatek/phy-mtk-dp.c
  F:    drivers/phy/mediatek/phy-mtk-hdmi*
  F:    drivers/phy/mediatek/phy-mtk-mipi*
  
@@@ -6905,7 -6805,7 +6904,7 @@@ L:      [email protected]
  L:    [email protected]
  S:    Supported
  T:    git git://anongit.freedesktop.org/tegra/linux.git
 -F:    Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-host1x.txt
 +F:    Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-host1x.yaml
  F:    Documentation/devicetree/bindings/gpu/host1x/
  F:    drivers/gpu/drm/tegra/
  F:    drivers/gpu/host1x/
@@@ -6982,7 -6882,6 +6981,7 @@@ F:      drivers/gpu/drm/omapdrm
  
  DRM DRIVERS FOR V3D
  M:    Emma Anholt <[email protected]>
 +M:    Melissa Wen <[email protected]>
  S:    Supported
  T:    git git://anongit.freedesktop.org/drm/drm-misc
  F:    Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml
  S:    Maintained
  F:    drivers/net/ethernet/ibm/ehea/
  
 +ELM327 CAN NETWORK DRIVER
 +M:    Max Staudt <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/networking/device_drivers/can/can327.rst
 +F:    drivers/net/can/can327.c
 +
  EM28XX VIDEO4LINUX DRIVER
  M:    Mauro Carvalho Chehab <[email protected]>
  L:    [email protected]
@@@ -7511,7 -7403,7 +7510,7 @@@ F:      Documentation/admin-guide/media/em28
  F:    drivers/media/usb/em28xx/
  
  EMBEDDED LINUX
 -M:    Matt Mackall <mpm@selenic.com>
 +M:    Olivia Mackall <olivia@selenic.com>
  M:    David Woodhouse <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -7593,8 -7485,6 +7592,8 @@@ F:      include/video/s1d13xxxfb.
  EROFS FILE SYSTEM
  M:    Gao Xiang <[email protected]>
  M:    Chao Yu <[email protected]>
 +R:    Yue Hu <[email protected]>
 +R:    Jeffle Xu <[email protected]>
  L:    [email protected]
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git
@@@ -7608,13 -7498,6 +7607,13 @@@ S:    Maintaine
  F:    include/linux/errseq.h
  F:    lib/errseq.c
  
 +ESD CAN/USB DRIVERS
 +M:    Frank Jungclaus <[email protected]>
 +R:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/net/can/usb/esd_usb.c
 +
  ET131X NETWORK DRIVER
  M:    Mark Einon <[email protected]>
  S:    Odd Fixes
@@@ -7690,7 -7573,6 +7689,7 @@@ M:      Namjae Jeon <[email protected]
  M:    Sungjong Seo <[email protected]>
  L:    [email protected]
  S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat.git
  F:    fs/exfat/
  
  EXT2 FILE SYSTEM
@@@ -7891,6 -7773,9 +7890,6 @@@ F:      include/linux/fs.
  F:    include/linux/fs_types.h
  F:    include/uapi/linux/fs.h
  F:    include/uapi/linux/openat2.h
 -X:    fs/io-wq.c
 -X:    fs/io-wq.h
 -X:    fs/io_uring.c
  
  FINTEK F75375S HARDWARE MONITOR AND FAN CONTROLLER DRIVER
  M:    Riku Voipio <[email protected]>
@@@ -7989,7 -7874,6 +7988,7 @@@ FORTIFY_SOURC
  M:    Kees Cook <[email protected]>
  L:    [email protected]
  S:    Supported
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/hardening
  F:    include/linux/fortify-string.h
  F:    lib/test_fortify/*
  F:    scripts/test_fortify.sh
@@@ -8022,21 -7906,6 +8021,21 @@@ F:    Documentation/fpga
  F:    drivers/fpga/
  F:    include/linux/fpga/
  
 +INTEL MAX10 BMC SECURE UPDATES
 +M:    Russ Weight <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/ABI/testing/sysfs-driver-intel-m10-bmc-sec-update
 +F:    drivers/fpga/intel-m10-bmc-sec-update.c
 +
 +MICROCHIP POLARFIRE FPGA DRIVERS
 +M:    Conor Dooley <[email protected]>
 +R:    Ivan Bornyakov <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
 +F:    drivers/fpga/microchip-spi.c
 +
  FPU EMULATOR
  M:    Bill Metzenthen <[email protected]>
  S:    Maintained
@@@ -8142,6 -8011,7 +8141,6 @@@ L:      [email protected]
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  F:    drivers/video/fbdev/imxfb.c
 -F:    include/linux/platform_data/video-imxfb.h
  
  FREESCALE IMX DDR PMU DRIVER
  M:    Frank Li <[email protected]>
@@@ -8446,7 -8316,6 +8445,7 @@@ GCC PLUGIN
  M:    Kees Cook <[email protected]>
  L:    [email protected]
  S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/hardening
  F:    Documentation/kbuild/gcc-plugins.rst
  F:    scripts/Makefile.gcc-plugins
  F:    scripts/gcc-plugins/
@@@ -8538,7 -8407,6 +8537,7 @@@ Q:      https://patchwork.kernel.org/project
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy.git
  F:    Documentation/devicetree/bindings/phy/
  F:    drivers/phy/
 +F:    include/dt-bindings/phy/
  F:    include/linux/phy/
  
  GENERIC PINCTRL I2C DEMULTIPLEXER DRIVER
@@@ -8892,7 -8760,6 +8891,7 @@@ L:      [email protected]
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/media/nxp,imx8mq-vpu.yaml
 +F:    Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml
  F:    Documentation/devicetree/bindings/media/rockchip-vpu.yaml
  F:    drivers/staging/media/hantro/
  
@@@ -8919,7 -8786,7 +8918,7 @@@ F:      include/trace/events/hwmon*.
  K:    (devm_)?hwmon_device_(un)?register(|_with_groups|_with_info)
  
  HARDWARE RANDOM NUMBER GENERATOR CORE
 -M:    Matt Mackall <mpm@selenic.com>
 +M:    Olivia Mackall <olivia@selenic.com>
  M:    Herbert Xu <[email protected]>
  L:    [email protected]
  S:    Odd fixes
@@@ -9169,31 -9036,16 +9168,31 @@@ F:   Documentation/admin-guide/perf/hisi-
  F:    Documentation/admin-guide/perf/hisi-pmu.rst
  F:    drivers/perf/hisilicon
  
 -HISILICON QM AND ZIP Controller DRIVER
 +HISILICON HNS3 PMU DRIVER
 +M:    Guangbin Huang <[email protected]>
 +S:    Supported
 +F:    Documentation/admin-guide/perf/hns3-pmu.rst
 +F:    drivers/perf/hisilicon/hns3_pmu.c
 +
 +HISILICON QM DRIVER
 +M:    Weili Qian <[email protected]>
  M:    Zhou Wang <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/ABI/testing/debugfs-hisi-zip
 +F:    drivers/crypto/hisilicon/Kconfig
 +F:    drivers/crypto/hisilicon/Makefile
  F:    drivers/crypto/hisilicon/qm.c
  F:    drivers/crypto/hisilicon/sgl.c
 -F:    drivers/crypto/hisilicon/zip/
  F:    include/linux/hisi_acc_qm.h
  
 +HISILICON ZIP Controller DRIVER
 +M:    Yang Shen <[email protected]>
 +M:    Zhou Wang <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/ABI/testing/debugfs-hisi-zip
 +F:    drivers/crypto/hisilicon/zip/
 +
  HISILICON ROCE DRIVER
  M:    Wenpeng Liang <[email protected]>
  M:    Weihang Li <[email protected]>
@@@ -9256,7 -9108,7 +9255,7 @@@ HMM - Heterogeneous Memory Managemen
  M:    Jérôme Glisse <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/vm/hmm.rst
 +F:    Documentation/mm/hmm.rst
  F:    include/linux/hmm*
  F:    lib/test_hmm*
  F:    mm/hmm*
@@@ -9354,8 -9206,8 +9353,8 @@@ L:      [email protected]
  S:    Maintained
  F:    Documentation/ABI/testing/sysfs-kernel-mm-hugepages
  F:    Documentation/admin-guide/mm/hugetlbpage.rst
 -F:    Documentation/vm/hugetlbfs_reserv.rst
 -F:    Documentation/vm/vmemmap_dedup.rst
 +F:    Documentation/mm/hugetlbfs_reserv.rst
 +F:    Documentation/mm/vmemmap_dedup.rst
  F:    fs/hugetlbfs/
  F:    include/linux/hugetlb.h
  F:    mm/hugetlb.c
@@@ -9421,7 -9273,6 +9420,7 @@@ S:      Supporte
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux.git
  F:    Documentation/ABI/stable/sysfs-bus-vmbus
  F:    Documentation/ABI/testing/debugfs-hyperv
 +F:    Documentation/virt/hyperv
  F:    Documentation/networking/device_drivers/ethernet/microsoft/netvsc.rst
  F:    arch/arm64/hyperv
  F:    arch/arm64/include/asm/hyperv-tlfs.h
@@@ -9767,7 -9618,6 +9766,7 @@@ F:      drivers/input/misc/ideapad_slidebar.
  
  IDMAPPED MOUNTS
  M:    Christian Brauner <[email protected]>
 +M:    Seth Forshee <[email protected]>
  L:    [email protected]
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux.git
@@@ -9860,7 -9710,6 +9859,7 @@@ F:      Documentation/ABI/testing/sysfs-bus-
  F:    Documentation/devicetree/bindings/iio/
  F:    drivers/iio/
  F:    drivers/staging/iio/
 +F:    include/dt-bindings/iio/
  F:    include/linux/iio/
  F:    tools/iio/
  
  S:    Maintained
  F:    drivers/video/fbdev/i810/
  
 +INTEL 8255 GPIO DRIVER
 +M:    William Breathitt Gray <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/gpio/gpio-i8255.c
 +F:    drivers/gpio/gpio-i8255.h
 +
  INTEL ASoC DRIVERS
  M:    Cezary Rojewski <[email protected]>
  M:    Pierre-Louis Bossart <[email protected]>
@@@ -10196,8 -10038,7 +10195,8 @@@ S:   Supporte
  Q:    https://patchwork.kernel.org/project/linux-dmaengine/list/
  F:    drivers/dma/ioat*
  
 -INTEL IADX DRIVER
 +INTEL IDXD DRIVER
 +M:    Fenghua Yu <[email protected]>
  M:    Dave Jiang <[email protected]>
  L:    [email protected]
  S:    Supported
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git
  F:    drivers/iommu/intel/
 -F:    include/linux/intel-iommu.h
  F:    include/linux/intel-svm.h
  
  INTEL IOP-ADMA DMA DRIVER
@@@ -10390,7 -10232,7 +10389,7 @@@ F:   drivers/gpio/gpio-*cove.
  
  INTEL PMIC MULTIFUNCTION DEVICE DRIVERS
  M:    Andy Shevchenko <[email protected]>
 -S:    Maintained
 +S:    Supported
  F:    drivers/mfd/intel_soc_pmic*
  F:    include/linux/mfd/intel_soc_pmic*
  
@@@ -10606,20 -10448,9 +10605,20 @@@ T: git git://git.kernel.org/pub/scm/fs/
  F:    fs/iomap/
  F:    include/linux/iomap.h
  
 -IOMMU DRIVERS
 +IOMMU DMA-API LAYER
 +M:    Robin Murphy <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git
 +F:    drivers/iommu/dma-iommu.c
 +F:    drivers/iommu/iova.c
 +F:    include/linux/dma-iommu.h
 +F:    include/linux/iova.h
 +
 +IOMMU SUBSYSTEM
  M:    Joerg Roedel <[email protected]>
  M:    Will Deacon <[email protected]>
 +R:    Robin Murphy <[email protected]>
  L:    [email protected]
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git
  S:    Maintained
  T:    git git://git.kernel.dk/linux-block
  T:    git git://git.kernel.dk/liburing
 -F:    fs/io-wq.c
 -F:    fs/io-wq.h
 -F:    fs/io_uring.c
 +F:    io_uring/
  F:    include/linux/io_uring.h
  F:    include/uapi/linux/io_uring.h
  F:    tools/io_uring/
@@@ -10714,7 -10547,7 +10713,7 @@@ F:   Documentation/devicetree/bindings/in
  F:    drivers/irqchip/
  
  ISA
 -M:    William Breathitt Gray <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  S:    Maintained
  F:    Documentation/driver-api/isa.rst
  F:    drivers/base/isa.c
@@@ -11005,17 -10838,6 +11004,17 @@@ F: scripts/mk
  F:    scripts/mod/
  F:    scripts/package/
  
 +KERNEL HARDENING (not covered by other areas)
 +M:    Kees Cook <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/hardening
 +F:    include/linux/overflow.h
 +F:    include/linux/randomize_kstack.h
 +F:    mm/usercopy.c
 +K:    \b(add|choose)_random_kstack_offset\b
 +K:    \b__check_(object_size|heap_object)\b
 +
  KERNEL JANITORS
  L:    [email protected]
  S:    Odd Fixes
@@@ -11063,13 -10885,11 +11062,13 @@@ R:        Sergey Senozhatsky <senozhatsky@chro
  L:    [email protected]
  S:    Maintained
  T:    git git://git.samba.org/ksmbd.git
 +F:    Documentation/filesystems/cifs/ksmbd.rst
  F:    fs/ksmbd/
  F:    fs/smbfs_common/
  
  KERNEL UNIT TESTING FRAMEWORK (KUnit)
  M:    Brendan Higgins <[email protected]>
 +M:    David Gow <[email protected]>
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
@@@ -11632,8 -11452,8 +11631,8 @@@ F:   drivers/macintosh
  
  LINUX FOR POWERPC (32-BIT AND 64-BIT)
  M:    Michael Ellerman <[email protected]>
 -R:    Benjamin Herrenschmidt <[email protected]>
 -R:    Paul Mackerras <[email protected]>
 +R:    Nicholas Piggin <[email protected]>
 +R:    Christophe Leroy <[email protected]>
  L:    [email protected]
  S:    Supported
  W:    https://github.com/linuxppc/wiki/wiki
@@@ -11828,7 -11648,7 +11827,7 @@@ F:   drivers/media/usb/dvb-usb-v2/lmedm04
  LOADPIN SECURITY MODULE
  M:    Kees Cook <[email protected]>
  S:    Supported
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git lsm/loadpin
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/hardening
  F:    Documentation/admin-guide/LSM/LoadPin.rst
  F:    security/loadpin/
  
@@@ -12416,6 -12236,7 +12415,6 @@@ F:   Documentation/devicetree/bindings/*/
  F:    Documentation/devicetree/bindings/*/maxim,max77693.yaml
  F:    Documentation/devicetree/bindings/*/maxim,max77843.yaml
  F:    Documentation/devicetree/bindings/clock/maxim,max77686.txt
 -F:    Documentation/devicetree/bindings/mfd/max77693.txt
  F:    drivers/*/*max77843.c
  F:    drivers/*/max14577*.c
  F:    drivers/*/max77686*.c
@@@ -12491,7 -12312,7 +12490,7 @@@ F:   drivers/net/ieee802154/mcr20a.
  F:    drivers/net/ieee802154/mcr20a.h
  
  MEASUREMENT COMPUTING CIO-DAC IIO DRIVER
 -M:    William Breathitt Gray <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/iio/dac/cio-dac.c
@@@ -12732,7 -12553,6 +12731,7 @@@ F:   Documentation/driver-api/media
  F:    Documentation/userspace-api/media/
  F:    drivers/media/
  F:    drivers/staging/media/
 +F:    include/dt-bindings/media/
  F:    include/linux/platform_data/media/
  F:    include/media/
  F:    include/uapi/linux/dvb/
@@@ -12815,7 -12635,6 +12814,7 @@@ F:   drivers/media/platform/mediatek/vpu
  MEDIATEK MEDIA DRIVER
  M:    Tiffany Lin <[email protected]>
  M:    Andrew-CT Chen <[email protected]>
 +M:    Yunfei Dong <[email protected]>
  S:    Supported
  F:    Documentation/devicetree/bindings/media/mediatek,vcodec*.yaml
  F:    Documentation/devicetree/bindings/media/mediatek-vpu.txt
@@@ -13137,7 -12956,6 +13136,7 @@@ W:   http://www.linux-mm.or
  T:    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:    include/linux/gfp.h
 +F:    include/linux/gfp_types.h
  F:    include/linux/memory_hotplug.h
  F:    include/linux/mm.h
  F:    include/linux/mmzone.h
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
 +F:    Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml
  F:    drivers/net/dsa/microchip/*
  F:    include/linux/platform_data/microchip-ksz.h
  F:    net/dsa/tag_ksz.c
@@@ -13411,14 -13228,6 +13410,14 @@@ S: Supporte
  F:    Documentation/devicetree/bindings/mtd/atmel-nand.txt
  F:    drivers/mtd/nand/raw/atmel/*
  
 +MICROCHIP OTPC DRIVER
 +M:    Claudiu Beznea <[email protected]>
 +L:    [email protected] (moderated for non-subscribers)
 +S:    Supported
 +F:    Documentation/devicetree/bindings/nvmem/microchip,sama7g5-otpc.yaml
 +F:    drivers/nvmem/microchip-otpc.c
 +F:    include/dt-bindings/nvmem/microchip,sama7g5-otpc.h
 +
  MICROCHIP PWM DRIVER
  M:    Claudiu Beznea <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
@@@ -13495,12 -13304,6 +13494,12 @@@ F: drivers/scsi/smartpqi/smartpqi*.[ch
  F:    include/linux/cciss*.h
  F:    include/uapi/linux/cciss*.h
  
 +MICROSOFT SURFACE AGGREGATOR TABLET-MODE SWITCH
 +M:    Maximilian Luz <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/platform/surface/surface_aggregator_tabletsw.c
 +
  MICROSOFT SURFACE BATTERY AND AC DRIVERS
  M:    Maximilian Luz <[email protected]>
  L:    [email protected]
@@@ -13572,12 -13375,6 +13571,12 @@@ F: include/linux/surface_acpi_notify.
  F:    include/linux/surface_aggregator/
  F:    include/uapi/linux/surface_aggregator/
  
 +MICROSOFT SURFACE SYSTEM AGGREGATOR HUB DRIVER
 +M:    Maximilian Luz <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/platform/surface/surface_aggregator_hub.c
 +
  MICROTEK X6 SCANNER
  M:    Oliver Neukum <[email protected]>
  S:    Maintained
@@@ -13618,7 -13415,6 +13617,7 @@@ F:   Documentation/devicetree/bindings/mi
  F:    Documentation/mips/
  F:    arch/mips/
  F:    drivers/platform/mips/
 +F:    include/dt-bindings/mips/
  
  MIPS BOSTON DEVELOPMENT BOARD
  M:    Paul Burton <[email protected]>
@@@ -13746,7 -13542,6 +13745,7 @@@ S:   Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git modules-next
  F:    include/linux/module.h
  F:    kernel/module/
 +F:    scripts/module*
  
  MONOLITHIC POWER SYSTEM PMIC DRIVER
  M:    Saravanan Sekar <[email protected]>
@@@ -13889,7 -13684,7 +13888,7 @@@ F:   Documentation/devicetree/bindings/me
  F:    drivers/media/i2c/mt9v111.c
  
  MULTIFUNCTION DEVICES (MFD)
 -M:    Lee Jones <lee.jones@linaro.org>
 +M:    Lee Jones <lee@kernel.org>
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git
  F:    Documentation/devicetree/bindings/mfd/
@@@ -14037,11 -13832,12 +14036,11 @@@ L:        [email protected]
  S:    Maintained
  F:    net/sched/sch_netem.c
  
 -NETERION 10GbE DRIVERS (s2io/vxge)
 +NETERION 10GbE DRIVERS (s2io)
  M:    Jon Mason <[email protected]>
  L:    [email protected]
  S:    Supported
  F:    Documentation/networking/device_drivers/ethernet/neterion/s2io.rst
 -F:    Documentation/networking/device_drivers/ethernet/neterion/vxge.rst
  F:    drivers/net/ethernet/neterion/
  
  NETFILTER
@@@ -14526,8 -14322,7 +14525,8 @@@ S:   Supporte
  W:    http://git.infradead.org/nvme.git
  T:    git://git.infradead.org/nvme.git
  F:    drivers/nvme/host/
 -F:    include/linux/nvme.h
 +F:    drivers/nvme/common/
 +F:    include/linux/nvme*
  F:    include/uapi/linux/nvme_ioctl.h
  
  NVM EXPRESS FC TRANSPORT DRIVERS
@@@ -14567,8 -14362,7 +14566,8 @@@ S:   Maintaine
  F:    drivers/net/phy/nxp-c45-tja11xx.c
  
  NXP FSPI DRIVER
 -M:    Ashish Kumar <[email protected]>
 +M:    Han Xu <[email protected]>
 +M:    Haibo Chen <[email protected]>
  R:    Yogesh Gaur <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -15043,7 -14837,6 +15042,7 @@@ M:   Daniel Scally <[email protected]
  L:    [email protected]
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
 +F:    Documentation/devicetree/bindings/media/i2c/ovti,ov5693.yaml
  F:    drivers/media/i2c/ov5693.c
  
  OMNIVISION OV5695 SENSOR DRIVER
@@@ -15118,13 -14911,6 +15117,13 @@@ S: Maintaine
  T:    git git://linuxtv.org/media_tree.git
  F:    drivers/media/i2c/ov9734.c
  
 +ONBOARD USB HUB DRIVER
 +M:    Matthias Kaehlcke <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/ABI/testing/sysfs-bus-platform-onboard-usb-hub
 +F:    drivers/usb/misc/onboard_usb_hub.c
 +
  ONENAND FLASH DRIVER
  M:    Kyungmin Park <[email protected]>
  L:    [email protected]
@@@ -15211,7 -14997,7 +15210,7 @@@ M:   Peter Korsgaard <[email protected]
  M:    Andrew Lunn <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/devicetree/bindings/i2c/i2c-ocores.txt
 +F:    Documentation/devicetree/bindings/i2c/opencores,i2c-ocores.yaml
  F:    Documentation/i2c/busses/i2c-ocores.rst
  F:    drivers/i2c/busses/i2c-ocores.c
  F:    include/linux/platform_data/i2c-ocores.h
@@@ -15356,7 -15142,7 +15355,7 @@@ M:   Pasha Tatashin <pasha.tatashin@solee
  M:    Andrew Morton <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/vm/page_table_check.rst
 +F:    Documentation/mm/page_table_check.rst
  F:    include/linux/page_table_check.h
  F:    mm/page_table_check.c
  
  S:    Maintained
  F:    drivers/pci/controller/dwc/*spear*
  
 +PCI DRIVER FOR XILINX VERSAL CPM
 +M:    Bharat Kumar Gogada <[email protected]>
 +M:    Michal Simek <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/pci/xilinx-versal-cpm.yaml
 +F:    drivers/pci/controller/pcie-xilinx-cpm.c
 +
  PCMCIA SUBSYSTEM
  M:    Dominik Brodowski <[email protected]>
  S:    Odd Fixes
@@@ -16070,7 -15848,7 +16069,7 @@@ PIN CONTROLLER - FREESCAL
  M:    Dong Aisheng <[email protected]>
  M:    Fabio Estevam <[email protected]>
  M:    Shawn Guo <[email protected]>
 -M:    Stefan Agner <[email protected]>
 +M:    Jacky Bai <[email protected]>
  R:    Pengutronix Kernel Team <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -16174,6 -15952,14 +16173,6 @@@ S:  Maintaine
  F:    Documentation/devicetree/bindings/iio/chemical/plantower,pms7003.yaml
  F:    drivers/iio/chemical/pms7003.c
  
 -PLATFORM FEATURE INFRASTRUCTURE
 -M:    Juergen Gross <[email protected]>
 -S:    Maintained
 -F:    arch/*/include/asm/platform-feature.h
 -F:    include/asm-generic/platform-feature.h
 -F:    include/linux/platform-feature.h
 -F:    kernel/platform-feature.c
 -
  PLDMFW LIBRARY
  M:    Jacob Keller <[email protected]>
  S:    Maintained
@@@ -16538,17 -16324,17 +16537,17 @@@ F:        drivers/media/rc/pwm-ir-tx.
  PWM SUBSYSTEM
  M:    Thierry Reding <[email protected]>
  R:    Uwe Kleine-König <[email protected]>
 -M:    Lee Jones <[email protected]>
  L:    [email protected]
  S:    Maintained
  Q:    https://patchwork.ozlabs.org/project/linux-pwm/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm.git
 -F:    Documentation/devicetree/bindings/gpio/gpio-mvebu.txt
 +F:    Documentation/devicetree/bindings/gpio/gpio-mvebu.yaml
  F:    Documentation/devicetree/bindings/pwm/
  F:    Documentation/driver-api/pwm.rst
  F:    drivers/gpio/gpio-mvebu.c
  F:    drivers/pwm/
  F:    drivers/video/backlight/pwm_bl.c
 +F:    include/dt-bindings/pwm/
  F:    include/linux/pwm.h
  F:    include/linux/pwm_backlight.h
  K:    pwm_(config|apply_state|ops)
@@@ -16597,9 -16383,6 +16596,9 @@@ M:   Srinivas Kandagatla <srinivas.kandag
  M:    Banajit Goswami <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Supported
 +F:    include/dt-bindings/sound/qcom,wcd9335.h
 +F:    sound/soc/codecs/lpass-rx-macro.*
 +F:    sound/soc/codecs/lpass-tx-macro.*
  F:    sound/soc/codecs/lpass-va-macro.c
  F:    sound/soc/codecs/lpass-wsa-macro.*
  F:    sound/soc/codecs/msm8916-wcd-analog.c
@@@ -16607,9 -16390,7 +16606,9 @@@ F:   sound/soc/codecs/msm8916-wcd-digital
  F:    sound/soc/codecs/wcd9335.*
  F:    sound/soc/codecs/wcd934x.c
  F:    sound/soc/codecs/wcd-clsh-v2.*
 +F:    sound/soc/codecs/wcd-mbhc-v2.*
  F:    sound/soc/codecs/wsa881x.c
 +F:    sound/soc/codecs/wsa883x.c
  F:    sound/soc/qcom/
  
  QCOM EMBEDDED USB DEBUGGER (EUD)
@@@ -16878,13 -16659,6 +16877,13 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/i2c/i2c-qcom-cci.txt
  F:    drivers/i2c/busses/i2c-qcom-cci.c
  
 +QUALCOMM INTERCONNECT BWMON DRIVER
 +M:    Krzysztof Kozlowski <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/interconnect/qcom,msm8998-bwmon.yaml
 +F:    drivers/soc/qcom/icc-bwmon.c
 +
  QUALCOMM IOMMU
  M:    Rob Clark <[email protected]>
  L:    [email protected]
@@@ -17400,19 -17174,6 +17399,19 @@@ S: Supporte
  F:    Documentation/devicetree/bindings/iio/adc/renesas,rzg2l-adc.yaml
  F:    drivers/iio/adc/rzg2l_adc.c
  
 +RENESAS RZ/N1 A5PSW SWITCH DRIVER
 +M:    Clément Léger <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/net/dsa/renesas,rzn1-a5psw.yaml
 +F:    Documentation/devicetree/bindings/net/pcs/renesas,rzn1-miic.yaml
 +F:    drivers/net/dsa/rzn1_a5psw*
 +F:    drivers/net/pcs/pcs-rzn1-miic.c
 +F:    include/dt-bindings/net/pcs-rzn1-miic.h
 +F:    include/linux/pcs-rzn1-miic.h
 +F:    net/dsa/tag_rzn1_a5psw.c
 +
  RENESAS RZ/N1 RTC CONTROLLER DRIVER
  M:    Miquel Raynal <[email protected]>
  L:    [email protected]
@@@ -17511,18 -17272,13 +17510,18 @@@ N:        risc
  K:    riscv
  
  RISC-V/MICROCHIP POLARFIRE SOC SUPPORT
 -M:    Lewis Hanly <[email protected]>
  M:    Conor Dooley <[email protected]>
 +M:    Daire McNamara <[email protected]>
  L:    [email protected]
  S:    Supported
  F:    arch/riscv/boot/dts/microchip/
 +F:    drivers/char/hw_random/mpfs-rng.c
 +F:    drivers/clk/microchip/clk-mpfs.c
  F:    drivers/mailbox/mailbox-mpfs.c
 +F:    drivers/pci/controller/pcie-microchip-host.c
  F:    drivers/soc/microchip/
 +F:    drivers/spi/spi-microchip-core.c
 +F:    drivers/usb/musb/mpfs.c
  F:    include/soc/microchip/mpfs.h
  
  RNBD BLOCK DRIVERS
@@@ -17814,7 -17570,7 +17813,7 @@@ M:   Jason Herne <[email protected]
  L:    [email protected]
  S:    Supported
  W:    http://www.ibm.com/developerworks/linux/linux390/
 -F:    Documentation/s390/vfio-ap.rst
 +F:    Documentation/s390/vfio-ap*
  F:    drivers/s390/crypto/vfio_ap*
  
  S390 VFIO-CCW DRIVER
@@@ -17834,7 -17590,6 +17833,7 @@@ M:   Eric Farman <[email protected]
  L:    [email protected]
  L:    [email protected]
  S:    Supported
 +F:    arch/s390/kvm/pci*
  F:    drivers/vfio/pci/vfio_pci_zdev.c
  F:    include/uapi/linux/vfio_zdev.h
  
@@@ -18219,7 -17974,7 +18218,7 @@@ M:   Kees Cook <[email protected]
  R:    Andy Lutomirski <[email protected]>
  R:    Will Drewry <[email protected]>
  S:    Supported
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git seccomp
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/seccomp
  F:    Documentation/userspace-api/seccomp_filter.rst
  F:    include/linux/seccomp.h
  F:    include/uapi/linux/seccomp.h
@@@ -18290,13 -18045,12 +18289,13 @@@ S:        Supporte
  F:    Documentation/admin-guide/security-bugs.rst
  
  SECURITY SUBSYSTEM
 +M:    Paul Moore <[email protected]>
  M:    James Morris <[email protected]>
  M:    "Serge E. Hallyn" <[email protected]>
  L:    [email protected] (suggested Cc:)
  S:    Supported
  W:    http://kernsec.org/
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm.git
  F:    security/
  X:    security/selinux/
  
@@@ -18399,7 -18153,6 +18398,7 @@@ SFF/SFP/SFP+ MODULE SUPPOR
  M:    Russell King <[email protected]>
  L:    [email protected]
  S:    Maintained
 +F:    Documentation/devicetree/bindings/net/sff,sfp.yaml
  F:    drivers/net/phy/phylink.c
  F:    drivers/net/phy/sfp*
  F:    include/linux/mdio/mdio-i2c.h
@@@ -18686,12 -18439,6 +18685,12 @@@ T: git git://git.kernel.org/pub/scm/lin
  F:    include/linux/sl?b*.h
  F:    mm/sl?b*
  
 +SLCAN CAN NETWORK DRIVER
 +M:    Dario Binacchi <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/net/can/slcan/
 +
  SLEEPABLE READ-COPY UPDATE (SRCU)
  M:    Lai Jiangshan <[email protected]>
  M:    "Paul E. McKenney" <[email protected]>
@@@ -18863,7 -18610,6 +18862,7 @@@ SOFTWARE RAID (Multiple Disks) SUPPOR
  M:    Song Liu <[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
  F:    drivers/md/Kconfig
  F:    drivers/md/Makefile
@@@ -19153,7 -18899,7 +19152,7 @@@ F:   drivers/pinctrl/spear
  
  SPI NOR SUBSYSTEM
  M:    Tudor Ambarus <[email protected]>
 -M:    Pratyush Yadav <p[email protected]>
 +M:    Pratyush Yadav <p[email protected]>
  R:    Michael Walle <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -19313,7 -19059,6 +19312,7 @@@ F:   drivers/staging/olpc_dcon
  STAGING - REALTEK RTL8188EU DRIVERS
  M:    Larry Finger <[email protected]>
  M:    Phillip Potter <[email protected]>
 +R:    Pavel Skripkin <[email protected]>
  S:    Supported
  F:    drivers/staging/r8188eu/
  
@@@ -19624,9 -19369,8 +19623,9 @@@ F:   Documentation/devicetree/bindings/gp
  F:    drivers/gpio/gpio-creg-snps.c
  
  SYNOPSYS DESIGNWARE 8250 UART DRIVER
 +M:    Ilpo Järvinen <[email protected]>
  R:    Andy Shevchenko <[email protected]>
 -S:    Maintained
 +S:    Supported
  F:    drivers/tty/serial/8250/8250_dw.c
  F:    drivers/tty/serial/8250/8250_dwlib.*
  F:    drivers/tty/serial/8250/8250_lpss.c
@@@ -19707,7 -19451,7 +19706,7 @@@ S:   Maintaine
  F:    drivers/mmc/host/sdhci-pci-dwc-mshc.c
  
  SYSTEM CONFIGURATION (SYSCON)
 -M:    Lee Jones <lee.jones@linaro.org>
 +M:    Lee Jones <lee@kernel.org>
  M:    Arnd Bergmann <[email protected]>
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git
@@@ -20025,7 -19769,7 +20024,7 @@@ M:   Sowjanya Komatineni <skomatineni@nvi
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-host1x.txt
 +F:    Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-host1x.yaml
  F:    drivers/staging/media/tegra-video/
  
  TEGRA XUSB PADCTL DRIVER
@@@ -20148,7 -19892,6 +20147,7 @@@ F:   Documentation/ABI/testing/sysfs-clas
  F:    Documentation/devicetree/bindings/thermal/
  F:    Documentation/driver-api/thermal/
  F:    drivers/thermal/
 +F:    include/dt-bindings/thermal/
  F:    include/linux/cpu_cooling.h
  F:    include/linux/thermal.h
  F:    include/uapi/linux/thermal.h
@@@ -20623,7 -20366,7 +20622,7 @@@ F:   tools/tracing/rtla
  
  TRADITIONAL CHINESE DOCUMENTATION
  M:    Hu Haowen <[email protected]>
 -L:    [email protected]
 +L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  W:    https://github.com/srcres258/linux-doc
  T:    git git://github.com/srcres258/linux-doc.git doc-zh-tw
@@@ -20743,13 -20486,6 +20742,13 @@@ F: Documentation/filesystems/ubifs-auth
  F:    Documentation/filesystems/ubifs.rst
  F:    fs/ubifs/
  
 +UBLK USERSPACE BLOCK DRIVER
 +M:    Ming Lei <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/block/ublk_drv.c
 +F:    include/uapi/linux/ublk_cmd.h
 +
  UCLINUX (M68KNOMMU AND COLDFIRE)
  M:    Greg Ungerer <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/ufs/host/ufs-mediatek*
  
 +UNIVERSAL FLASH STORAGE HOST CONTROLLER DRIVER RENESAS HOOKS
 +M:    Yoshihiro Shimoda <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/ufs/host/ufs-renesas.c
 +
  UNSORTED BLOCK IMAGES (UBI)
  M:    Richard Weinberger <[email protected]>
  L:    [email protected]
@@@ -21285,7 -21014,6 +21284,7 @@@ M:   OGAWA Hirofumi <[email protected]
  S:    Maintained
  F:    Documentation/filesystems/vfat.rst
  F:    fs/fat/
 +F:    tools/testing/selftests/filesystems/fat/
  
  VFIO DRIVER
  M:    Alex Williamson <[email protected]>
@@@ -21461,7 -21189,6 +21460,7 @@@ M:   Jason Wang <[email protected]
  L:    [email protected]
  S:    Maintained
  F:    Documentation/ABI/testing/sysfs-bus-vdpa
 +F:    Documentation/ABI/testing/sysfs-class-vduse
  F:    Documentation/devicetree/bindings/virtio/
  F:    drivers/block/virtio_blk.c
  F:    drivers/crypto/virtio/
@@@ -21642,10 -21369,12 +21641,10 @@@ M:        Martyn Welch <[email protected]
  M:    Manohar Vanga <[email protected]>
  M:    Greg Kroah-Hartman <[email protected]>
  L:    [email protected]
 -S:    Maintained
 +S:    Odd fixes
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
  F:    Documentation/driver-api/vme.rst
  F:    drivers/staging/vme_user/
 -F:    drivers/vme/
 -F:    include/linux/vme*
  
  VM SOCKETS (AF_VSOCK)
  M:    Stefano Garzarella <[email protected]>
  S:    Maintained
  F:    drivers/input/tablet/wacom_serial4.c
  
 +WANGXUN ETHERNET DRIVER
 +M:    Jiawen Wu <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/networking/device_drivers/ethernet/wangxun/txgbe.rst
 +F:    drivers/net/ethernet/wangxun/
 +
  WATCHDOG DEVICE DRIVERS
  M:    Wim Van Sebroeck <[email protected]>
  M:    Guenter Roeck <[email protected]>
@@@ -21878,13 -21600,13 +21877,13 @@@ S:        Maintaine
  F:    drivers/media/rc/winbond-cir.c
  
  WINSYSTEMS EBC-C384 WATCHDOG DRIVER
 -M:    William Breathitt Gray <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/watchdog/ebc-c384_wdt.c
  
  WINSYSTEMS WS16C48 GPIO DRIVER
 -M:    William Breathitt Gray <[email protected]>
 +M:    William Breathitt Gray <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/gpio/gpio-ws16c48.c
@@@ -22151,7 -21873,8 +22150,7 @@@ F:   include/uapi/linux/if_xdp.
  F:    include/uapi/linux/xdp_diag.h
  F:    include/net/netns/xdp.h
  F:    net/xdp/
 -F:    samples/bpf/xdpsock*
 -F:    tools/lib/bpf/xsk*
 +F:    tools/testing/selftests/bpf/*xsk*
  
  XEN BLOCK SUBSYSTEM
  M:    Roger Pau Monné <[email protected]>
@@@ -22391,7 -22114,7 +22390,7 @@@ F:   include/linux/yam.
  YAMA SECURITY MODULE
  M:    Kees Cook <[email protected]>
  S:    Supported
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git yama/tip
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/hardening
  F:    Documentation/admin-guide/LSM/Yama.rst
  F:    security/yama/
  
@@@ -22505,7 -22228,7 +22504,7 @@@ M:   Nitin Gupta <[email protected]
  R:    Sergey Senozhatsky <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/vm/zsmalloc.rst
 +F:    Documentation/mm/zsmalloc.rst
  F:    include/linux/zsmalloc.h
  F:    mm/zsmalloc.c
  
diff --combined Makefile
index dc6295f91263c28af96efa5094f76383161caf9f,a2a030f41e65825d7925afbe0b48822228389db1..60a7e3e8b4787d82941f9237c0689cd8d88413a4
+++ b/Makefile
@@@ -2,7 -2,7 +2,7 @@@
  VERSION = 5
  PATCHLEVEL = 19
  SUBLEVEL = 0
 -EXTRAVERSION = -rc6
 +EXTRAVERSION =
  NAME = Superb Owl
  
  # *DOCUMENTATION*
@@@ -129,6 -129,9 +129,9 @@@ endi
  $(if $(word 2, $(KBUILD_EXTMOD)), \
        $(error building multiple external modules is not supported))
  
+ $(foreach x, % :, $(if $(findstring $x, $(KBUILD_EXTMOD)), \
+       $(error module directory path cannot contain '$x')))
  # Remove trailing slashes
  ifneq ($(filter %/, $(KBUILD_EXTMOD)),)
  KBUILD_EXTMOD := $(shell dirname $(KBUILD_EXTMOD).)
@@@ -755,8 -758,6 +758,6 @@@ KBUILD_CFLAGS      += $(call cc-disable-warn
  
  ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE
  KBUILD_CFLAGS += -O2
- else ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3
- KBUILD_CFLAGS += -O3
  else ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
  KBUILD_CFLAGS += -Os
  endif
@@@ -1097,7 -1098,6 +1098,7 @@@ export MODULES_NSDEPS := $(extmod_prefi
  ifeq ($(KBUILD_EXTMOD),)
  core-y                        += kernel/ certs/ mm/ fs/ ipc/ security/ crypto/
  core-$(CONFIG_BLOCK)  += block/
 +core-$(CONFIG_IO_URING)       += io_uring/
  
  vmlinux-dirs  := $(patsubst %/,%,$(filter %/, \
                     $(core-y) $(core-m) $(drivers-y) $(drivers-m) \
@@@ -1348,10 -1348,10 +1349,10 @@@ tools/%: FORC
  # Kernel selftest
  
  PHONY += kselftest
 -kselftest:
 +kselftest: headers
        $(Q)$(MAKE) -C $(srctree)/tools/testing/selftests run_tests
  
 -kselftest-%: FORCE
 +kselftest-%: headers FORCE
        $(Q)$(MAKE) -C $(srctree)/tools/testing/selftests $*
  
  PHONY += kselftest-merge
@@@ -1370,16 -1370,21 +1371,21 @@@ endi
  
  ifneq ($(dtstree),)
  
- %.dtb: include/config/kernel.release scripts_dtc
+ %.dtb: dtbs_prepare
        $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@
  
- %.dtbo: include/config/kernel.release scripts_dtc
+ %.dtbo: dtbs_prepare
        $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@
  
- PHONY += dtbs dtbs_install dtbs_check
- dtbs: include/config/kernel.release scripts_dtc
+ PHONY += dtbs dtbs_prepare dtbs_install dtbs_check
+ dtbs: dtbs_prepare
        $(Q)$(MAKE) $(build)=$(dtstree)
  
+ # include/config/kernel.release is actually needed when installing DTBs because
+ # INSTALL_DTBS_PATH contains $(KERNELRELEASE). However, we do not want to make
+ # dtbs_install depend on it as dtbs_install may run as root.
+ dtbs_prepare: include/config/kernel.release scripts_dtc
  ifneq ($(filter dtbs_check, $(MAKECMDGOALS)),)
  export CHECK_DTBS=y
  dtbs: dt_binding_check
diff --combined init/Kconfig
index 922848a094d71addefa5f0bf141c47dc8a5bad8c,db5257bebc181a592a901f7e35a0cf171f5df43d..80fe60fa77fbaa9be5970c7b9fa87b2ffc77080e
@@@ -414,7 -414,7 +414,7 @@@ config WATCH_QUEU
          with watches for key/keyring change notifications and device
          notifications.
  
 -        See Documentation/watch_queue.rst
 +        See Documentation/core-api/watch_queue.rst
  
  config CROSS_MEMORY_ATTACH
        bool "Enable process_vm_readv/writev syscalls"
@@@ -494,11 -494,11 +494,11 @@@ config VIRT_CPU_ACCOUNTING_NATIV
  
  config VIRT_CPU_ACCOUNTING_GEN
        bool "Full dynticks CPU time accounting"
 -      depends on HAVE_CONTEXT_TRACKING
 +      depends on HAVE_CONTEXT_TRACKING_USER
        depends on HAVE_VIRT_CPU_ACCOUNTING_GEN
        depends on GENERIC_CLOCKEVENTS
        select VIRT_CPU_ACCOUNTING
 -      select CONTEXT_TRACKING
 +      select CONTEXT_TRACKING_USER
        help
          Select this option to enable task and CPU time accounting on full
          dynticks systems. This accounting is implemented by watching every
@@@ -945,16 -945,6 +945,16 @@@ if CGROUP
  config PAGE_COUNTER
        bool
  
 +config CGROUP_FAVOR_DYNMODS
 +        bool "Favor dynamic modification latency reduction by default"
 +        help
 +          This option enables the "favordynmods" mount option by default
 +          which reduces the latencies of dynamic cgroup modifications such
 +          as task migrations and controller on/offs at the cost of making
 +          hot path operations such as forks and exits more expensive.
 +
 +          Say N if unsure.
 +
  config MEMCG
        bool "Memory controller"
        select PAGE_COUNTER
@@@ -1411,13 -1401,6 +1411,6 @@@ config CC_OPTIMIZE_FOR_PERFORMANC
          with the "-O2" compiler flag for best performance and most
          helpful compile-time warnings.
  
- config CC_OPTIMIZE_FOR_PERFORMANCE_O3
-       bool "Optimize more for performance (-O3)"
-       depends on ARC
-       help
-         Choosing this option will pass "-O3" to your compiler to optimize
-         the kernel yet more for performance.
  config CC_OPTIMIZE_FOR_SIZE
        bool "Optimize for size (-Os)"
        help
@@@ -1491,7 -1474,6 +1484,7 @@@ config HAVE_PCSPKR_PLATFOR
  # interpreter that classic socket filters depend on
  config BPF
        bool
 +      select CRYPTO_LIB_SHA1
  
  menuconfig EXPERT
        bool "Configure standard kernel features (expert users)"
@@@ -1733,16 -1715,17 +1726,17 @@@ config KALLSYMS_AL
        help
          Normally kallsyms only contains the symbols of functions for nicer
          OOPS messages and backtraces (i.e., symbols from the text and inittext
-         sections). This is sufficient for most cases. And only in very rare
-         cases (e.g., when a debugger is used) all symbols are required (e.g.,
-         names of variables from the data sections, etc).
+         sections). This is sufficient for most cases. And only if you want to
+         enable kernel live patching, or other less common use cases (e.g.,
+         when a debugger is used) all symbols are required (i.e., names of
+         variables from the data sections, etc).
  
          This option makes sure that all symbols are loaded into the kernel
          image (i.e., symbols from all sections) in cost of increased kernel
          size (depending on the kernel configuration, it may be 300KiB or
          something like this).
  
-         Say N unless you really need all symbols.
+         Say N unless you really need all symbols, or kernel live patching.
  
  config KALLSYMS_ABSOLUTE_PERCPU
        bool
@@@ -1933,7 -1916,298 +1927,7 @@@ config MODULE_SIG_FORMA
        def_bool n
        select SYSTEM_DATA_VERIFICATION
  
 -menuconfig MODULES
 -      bool "Enable loadable module support"
 -      modules
 -      help
 -        Kernel modules are small pieces of compiled code which can
 -        be inserted in the running kernel, rather than being
 -        permanently built into the kernel.  You use the "modprobe"
 -        tool to add (and sometimes remove) them.  If you say Y here,
 -        many parts of the kernel can be built as modules (by
 -        answering M instead of Y where indicated): this is most
 -        useful for infrequently used options which are not required
 -        for booting.  For more information, see the man pages for
 -        modprobe, lsmod, modinfo, insmod and rmmod.
 -
 -        If you say Y here, you will need to run "make
 -        modules_install" to put the modules under /lib/modules/
 -        where modprobe can find them (you may need to be root to do
 -        this).
 -
 -        If unsure, say Y.
 -
 -if MODULES
 -
 -config MODULE_FORCE_LOAD
 -      bool "Forced module loading"
 -      default n
 -      help
 -        Allow loading of modules without version information (ie. modprobe
 -        --force).  Forced module loading sets the 'F' (forced) taint flag and
 -        is usually a really bad idea.
 -
 -config MODULE_UNLOAD
 -      bool "Module unloading"
 -      help
 -        Without this option you will not be able to unload any
 -        modules (note that some modules may not be unloadable
 -        anyway), which makes your kernel smaller, faster
 -        and simpler.  If unsure, say Y.
 -
 -config MODULE_FORCE_UNLOAD
 -      bool "Forced module unloading"
 -      depends on MODULE_UNLOAD
 -      help
 -        This option allows you to force a module to unload, even if the
 -        kernel believes it is unsafe: the kernel will remove the module
 -        without waiting for anyone to stop using it (using the -f option to
 -        rmmod).  This is mainly for kernel developers and desperate users.
 -        If unsure, say N.
 -
 -config MODULE_UNLOAD_TAINT_TRACKING
 -      bool "Tainted module unload tracking"
 -      depends on MODULE_UNLOAD
 -      default n
 -      help
 -        This option allows you to maintain a record of each unloaded
 -        module that tainted the kernel. In addition to displaying a
 -        list of linked (or loaded) modules e.g. on detection of a bad
 -        page (see bad_page()), the aforementioned details are also
 -        shown. If unsure, say N.
 -
 -config MODVERSIONS
 -      bool "Module versioning support"
 -      help
 -        Usually, you have to use modules compiled with your kernel.
 -        Saying Y here makes it sometimes possible to use modules
 -        compiled for different kernels, by adding enough information
 -        to the modules to (hopefully) spot any changes which would
 -        make them incompatible with the kernel you are running.  If
 -        unsure, say N.
 -
 -config ASM_MODVERSIONS
 -      bool
 -      default HAVE_ASM_MODVERSIONS && MODVERSIONS
 -      help
 -        This enables module versioning for exported symbols also from
 -        assembly. This can be enabled only when the target architecture
 -        supports it.
 -
 -config MODULE_SRCVERSION_ALL
 -      bool "Source checksum for all modules"
 -      help
 -        Modules which contain a MODULE_VERSION get an extra "srcversion"
 -        field inserted into their modinfo section, which contains a
 -        sum of the source files which made it.  This helps maintainers
 -        see exactly which source was used to build a module (since
 -        others sometimes change the module source without updating
 -        the version).  With this option, such a "srcversion" field
 -        will be created for all modules.  If unsure, say N.
 -
 -config MODULE_SIG
 -      bool "Module signature verification"
 -      select MODULE_SIG_FORMAT
 -      help
 -        Check modules for valid signatures upon load: the signature
 -        is simply appended to the module. For more information see
 -        <file:Documentation/admin-guide/module-signing.rst>.
 -
 -        Note that this option adds the OpenSSL development packages as a
 -        kernel build dependency so that the signing tool can use its crypto
 -        library.
 -
 -        You should enable this option if you wish to use either
 -        CONFIG_SECURITY_LOCKDOWN_LSM or lockdown functionality imposed via
 -        another LSM - otherwise unsigned modules will be loadable regardless
 -        of the lockdown policy.
 -
 -        !!!WARNING!!!  If you enable this option, you MUST make sure that the
 -        module DOES NOT get stripped after being signed.  This includes the
 -        debuginfo strip done by some packagers (such as rpmbuild) and
 -        inclusion into an initramfs that wants the module size reduced.
 -
 -config MODULE_SIG_FORCE
 -      bool "Require modules to be validly signed"
 -      depends on MODULE_SIG
 -      help
 -        Reject unsigned modules or signed modules for which we don't have a
 -        key.  Without this, such modules will simply taint the kernel.
 -
 -config MODULE_SIG_ALL
 -      bool "Automatically sign all modules"
 -      default y
 -      depends on MODULE_SIG || IMA_APPRAISE_MODSIG
 -      help
 -        Sign all modules during make modules_install. Without this option,
 -        modules must be signed manually, using the scripts/sign-file tool.
 -
 -comment "Do not forget to sign required modules with scripts/sign-file"
 -      depends on MODULE_SIG_FORCE && !MODULE_SIG_ALL
 -
 -choice
 -      prompt "Which hash algorithm should modules be signed with?"
 -      depends on MODULE_SIG || IMA_APPRAISE_MODSIG
 -      help
 -        This determines which sort of hashing algorithm will be used during
 -        signature generation.  This algorithm _must_ be built into the kernel
 -        directly so that signature verification can take place.  It is not
 -        possible to load a signed module containing the algorithm to check
 -        the signature on that module.
 -
 -config MODULE_SIG_SHA1
 -      bool "Sign modules with SHA-1"
 -      select CRYPTO_SHA1
 -
 -config MODULE_SIG_SHA224
 -      bool "Sign modules with SHA-224"
 -      select CRYPTO_SHA256
 -
 -config MODULE_SIG_SHA256
 -      bool "Sign modules with SHA-256"
 -      select CRYPTO_SHA256
 -
 -config MODULE_SIG_SHA384
 -      bool "Sign modules with SHA-384"
 -      select CRYPTO_SHA512
 -
 -config MODULE_SIG_SHA512
 -      bool "Sign modules with SHA-512"
 -      select CRYPTO_SHA512
 -
 -endchoice
 -
 -config MODULE_SIG_HASH
 -      string
 -      depends on MODULE_SIG || IMA_APPRAISE_MODSIG
 -      default "sha1" if MODULE_SIG_SHA1
 -      default "sha224" if MODULE_SIG_SHA224
 -      default "sha256" if MODULE_SIG_SHA256
 -      default "sha384" if MODULE_SIG_SHA384
 -      default "sha512" if MODULE_SIG_SHA512
 -
 -choice
 -      prompt "Module compression mode"
 -      help
 -        This option allows you to choose the algorithm which will be used to
 -        compress modules when 'make modules_install' is run. (or, you can
 -        choose to not compress modules at all.)
 -
 -        External modules will also be compressed in the same way during the
 -        installation.
 -
 -        For modules inside an initrd or initramfs, it's more efficient to
 -        compress the whole initrd or initramfs instead.
 -
 -        This is fully compatible with signed modules.
 -
 -        Please note that the tool used to load modules needs to support the
 -        corresponding algorithm. module-init-tools MAY support gzip, and kmod
 -        MAY support gzip, xz and zstd.
 -
 -        Your build system needs to provide the appropriate compression tool
 -        to compress the modules.
 -
 -        If in doubt, select 'None'.
 -
 -config MODULE_COMPRESS_NONE
 -      bool "None"
 -      help
 -        Do not compress modules. The installed modules are suffixed
 -        with .ko.
 -
 -config MODULE_COMPRESS_GZIP
 -      bool "GZIP"
 -      help
 -        Compress modules with GZIP. The installed modules are suffixed
 -        with .ko.gz.
 -
 -config MODULE_COMPRESS_XZ
 -      bool "XZ"
 -      help
 -        Compress modules with XZ. The installed modules are suffixed
 -        with .ko.xz.
 -
 -config MODULE_COMPRESS_ZSTD
 -      bool "ZSTD"
 -      help
 -        Compress modules with ZSTD. The installed modules are suffixed
 -        with .ko.zst.
 -
 -endchoice
 -
 -config MODULE_DECOMPRESS
 -      bool "Support in-kernel module decompression"
 -      depends on MODULE_COMPRESS_GZIP || MODULE_COMPRESS_XZ
 -      select ZLIB_INFLATE if MODULE_COMPRESS_GZIP
 -      select XZ_DEC if MODULE_COMPRESS_XZ
 -      help
 -
 -        Support for decompressing kernel modules by the kernel itself
 -        instead of relying on userspace to perform this task. Useful when
 -        load pinning security policy is enabled.
 -
 -        If unsure, say N.
 -
 -config MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS
 -      bool "Allow loading of modules with missing namespace imports"
 -      help
 -        Symbols exported with EXPORT_SYMBOL_NS*() are considered exported in
 -        a namespace. A module that makes use of a symbol exported with such a
 -        namespace is required to import the namespace via MODULE_IMPORT_NS().
 -        There is no technical reason to enforce correct namespace imports,
 -        but it creates consistency between symbols defining namespaces and
 -        users importing namespaces they make use of. This option relaxes this
 -        requirement and lifts the enforcement when loading a module.
 -
 -        If unsure, say N.
 -
 -config MODPROBE_PATH
 -      string "Path to modprobe binary"
 -      default "/sbin/modprobe"
 -      help
 -        When kernel code requests a module, it does so by calling
 -        the "modprobe" userspace utility. This option allows you to
 -        set the path where that binary is found. This can be changed
 -        at runtime via the sysctl file
 -        /proc/sys/kernel/modprobe. Setting this to the empty string
 -        removes the kernel's ability to request modules (but
 -        userspace can still load modules explicitly).
 -
 -config TRIM_UNUSED_KSYMS
 -      bool "Trim unused exported kernel symbols" if EXPERT
 -      depends on !COMPILE_TEST
 -      help
 -        The kernel and some modules make many symbols available for
 -        other modules to use via EXPORT_SYMBOL() and variants. Depending
 -        on the set of modules being selected in your kernel configuration,
 -        many of those exported symbols might never be used.
 -
 -        This option allows for unused exported symbols to be dropped from
 -        the build. In turn, this provides the compiler more opportunities
 -        (especially when using LTO) for optimizing the code and reducing
 -        binary size.  This might have some security advantages as well.
 -
 -        If unsure, or if you need to build out-of-tree modules, say N.
 -
 -config UNUSED_KSYMS_WHITELIST
 -      string "Whitelist of symbols to keep in ksymtab"
 -      depends on TRIM_UNUSED_KSYMS
 -      help
 -        By default, all unused exported symbols will be un-exported from the
 -        build when TRIM_UNUSED_KSYMS is selected.
 -
 -        UNUSED_KSYMS_WHITELIST allows to whitelist symbols that must be kept
 -        exported at all times, even in absence of in-tree users. The value to
 -        set here is the path to a text file containing the list of symbols,
 -        one per line. The path can be absolute, or relative to the kernel
 -        source tree.
 -
 -endif # MODULES
 -
 -config MODULES_TREE_LOOKUP
 -      def_bool y
 -      depends on PERF_EVENTS || TRACING || CFI_CLANG
 +source "kernel/module/Kconfig"
  
  config INIT_ALL_POSSIBLE
        bool
diff --combined scripts/mod/modpost.c
index 29474cee10b1c004e0863bea0cfaff948062d0ef,8484c0798f281c295a205ba1780c8605c1faa590..55e32af2e53f00ffee3eefde10b3ba3e94cb92ab
@@@ -321,13 -321,10 +321,10 @@@ static void *sym_get_data_by_offset(con
  {
        Elf_Shdr *sechdr = &info->sechdrs[secindex];
  
-       if (info->hdr->e_type != ET_REL)
-               offset -= sechdr->sh_addr;
        return (void *)info->hdr + sechdr->sh_offset + offset;
  }
  
static void *sym_get_data(const struct elf_info *info, const Elf_Sym *sym)
+ void *sym_get_data(const struct elf_info *info, const Elf_Sym *sym)
  {
        return sym_get_data_by_offset(info, get_secindex(info, sym),
                                      sym->st_value);
@@@ -339,8 -336,16 +336,16 @@@ static const char *sech_name(const stru
                                      sechdr->sh_name);
  }
  
- static const char *sec_name(const struct elf_info *info, int secindex)
+ static const char *sec_name(const struct elf_info *info, unsigned int secindex)
  {
+       /*
+        * If sym->st_shndx is a special section index, there is no
+        * corresponding section header.
+        * Return "" if the index is out of range of info->sechdrs[] array.
+        */
+       if (secindex >= info->num_sections)
+               return "";
        return sech_name(info, &info->sechdrs[secindex]);
  }
  
@@@ -466,6 -471,10 +471,10 @@@ static int parse_elf(struct elf_info *i
        sechdrs = (void *)hdr + hdr->e_shoff;
        info->sechdrs = sechdrs;
  
+       /* modpost only works for relocatable objects */
+       if (hdr->e_type != ET_REL)
+               fatal("%s: not relocatable object.", filename);
        /* Check if file offset is correct */
        if (hdr->e_shoff > info->size) {
                fatal("section header offset=%lu in file '%s' is bigger than filesize=%zu\n",
@@@ -737,12 -746,18 +746,18 @@@ static bool match(const char *string, c
        return false;
  }
  
+ /* useful to pass patterns to match() directly */
+ #define PATTERNS(...) \
+       ({ \
+               static const char *const patterns[] = {__VA_ARGS__, NULL}; \
+               patterns; \
+       })
  /* sections that we do not want to do full section mismatch check on */
  static const char *const section_white_list[] =
  {
        ".comment*",
        ".debug*",
-       ".cranges",             /* sh64 */
        ".zdebug*",             /* Compressed debug sections. */
        ".GCC.command.line",    /* record-gcc-switches */
        ".mdebug*",        /* alpha, score, mips etc. */
@@@ -830,28 -845,12 +845,12 @@@ static const char *const init_data_sect
  /* all init sections */
  static const char *const init_sections[] = { ALL_INIT_SECTIONS, NULL };
  
- /* All init and exit sections (code + data) */
- static const char *const init_exit_sections[] =
-       {ALL_INIT_SECTIONS, ALL_EXIT_SECTIONS, NULL };
  /* all text sections */
  static const char *const text_sections[] = { ALL_TEXT_SECTIONS, NULL };
  
  /* data section */
  static const char *const data_sections[] = { DATA_SECTIONS, NULL };
  
- /* symbols in .data that may refer to init/exit sections */
- #define DEFAULT_SYMBOL_WHITE_LIST                                     \
-       "*driver",                                                      \
-       "*_template", /* scsi uses *_template a lot */                  \
-       "*_timer",    /* arm uses ops structures named _timer a lot */  \
-       "*_sht",      /* scsi also used *_sht to some extent */         \
-       "*_ops",                                                        \
-       "*_probe",                                                      \
-       "*_probe_one",                                                  \
-       "*_console"
  static const char *const head_sections[] = { ".head.text*", NULL };
  static const char *const linker_symbols[] =
        { "__init_begin", "_sinittext", "_einittext", NULL };
@@@ -883,9 -882,6 +882,6 @@@ enum mismatch 
   *
   * @mismatch: Type of mismatch.
   *
-  * @symbol_white_list: Do not match a relocation to a symbol in this list
-  * even if it is targeting a section in @bad_to_sec.
-  *
   * @handler: Specific handler to call when a match is found.  If NULL,
   * default_mismatch_handler() will be called.
   *
@@@ -895,7 -891,6 +891,6 @@@ struct sectioncheck 
        const char *bad_tosec[20];
        const char *good_tosec[20];
        enum mismatch mismatch;
-       const char *symbol_white_list[20];
        void (*handler)(const char *modname, struct elf_info *elf,
                        const struct sectioncheck* const mismatch,
                        Elf_Rela *r, Elf_Sym *sym, const char *fromsec);
@@@ -915,75 -910,61 +910,61 @@@ static const struct sectioncheck sectio
        .fromsec = { TEXT_SECTIONS, NULL },
        .bad_tosec = { ALL_INIT_SECTIONS, NULL },
        .mismatch = TEXT_TO_ANY_INIT,
-       .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
  },
  {
        .fromsec = { DATA_SECTIONS, NULL },
        .bad_tosec = { ALL_XXXINIT_SECTIONS, NULL },
        .mismatch = DATA_TO_ANY_INIT,
-       .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
  },
  {
        .fromsec = { DATA_SECTIONS, NULL },
        .bad_tosec = { INIT_SECTIONS, NULL },
        .mismatch = DATA_TO_ANY_INIT,
-       .symbol_white_list = {
-               "*_template", "*_timer", "*_sht", "*_ops",
-               "*_probe", "*_probe_one", "*_console", NULL
-       },
  },
  {
        .fromsec = { TEXT_SECTIONS, NULL },
        .bad_tosec = { ALL_EXIT_SECTIONS, NULL },
        .mismatch = TEXT_TO_ANY_EXIT,
-       .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
  },
  {
        .fromsec = { DATA_SECTIONS, NULL },
        .bad_tosec = { ALL_EXIT_SECTIONS, NULL },
        .mismatch = DATA_TO_ANY_EXIT,
-       .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
  },
  /* Do not reference init code/data from meminit code/data */
  {
        .fromsec = { ALL_XXXINIT_SECTIONS, NULL },
        .bad_tosec = { INIT_SECTIONS, NULL },
        .mismatch = XXXINIT_TO_SOME_INIT,
-       .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
  },
  /* Do not reference exit code/data from memexit code/data */
  {
        .fromsec = { ALL_XXXEXIT_SECTIONS, NULL },
        .bad_tosec = { EXIT_SECTIONS, NULL },
        .mismatch = XXXEXIT_TO_SOME_EXIT,
-       .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
  },
  /* Do not use exit code/data from init code */
  {
        .fromsec = { ALL_INIT_SECTIONS, NULL },
        .bad_tosec = { ALL_EXIT_SECTIONS, NULL },
        .mismatch = ANY_INIT_TO_ANY_EXIT,
-       .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
  },
  /* Do not use init code/data from exit code */
  {
        .fromsec = { ALL_EXIT_SECTIONS, NULL },
        .bad_tosec = { ALL_INIT_SECTIONS, NULL },
        .mismatch = ANY_EXIT_TO_ANY_INIT,
-       .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
  },
  {
        .fromsec = { ALL_PCI_INIT_SECTIONS, NULL },
        .bad_tosec = { INIT_SECTIONS, NULL },
        .mismatch = ANY_INIT_TO_ANY_EXIT,
-       .symbol_white_list = { NULL },
  },
  /* Do not export init/exit functions or data */
  {
        .fromsec = { "___ksymtab*", NULL },
        .bad_tosec = { INIT_SECTIONS, EXIT_SECTIONS, NULL },
        .mismatch = EXPORT_TO_INIT_EXIT,
-       .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
  },
  {
        .fromsec = { "__ex_table", NULL },
@@@ -1044,15 -1025,6 +1025,6 @@@ static const struct sectioncheck *secti
   *   fromsec = .data*
   *   atsym   = __param_ops_*
   *
-  * Pattern 2:
-  *   Many drivers utilise a *driver container with references to
-  *   add, remove, probe functions etc.
-  *   the pattern is identified by:
-  *   tosec   = init or exit section
-  *   fromsec = data section
-  *   atsym = *driver, *_template, *_sht, *_ops, *_probe,
-  *           *probe_one, *_console, *_timer
-  *
   * Pattern 3:
   *   Whitelist all references from .head.text to any init section
   *
@@@ -1101,10 -1073,22 +1073,22 @@@ static int secref_whitelist(const struc
            strstarts(fromsym, "__param_ops_"))
                return 0;
  
-       /* Check for pattern 2 */
-       if (match(tosec, init_exit_sections) &&
-           match(fromsec, data_sections) &&
-           match(fromsym, mismatch->symbol_white_list))
+       /* symbols in data sections that may refer to any init/exit sections */
+       if (match(fromsec, PATTERNS(DATA_SECTIONS)) &&
+           match(tosec, PATTERNS(ALL_INIT_SECTIONS, ALL_EXIT_SECTIONS)) &&
+           match(fromsym, PATTERNS("*_template", // scsi uses *_template a lot
+                                   "*_timer", // arm uses ops structures named _timer a lot
+                                   "*_sht", // scsi also used *_sht to some extent
+                                   "*_ops",
+                                   "*_probe",
+                                   "*_probe_one",
+                                   "*_console")))
+               return 0;
+       /* symbols in data sections that may refer to meminit/exit sections */
+       if (match(fromsec, PATTERNS(DATA_SECTIONS)) &&
+           match(tosec, PATTERNS(ALL_XXXINIT_SECTIONS, ALL_EXIT_SECTIONS)) &&
+           match(fromsym, PATTERNS("*driver")))
                return 0;
  
        /* Check for pattern 3 */
@@@ -1230,42 -1214,6 +1214,6 @@@ static Elf_Sym *find_elf_symbol2(struc
        return near;
  }
  
- /*
-  * Convert a section name to the function/data attribute
-  * .init.text => __init
-  * .memexitconst => __memconst
-  * etc.
-  *
-  * The memory of returned value has been allocated on a heap. The user of this
-  * method should free it after usage.
- */
- static char *sec2annotation(const char *s)
- {
-       if (match(s, init_exit_sections)) {
-               char *p = NOFAIL(malloc(20));
-               char *r = p;
-               *p++ = '_';
-               *p++ = '_';
-               if (*s == '.')
-                       s++;
-               while (*s && *s != '.')
-                       *p++ = *s++;
-               *p = '\0';
-               if (*s == '.')
-                       s++;
-               if (strstr(s, "rodata") != NULL)
-                       strcat(p, "const ");
-               else if (strstr(s, "data") != NULL)
-                       strcat(p, "data ");
-               else
-                       strcat(p, " ");
-               return r;
-       } else {
-               return NOFAIL(strdup(""));
-       }
- }
  static int is_function(Elf_Sym *sym)
  {
        if (sym)
                return -1;
  }
  
- static void print_section_list(const char * const list[20])
- {
-       const char *const *s = list;
-       while (*s) {
-               fprintf(stderr, "%s", *s);
-               s++;
-               if (*s)
-                       fprintf(stderr, ", ");
-       }
-       fprintf(stderr, "\n");
- }
  static inline void get_pretty_name(int is_func, const char** name, const char** name_p)
  {
        switch (is_func) {
  static void report_sec_mismatch(const char *modname,
                                const struct sectioncheck *mismatch,
                                const char *fromsec,
-                               unsigned long long fromaddr,
                                const char *fromsym,
-                               int from_is_func,
-                               const char *tosec, const char *tosym,
-                               int to_is_func)
+                               const char *tosec, const char *tosym)
  {
-       const char *from, *from_p;
-       const char *to, *to_p;
-       char *prl_from;
-       char *prl_to;
        sec_mismatch_count++;
  
-       get_pretty_name(from_is_func, &from, &from_p);
-       get_pretty_name(to_is_func, &to, &to_p);
-       warn("%s(%s+0x%llx): Section mismatch in reference from the %s %s%s "
-            "to the %s %s:%s%s\n",
-            modname, fromsec, fromaddr, from, fromsym, from_p, to, tosec,
-            tosym, to_p);
        switch (mismatch->mismatch) {
        case TEXT_TO_ANY_INIT:
-               prl_from = sec2annotation(fromsec);
-               prl_to = sec2annotation(tosec);
-               fprintf(stderr,
-               "The function %s%s() references\n"
-               "the %s %s%s%s.\n"
-               "This is often because %s lacks a %s\n"
-               "annotation or the annotation of %s is wrong.\n",
-               prl_from, fromsym,
-               to, prl_to, tosym, to_p,
-               fromsym, prl_to, tosym);
-               free(prl_from);
-               free(prl_to);
-               break;
-       case DATA_TO_ANY_INIT: {
-               prl_to = sec2annotation(tosec);
-               fprintf(stderr,
-               "The variable %s references\n"
-               "the %s %s%s%s\n"
-               "If the reference is valid then annotate the\n"
-               "variable with __init* or __refdata (see linux/init.h) "
-               "or name the variable:\n",
-               fromsym, to, prl_to, tosym, to_p);
-               print_section_list(mismatch->symbol_white_list);
-               free(prl_to);
-               break;
-       }
+       case DATA_TO_ANY_INIT:
        case TEXT_TO_ANY_EXIT:
-               prl_to = sec2annotation(tosec);
-               fprintf(stderr,
-               "The function %s() references a %s in an exit section.\n"
-               "Often the %s %s%s has valid usage outside the exit section\n"
-               "and the fix is to remove the %sannotation of %s.\n",
-               fromsym, to, to, tosym, to_p, prl_to, tosym);
-               free(prl_to);
-               break;
-       case DATA_TO_ANY_EXIT: {
-               prl_to = sec2annotation(tosec);
-               fprintf(stderr,
-               "The variable %s references\n"
-               "the %s %s%s%s\n"
-               "If the reference is valid then annotate the\n"
-               "variable with __exit* (see linux/init.h) or "
-               "name the variable:\n",
-               fromsym, to, prl_to, tosym, to_p);
-               print_section_list(mismatch->symbol_white_list);
-               free(prl_to);
-               break;
-       }
+       case DATA_TO_ANY_EXIT:
        case XXXINIT_TO_SOME_INIT:
        case XXXEXIT_TO_SOME_EXIT:
-               prl_from = sec2annotation(fromsec);
-               prl_to = sec2annotation(tosec);
-               fprintf(stderr,
-               "The %s %s%s%s references\n"
-               "a %s %s%s%s.\n"
-               "If %s is only used by %s then\n"
-               "annotate %s with a matching annotation.\n",
-               from, prl_from, fromsym, from_p,
-               to, prl_to, tosym, to_p,
-               tosym, fromsym, tosym);
-               free(prl_from);
-               free(prl_to);
-               break;
        case ANY_INIT_TO_ANY_EXIT:
-               prl_from = sec2annotation(fromsec);
-               prl_to = sec2annotation(tosec);
-               fprintf(stderr,
-               "The %s %s%s%s references\n"
-               "a %s %s%s%s.\n"
-               "This is often seen when error handling "
-               "in the init function\n"
-               "uses functionality in the exit path.\n"
-               "The fix is often to remove the %sannotation of\n"
-               "%s%s so it may be used outside an exit section.\n",
-               from, prl_from, fromsym, from_p,
-               to, prl_to, tosym, to_p,
-               prl_to, tosym, to_p);
-               free(prl_from);
-               free(prl_to);
-               break;
        case ANY_EXIT_TO_ANY_INIT:
-               prl_from = sec2annotation(fromsec);
-               prl_to = sec2annotation(tosec);
-               fprintf(stderr,
-               "The %s %s%s%s references\n"
-               "a %s %s%s%s.\n"
-               "This is often seen when error handling "
-               "in the exit function\n"
-               "uses functionality in the init path.\n"
-               "The fix is often to remove the %sannotation of\n"
-               "%s%s so it may be used outside an init section.\n",
-               from, prl_from, fromsym, from_p,
-               to, prl_to, tosym, to_p,
-               prl_to, tosym, to_p);
-               free(prl_from);
-               free(prl_to);
+               warn("%s: section mismatch in reference: %s (section: %s) -> %s (section: %s)\n",
+                    modname, fromsym, fromsec, tosym, tosec);
                break;
        case EXPORT_TO_INIT_EXIT:
-               prl_to = sec2annotation(tosec);
-               fprintf(stderr,
-               "The symbol %s is exported and annotated %s\n"
-               "Fix this by removing the %sannotation of %s "
-               "or drop the export.\n",
-               tosym, prl_to, prl_to, tosym);
-               free(prl_to);
+               warn("%s: EXPORT_SYMBOL used for init/exit symbol: %s (section: %s)\n",
+                    modname, tosym, tosec);
                break;
        case EXTABLE_TO_NON_TEXT:
-               fatal("There's a special handler for this mismatch type, "
-                     "we should never get here.");
+               fatal("There's a special handler for this mismatch type, we should never get here.\n");
                break;
        }
-       fprintf(stderr, "\n");
  }
  
  static void default_mismatch_handler(const char *modname, struct elf_info *elf,
        from = find_elf_symbol2(elf, r->r_offset, fromsec);
        fromsym = sym_name(elf, from);
  
-       if (strstarts(fromsym, "reference___initcall"))
-               return;
        tosec = sec_name(elf, get_secindex(elf, sym));
        to = find_elf_symbol(elf, r->r_addend, sym);
        tosym = sym_name(elf, to);
        if (secref_whitelist(mismatch,
                             fromsec, fromsym, tosec, tosym)) {
                report_sec_mismatch(modname, mismatch,
-                                   fromsec, r->r_offset, fromsym,
-                                   is_function(from), tosec, tosym,
-                                   is_function(to));
+                                   fromsec, fromsym, tosec, tosym);
        }
  }
  
@@@ -1623,9 -1443,6 +1443,6 @@@ static int addend_386_rel(struct elf_in
                break;
        case R_386_PC32:
                r->r_addend = TO_NATIVE(*location) + 4;
-               /* For CONFIG_RELOCATABLE=y */
-               if (elf->hdr->e_type == ET_EXEC)
-                       r->r_addend += r->r_offset;
                break;
        }
        return 0;
@@@ -1718,8 -1535,7 +1535,7 @@@ static void section_rela(const char *mo
        Elf_Rela *start = (void *)elf->hdr + sechdr->sh_offset;
        Elf_Rela *stop  = (void *)start + sechdr->sh_size;
  
-       fromsec = sech_name(elf, sechdr);
-       fromsec += strlen(".rela");
+       fromsec = sec_name(elf, sechdr->sh_info);
        /* if from section (name) is know good then skip it */
        if (match(fromsec, section_white_list))
                return;
@@@ -1771,8 -1587,7 +1587,7 @@@ static void section_rel(const char *mod
        Elf_Rel *start = (void *)elf->hdr + sechdr->sh_offset;
        Elf_Rel *stop  = (void *)start + sechdr->sh_size;
  
-       fromsec = sech_name(elf, sechdr);
-       fromsec += strlen(".rel");
+       fromsec = sec_name(elf, sechdr->sh_info);
        /* if from section (name) is know good then skip it */
        if (match(fromsec, section_white_list))
                return;
@@@ -2191,9 -2006,6 +2006,9 @@@ static void add_header(struct buffer *b
  
        if (strstarts(mod->name, "drivers/staging"))
                buf_printf(b, "\nMODULE_INFO(staging, \"Y\");\n");
 +
 +      if (strstarts(mod->name, "tools/testing"))
 +              buf_printf(b, "\nMODULE_INFO(test, \"Y\");\n");
  }
  
  static void add_exported_symbols(struct buffer *buf, struct module *mod)
This page took 0.237807 seconds and 4 git commands to generate.