Merge tag 'locking-urgent-2020-12-27' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <torvalds@linux-foundation.org>
Sun, 27 Dec 2020 17:06:10 +0000 (09:06 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 27 Dec 2020 17:06:10 +0000 (09:06 -0800)
Pull locking fixes from Ingo Molnar:
 "Misc fixes/updates:

   - Fix static keys usage in module __init sections

   - Add separate MAINTAINERS entry for static branches/calls

   - Fix lockdep splat with CONFIG_PREEMPTIRQ_EVENTS=y tracing"

* tag 'locking-urgent-2020-12-27' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  softirq: Avoid bad tracing / lockdep interaction
  jump_label/static_call: Add MAINTAINERS
  jump_label: Fix usage in module __init

1  2 
MAINTAINERS
kernel/softirq.c

diff --combined MAINTAINERS
@@@ -929,12 -929,6 +929,12 @@@ L:       linux-i2c@vger.kernel.or
  S:    Maintained
  F:    drivers/i2c/busses/i2c-amd-mp2*
  
 +AMD PMC DRIVER
 +M:    Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
 +L:    platform-driver-x86@vger.kernel.org
 +S:    Maintained
 +F:    drivers/platform/x86/amd-pmc.*
 +
  AMD POWERPLAY
  M:    Evan Quan <evan.quan@amd.com>
  L:    amd-gfx@lists.freedesktop.org
@@@ -956,14 -950,6 +956,14 @@@ S:       Supporte
  F:    arch/arm64/boot/dts/amd/amd-seattle-xgbe*.dtsi
  F:    drivers/net/ethernet/amd/xgbe/
  
 +AMD SENSOR FUSION HUB DRIVER
 +M:    Nehal Shah <nehal-bakulchandra.shah@amd.com>
 +M:    Sandeep Singh <sandeep.singh@amd.com>
 +L:    linux-input@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/hid/amd-sfh*
 +F:    drivers/hid/amd-sfh-hid/
 +
  AMS AS73211 DRIVER
  M:    Christian Eggers <ceggers@arri.de>
  L:    linux-iio@vger.kernel.org
@@@ -1087,7 -1073,6 +1087,7 @@@ M:      Hans Verkuil <hverkuil-cisco@xs4all.
  L:    linux-media@vger.kernel.org
  S:    Maintained
  F:    drivers/media/i2c/adv7604*
 +F:    Documentation/devicetree/bindings/media/i2c/adv7604.yaml
  
  ANALOG DEVICES INC ADV7842 DRIVER
  M:    Hans Verkuil <hverkuil-cisco@xs4all.nl>
@@@ -1183,11 -1168,21 +1183,11 @@@ F:   Documentation/devicetree/bindings/in
  F:    drivers/irqchip/irq-goldfish-pic.c
  
  ANDROID GOLDFISH RTC DRIVER
 -M:    Miodrag Dinic <miodrag.dinic@mips.com>
 +M:    Jiaxun Yang <jiaxun.yang@flygoat.com>
  S:    Supported
  F:    Documentation/devicetree/bindings/rtc/google,goldfish-rtc.txt
  F:    drivers/rtc/rtc-goldfish.c
  
 -ANDROID ION DRIVER
 -M:    Laura Abbott <labbott@redhat.com>
 -M:    Sumit Semwal <sumit.semwal@linaro.org>
 -L:    devel@driverdev.osuosl.org
 -L:    dri-devel@lists.freedesktop.org
 -L:    linaro-mm-sig@lists.linaro.org (moderated for non-subscribers)
 -S:    Supported
 -F:    drivers/staging/android/ion
 -F:    drivers/staging/android/uapi/ion.h
 -
  AOA (Apple Onboard Audio) ALSA DRIVER
  M:    Johannes Berg <johannes@sipsolutions.net>
  L:    linuxppc-dev@lists.ozlabs.org
@@@ -1516,7 -1511,7 +1516,7 @@@ S:      Maintaine
  F:    Documentation/devicetree/bindings/arm/actions.yaml
  F:    Documentation/devicetree/bindings/clock/actions,owl-cmu.txt
  F:    Documentation/devicetree/bindings/dma/owl-dma.yaml
 -F:    Documentation/devicetree/bindings/i2c/i2c-owl.txt
 +F:    Documentation/devicetree/bindings/i2c/i2c-owl.yaml
  F:    Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml
  F:    Documentation/devicetree/bindings/mmc/owl-mmc.yaml
  F:    Documentation/devicetree/bindings/pinctrl/actions,*
@@@ -1807,6 -1802,14 +1807,6 @@@ F:     drivers/firmware/turris-mox-rwtm.
  F:    drivers/gpio/gpio-moxtet.c
  F:    include/linux/moxtet.h
  
 -ARM/EBSA110 MACHINE SUPPORT
 -M:    Russell King <linux@armlinux.org.uk>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -W:    http://www.armlinux.org.uk/
 -F:    arch/arm/mach-ebsa110/
 -F:    drivers/net/ethernet/amd/am79c961a.*
 -
  ARM/ENERGY MICRO (SILICON LABS) EFM32 SUPPORT
  M:    Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
  R:    Pengutronix Kernel Team <kernel@pengutronix.de>
@@@ -2026,7 -2029,7 +2026,7 @@@ M:      Sebastian Hesselbarth <sebastian.hes
  M:    Gregory Clement <gregory.clement@bootlin.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
 -T:    git git://git.infradead.org/linux-mvebu.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu.git
  F:    Documentation/devicetree/bindings/soc/dove/
  F:    arch/arm/boot/dts/dove*
  F:    arch/arm/boot/dts/orion5x*
@@@ -2042,7 -2045,7 +2042,7 @@@ M:      Gregory Clement <gregory.clement@boo
  M:    Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
 -T:    git git://git.infradead.org/linux-mvebu.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu.git
  F:    arch/arm/boot/dts/armada*
  F:    arch/arm/boot/dts/kirkwood*
  F:    arch/arm/configs/mvebu_*_defconfig
@@@ -2074,7 -2077,7 +2074,7 @@@ M:      Matthias Brugger <matthias.bgg@gmail
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-mediatek@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
 -W:    https://mtk.bcnfs.org/
 +W:    https://mtk.wiki.kernel.org/
  C:    irc://chat.freenode.net/linux-mediatek
  F:    arch/arm/boot/dts/mt6*
  F:    arch/arm/boot/dts/mt7*
@@@ -2124,16 -2127,8 +2124,16 @@@ L:    linux-arm-kernel@lists.infradead.or
  S:    Supported
  T:    git git://github.com/microchip-ung/linux-upstream.git
  F:    arch/arm64/boot/dts/microchip/
 +F:    drivers/pinctrl/pinctrl-microchip-sgpio.c
  N:    sparx5
  
 +Microchip Timer Counter Block (TCB) Capture Driver
 +M:    Kamel Bouhara <kamel.bouhara@bootlin.com>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +L:    linux-iio@vger.kernel.org
 +S:    Maintained
 +F:    drivers/counter/microchip-tcb-capture.c
 +
  ARM/MIOA701 MACHINE SUPPORT
  M:    Robert Jarzmik <robert.jarzmik@free.fr>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2146,11 -2141,8 +2146,11 @@@ L:    linux-arm-kernel@lists.infradead.or
  S:    Maintained
  W:    http://linux-chenxing.org/
  F:    Documentation/devicetree/bindings/arm/mstar/*
 +F:    Documentation/devicetree/bindings/gpio/mstar,msc313-gpio.yaml
  F:    arch/arm/boot/dts/mstar-*
  F:    arch/arm/mach-mstar/
 +F:    drivers/gpio/gpio-msc313.c
 +F:    include/dt-bindings/gpio/msc313-gpio.h
  
  ARM/NEC MOBILEPRO 900/c MACHINE SUPPORT
  M:    Michael Petchkovsky <mkpetch@internode.on.net>
@@@ -2492,7 -2484,7 +2492,7 @@@ F:      drivers/clk/socfpga
  ARM/SOCFPGA EDAC SUPPORT
  M:    Dinh Nguyen <dinguyen@kernel.org>
  S:    Maintained
 -F:    drivers/edac/altera_edac.
 +F:    drivers/edac/altera_edac.[ch]
  
  ARM/SPREADTRUM SoC SUPPORT
  M:    Orson Zhai <orsonzhai@gmail.com>
@@@ -2970,7 -2962,7 +2970,7 @@@ ATMEL MAXTOUCH DRIVE
  M:    Nick Dyer <nick@shmanahar.org>
  S:    Maintained
  T:    git git://github.com/ndyer/linux.git
 -F:    Documentation/devicetree/bindings/input/atmel,maxtouch.txt
 +F:    Documentation/devicetree/bindings/input/atmel,maxtouch.yaml
  F:    drivers/input/touchscreen/atmel_mxt_ts.c
  
  ATMEL WIRELESS DRIVER
@@@ -2989,8 -2981,6 +2989,8 @@@ L:      linux-kernel@vger.kernel.or
  S:    Maintained
  F:    arch/*/include/asm/atomic*.h
  F:    include/*/atomic*.h
 +F:    include/linux/refcount.h
 +F:    Documentation/atomic_*.txt
  F:    scripts/atomic/
  
  ATTO EXPRESSSAS SAS/SATA RAID SCSI DRIVER
@@@ -3129,6 -3119,8 +3129,6 @@@ Q:      https://patchwork.open-mesh.org/proj
  B:    https://www.open-mesh.org/projects/batman-adv/issues
  C:    irc://chat.freenode.net/batman
  T:    git https://git.open-mesh.org/linux-merge.git
 -F:    Documentation/ABI/obsolete/sysfs-class-net-batman-adv
 -F:    Documentation/ABI/obsolete/sysfs-class-net-mesh
  F:    Documentation/networking/batman-adv.rst
  F:    include/uapi/linux/batadv_packet.h
  F:    include/uapi/linux/batman_adv.h
@@@ -3199,7 -3191,6 +3199,7 @@@ S:      Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git
  F:    block/
  F:    drivers/block/
 +F:    fs/block_dev.c
  F:    include/linux/blk*
  F:    kernel/trace/blktrace.c
  F:    lib/sbitmap.c
@@@ -3213,9 -3204,8 +3213,9 @@@ F:      drivers/mtd/devices/block2mtd.
  BLUETOOTH DRIVERS
  M:    Marcel Holtmann <marcel@holtmann.org>
  M:    Johan Hedberg <johan.hedberg@gmail.com>
 +M:    Luiz Augusto von Dentz <luiz.dentz@gmail.com>
  L:    linux-bluetooth@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  W:    http://www.bluez.org/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git
@@@ -3224,9 -3214,8 +3224,9 @@@ F:      drivers/bluetooth
  BLUETOOTH SUBSYSTEM
  M:    Marcel Holtmann <marcel@holtmann.org>
  M:    Johan Hedberg <johan.hedberg@gmail.com>
 +M:    Luiz Augusto von Dentz <luiz.dentz@gmail.com>
  L:    linux-bluetooth@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  W:    http://www.bluez.org/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git
@@@ -3398,7 -3387,7 +3398,7 @@@ M:      Florian Fainelli <f.fainelli@gmail.c
  L:    netdev@vger.kernel.org
  L:    openwrt-devel@lists.openwrt.org (subscribers-only)
  S:    Supported
 -F:    Documentation/devicetree/bindings/net/dsa/b53.txt
 +F:    Documentation/devicetree/bindings/net/dsa/brcm,b53.yaml
  F:    drivers/net/dsa/b53/*
  F:    include/linux/platform_data/b53.h
  
@@@ -3591,14 -3580,6 +3591,14 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/usb/brcm,bcm7445-ehci.yaml
  F:    drivers/usb/host/ehci-brcm.*
  
 +BROADCOM BRCMSTB USB PIN MAP DRIVER
 +M:    Al Cooper <alcooperx@gmail.com>
 +L:    linux-usb@vger.kernel.org
 +L:    bcm-kernel-feedback-list@broadcom.com
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/usb/brcm,usb-pinmap.yaml
 +F:    drivers/usb/misc/brcmstb-usb-pinmap.c
 +
  BROADCOM BRCMSTB USB2 and USB3 PHY DRIVER
  M:    Al Cooper <alcooperx@gmail.com>
  L:    linux-kernel@vger.kernel.org
@@@ -3884,7 -3865,6 +3884,7 @@@ CADENCE USB3 DRD IP DRIVE
  M:    Peter Chen <peter.chen@nxp.com>
  M:    Pawel Laszczak <pawell@cadence.com>
  M:    Roger Quadros <rogerq@ti.com>
 +R:    Aswath Govindraju <a-govindraju@ti.com>
  L:    linux-usb@vger.kernel.org
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/peter.chen/usb.git
@@@ -3900,8 -3880,9 +3900,8 @@@ T:      git git://linuxtv.org/media_tree.gi
  F:    drivers/media/radio/radio-cadet*
  
  CAFE CMOS INTEGRATED CAMERA CONTROLLER DRIVER
 -M:    Jonathan Corbet <corbet@lwn.net>
  L:    linux-media@vger.kernel.org
 -S:    Maintained
 +S:    Orphan
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/admin-guide/media/cafe_ccic*
  F:    drivers/media/platform/marvell-ccic/
@@@ -4355,8 -4336,8 +4355,8 @@@ T:      git git://linuxtv.org/media_tree.gi
  F:    drivers/media/pci/cobalt/
  
  COCCINELLE/Semantic Patches (SmPL)
 -M:    Julia Lawall <Julia.Lawall@lip6.fr>
 -M:    Gilles Muller <Gilles.Muller@lip6.fr>
 +M:    Julia Lawall <Julia.Lawall@inria.fr>
 +M:    Gilles Muller <Gilles.Muller@inria.fr>
  M:    Nicolas Palix <nicolas.palix@imag.fr>
  M:    Michal Marek <michal.lkml@markovi.net>
  L:    cocci@systeme.lip6.fr (moderated for non-subscribers)
@@@ -4382,7 -4363,7 +4382,7 @@@ CODA V4L2 MEM2MEM DRIVE
  M:    Philipp Zabel <p.zabel@pengutronix.de>
  L:    linux-media@vger.kernel.org
  S:    Maintained
 -F:    Documentation/devicetree/bindings/media/coda.txt
 +F:    Documentation/devicetree/bindings/media/coda.yaml
  F:    drivers/media/platform/coda/
  
  CODE OF CONDUCT
@@@ -4524,13 -4505,6 +4524,13 @@@ L:    linux-hwmon@vger.kernel.or
  S:    Maintained
  F:    drivers/hwmon/corsair-cpro.c
  
 +CORSAIR-PSU HARDWARE MONITOR DRIVER
 +M:    Wilken Gottwalt <wilken.gottwalt@posteo.net>
 +L:    linux-hwmon@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/hwmon/corsair-psu.rst
 +F:    drivers/hwmon/corsair-psu.c
 +
  COSA/SRP SYNC SERIAL DRIVER
  M:    Jan "Yenya" Kasprzak <kas@fi.muni.cz>
  S:    Maintained
@@@ -5026,15 -5000,6 +5026,15 @@@ M:    Mario Limonciello <mario.limonciello
  S:    Maintained
  F:    drivers/platform/x86/dell-wmi-descriptor.c
  
 +DELL WMI SYSMAN DRIVER
 +M:    Divya Bharathi <divya.bharathi@dell.com>
 +M:    Mario Limonciello <mario.limonciello@dell.com>
 +M:    Prasanth Ksr <prasanth.ksr@dell.com>
 +L:    platform-driver-x86@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/ABI/testing/sysfs-class-firmware-attributes
 +F:    drivers/platform/x86/dell-wmi-sysman/
 +
  DELL WMI NOTIFICATIONS DRIVER
  M:    Matthew Garrett <mjg59@srcf.ucam.org>
  M:    Pali Rohár <pali@kernel.org>
@@@ -5164,9 -5129,7 +5164,9 @@@ M:      Support Opensource <support.opensour
  S:    Supported
  W:    http://www.dialog-semiconductor.com/products
  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/regulator/dlg,da9*.yaml
  F:    Documentation/devicetree/bindings/regulator/da92*.txt
  F:    Documentation/devicetree/bindings/regulator/slg51000.txt
  F:    Documentation/devicetree/bindings/sound/da[79]*.txt
@@@ -5176,7 -5139,6 +5176,7 @@@ F:      Documentation/hwmon/da90??.rs
  F:    drivers/gpio/gpio-da90??.c
  F:    drivers/hwmon/da90??-hwmon.c
  F:    drivers/iio/adc/da91??-*.c
 +F:    drivers/input/misc/da72??.[ch]
  F:    drivers/input/misc/da90??_onkey.c
  F:    drivers/input/touchscreen/da9052_tsi.c
  F:    drivers/leds/leds-da90??.c
@@@ -5192,7 -5154,6 +5192,7 @@@ F:      drivers/rtc/rtc-da90??.
  F:    drivers/thermal/da90??-thermal.c
  F:    drivers/video/backlight/da90??_bl.c
  F:    drivers/watchdog/da90??_wdt.c
 +F:    include/dt-bindings/regulator/dlg,da9*-regulator.h
  F:    include/linux/mfd/da903x.h
  F:    include/linux/mfd/da9052/
  F:    include/linux/mfd/da9055/
@@@ -5298,12 -5259,6 +5298,12 @@@ F:    include/linux/dma-mapping.
  F:    include/linux/dma-map-ops.h
  F:    kernel/dma/
  
 +DMA MAPPING BENCHMARK
 +M:    Barry Song <song.bao.hua@hisilicon.com>
 +L:    iommu@lists.linux-foundation.org
 +F:    kernel/dma/map_benchmark.c
 +F:    tools/testing/selftests/dma/
 +
  DMA-BUF HEAPS FRAMEWORK
  M:    Sumit Semwal <sumit.semwal@linaro.org>
  R:    Benjamin Gaignard <benjamin.gaignard@linaro.org>
@@@ -5633,13 -5588,6 +5633,13 @@@ T:    git git://anongit.freedesktop.org/dr
  F:    Documentation/devicetree/bindings/display/panel/novatek,nt35510.yaml
  F:    drivers/gpu/drm/panel/panel-novatek-nt35510.c
  
 +DRM DRIVER FOR NOVATEK NT36672A PANELS
 +M:    Sumit Semwal <sumit.semwal@linaro.org>
 +S:    Maintained
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +F:    Documentation/devicetree/bindings/display/panel/novatek,nt36672a.yaml
 +F:    drivers/gpu/drm/panel/panel-novatek-nt36672a.c
 +
  DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS
  M:    Ben Skeggs <bskeggs@redhat.com>
  L:    dri-devel@lists.freedesktop.org
@@@ -5927,7 -5875,6 +5927,7 @@@ S:      Supporte
  F:    Documentation/devicetree/bindings/display/mediatek/
  F:    drivers/gpu/drm/mediatek/
  F:    drivers/phy/mediatek/phy-mtk-hdmi*
 +F:    drivers/phy/mediatek/phy-mtk-mipi*
  
  DRM DRIVERS FOR NVIDIA TEGRA
  M:    Thierry Reding <thierry.reding@gmail.com>
@@@ -6020,7 -5967,6 +6020,7 @@@ F:      include/uapi/drm/v3d_drm.
  
  DRM DRIVERS FOR VC4
  M:    Eric Anholt <eric@anholt.net>
 +M:    Maxime Ripard <mripard@kernel.org>
  S:    Supported
  T:    git git://github.com/anholt/linux
  T:    git git://anongit.freedesktop.org/drm/drm-misc
@@@ -6415,13 -6361,6 +6415,13 @@@ L:    linux-edac@vger.kernel.or
  S:    Maintained
  F:    drivers/edac/ie31200_edac.c
  
 +EDAC-IGEN6
 +M:    Tony Luck <tony.luck@intel.com>
 +R:    Qiuxu Zhuo <qiuxu.zhuo@intel.com>
 +L:    linux-edac@vger.kernel.org
 +S:    Maintained
 +F:    drivers/edac/igen6_edac.c
 +
  EDAC-MPC85XX
  M:    Johannes Thumshirn <morbidrsa@gmail.com>
  L:    linux-edac@vger.kernel.org
@@@ -6471,7 -6410,7 +6471,7 @@@ EDAC-SKYLAK
  M:    Tony Luck <tony.luck@intel.com>
  L:    linux-edac@vger.kernel.org
  S:    Maintained
 -F:    drivers/edac/skx_*.c
 +F:    drivers/edac/skx_*.[ch]
  
  EDAC-TI
  M:    Tero Kristo <t-kristo@ti.com>
@@@ -6755,7 -6694,6 +6755,7 @@@ F:      Documentation/filesystems/f2fs.rs
  F:    fs/f2fs/
  F:    include/linux/f2fs_fs.h
  F:    include/trace/events/f2fs.h
 +F:    include/uapi/linux/f2fs.h
  
  F71805F HARDWARE MONITORING DRIVER
  M:    Jean Delvare <jdelvare@suse.com>
@@@ -6979,10 -6917,17 +6979,10 @@@ S:   Maintaine
  W:    http://floatingpoint.sourceforge.net/emulator/index.html
  F:    arch/x86/math-emu/
  
 -FRAME RELAY DLCI/FRAD (Sangoma drivers too)
 -L:    netdev@vger.kernel.org
 -S:    Orphan
 -F:    drivers/net/wan/dlci.c
 -F:    drivers/net/wan/sdla.c
 -
  FRAMEBUFFER LAYER
 -M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
  L:    dri-devel@lists.freedesktop.org
  L:    linux-fbdev@vger.kernel.org
 -S:    Maintained
 +S:    Orphan
  Q:    http://patchwork.kernel.org/project/linux-fbdev/list/
  T:    git git://anongit.freedesktop.org/drm/drm-misc
  F:    Documentation/fb/
@@@ -7359,6 -7304,7 +7359,6 @@@ F:      drivers/staging/gasket
  
  GCC PLUGINS
  M:    Kees Cook <keescook@chromium.org>
 -R:    Emese Revfy <re.emese@gmail.com>
  L:    linux-hardening@vger.kernel.org
  S:    Maintained
  F:    Documentation/kbuild/gcc-plugins.rst
@@@ -7400,17 -7346,6 +7400,17 @@@ S:    Maintaine
  F:    drivers/base/arch_topology.c
  F:    include/linux/arch_topology.h
  
 +GENERIC ENTRY CODE
 +M:    Thomas Gleixner <tglx@linutronix.de>
 +M:    Peter Zijlstra <peterz@infradead.org>
 +M:    Andy Lutomirski <luto@kernel.org>
 +L:    linux-kernel@vger.kernel.org
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core/entry
 +F:    include/linux/entry-common.h
 +F:    include/linux/entry-kvm.h
 +F:    kernel/entry/
 +
  GENERIC GPIO I2C DRIVER
  M:    Wolfram Sang <wsa+renesas@sang-engineering.com>
  S:    Supported
@@@ -7509,7 -7444,7 +7509,7 @@@ M:      Bob Peterson <rpeterso@redhat.com
  M:    Andreas Gruenbacher <agruenba@redhat.com>
  L:    cluster-devel@redhat.com
  S:    Supported
 -W:    http://sources.redhat.com/cluster/
 +B:    https://bugzilla.kernel.org/enter_bug.cgi?product=File%20System&component=gfs2
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2.git
  F:    Documentation/filesystems/gfs2*
  F:    fs/gfs2/
@@@ -7557,7 -7492,6 +7557,7 @@@ M:      Andy Shevchenko <andriy.shevchenko@l
  L:    linux-gpio@vger.kernel.org
  L:    linux-acpi@vger.kernel.org
  S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/andy/linux-gpio-intel.git
  F:    Documentation/firmware-guide/acpi/gpio-properties.rst
  F:    drivers/gpio/gpiolib-acpi.c
  F:    drivers/gpio/gpiolib-acpi.h
@@@ -7776,9 -7710,9 +7776,9 @@@ F:      drivers/clocksource/h8300_*.
  F:    drivers/irqchip/irq-renesas-h8*.c
  
  HABANALABS PCI DRIVER
 -M:    Oded Gabbay <oded.gabbay@gmail.com>
 +M:    Oded Gabbay <ogabbay@kernel.org>
  S:    Supported
 -T:    git https://github.com/HabanaAI/linux.git
 +T:    git https://git.kernel.org/pub/scm/linux/kernel/git/ogabbay/linux.git
  F:    Documentation/ABI/testing/debugfs-driver-habanalabs
  F:    Documentation/ABI/testing/sysfs-driver-habanalabs
  F:    drivers/misc/habanalabs/
@@@ -7976,27 -7910,12 +7976,27 @@@ F:   include/linux/hippidevice.
  F:    include/uapi/linux/if_hippi.h
  F:    net/802/hippi.c
  
 +HIRSCHMANN HELLCREEK ETHERNET SWITCH DRIVER
 +M:    Kurt Kanzenbach <kurt@linutronix.de>
 +L:    netdev@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/net/dsa/hirschmann,hellcreek.yaml
 +F:    drivers/net/dsa/hirschmann/*
 +F:    include/linux/platform_data/hirschmann-hellcreek.h
 +F:    net/dsa/tag_hellcreek.c
 +
  HISILICON DMA DRIVER
  M:    Zhou Wang <wangzhou1@hisilicon.com>
  L:    dmaengine@vger.kernel.org
  S:    Maintained
  F:    drivers/dma/hisi_dma.c
  
 +HISILICON GPIO DRIVER
 +M:    Luo Jiaxing <luojiaxing@huawei.com>
 +L:    linux-gpio@vger.kernel.org
 +S:    Maintained
 +F:    drivers/gpio/gpio-hisi.c
 +
  HISILICON HIGH PERFORMANCE RSA ENGINE DRIVER (HPRE)
  M:    Zaibo Xu <xuzaibo@huawei.com>
  L:    linux-crypto@vger.kernel.org
@@@ -8089,7 -8008,7 +8089,7 @@@ F:      drivers/staging/hikey9xx
  HISILICON TRUE RANDOM NUMBER GENERATOR V2 SUPPORT
  M:    Zaibo Xu <xuzaibo@huawei.com>
  S:    Maintained
 -F:    drivers/char/hw_random/hisi-trng-v2.c
 +F:    drivers/crypto/hisilicon/trng/trng.c
  
  HISILICON V3XX SPI NOR FLASH Controller Driver
  M:    John Garry <john.garry@huawei.com>
@@@ -8423,7 -8342,7 +8423,7 @@@ F:      Documentation/devicetree/bindings/i3
  F:    drivers/i3c/master/dw*
  
  I3C SUBSYSTEM
 -M:    Boris Brezillon <bbrezillon@kernel.org>
 +M:    Alexandre Belloni <alexandre.belloni@bootlin.com>
  L:    linux-i3c@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  C:    irc://chat.freenode.net/linux-i3c
@@@ -8717,7 -8636,7 +8717,7 @@@ INA209 HARDWARE MONITOR DRIVE
  M:    Guenter Roeck <linux@roeck-us.net>
  L:    linux-hwmon@vger.kernel.org
  S:    Maintained
 -F:    Documentation/devicetree/bindings/hwmon/ina2xx.txt
 +F:    Documentation/devicetree/bindings/hwmon/ti,ina2xx.yaml
  F:    Documentation/hwmon/ina209.rst
  F:    drivers/hwmon/ina209.c
  
@@@ -8763,16 -8682,19 +8763,16 @@@ F:   include/uapi/rdma
  F:    samples/bpf/ibumad_kern.c
  F:    samples/bpf/ibumad_user.c
  
 -INGENIC JZ4780 DMA Driver
 -M:    Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com>
 -S:    Maintained
 -F:    drivers/dma/dma-jz4780.c
 -
  INGENIC JZ4780 NAND DRIVER
  M:    Harvey Hunt <harveyhuntnexus@gmail.com>
  L:    linux-mtd@lists.infradead.org
 +L:    linux-mips@vger.kernel.org
  S:    Maintained
  F:    drivers/mtd/nand/raw/ingenic/
  
  INGENIC JZ47xx SoCs
  M:    Paul Cercueil <paul@crapouillou.net>
 +L:    linux-mips@vger.kernel.org
  S:    Maintained
  F:    arch/mips/boot/dts/ingenic/
  F:    arch/mips/generic/board-ingenic.c
@@@ -9045,23 -8967,6 +9045,23 @@@ M:    Deepak Saxena <dsaxena@plexity.net
  S:    Maintained
  F:    drivers/char/hw_random/ixp4xx-rng.c
  
 +INTEL KEEM BAY DRM DRIVER
 +M:    Anitha Chrisanthus <anitha.chrisanthus@intel.com>
 +M:    Edmund Dea <edmund.j.dea@intel.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/display/intel,kmb_display.yaml
 +F:    drivers/gpu/drm/kmb/
 +
 +INTEL KEEM BAY OCS AES/SM4 CRYPTO DRIVER
 +M:    Daniele Alessandrelli <daniele.alessandrelli@intel.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/crypto/intel,keembay-ocs-aes.yaml
 +F:    drivers/crypto/keembay/Kconfig
 +F:    drivers/crypto/keembay/Makefile
 +F:    drivers/crypto/keembay/keembay-ocs-aes-core.c
 +F:    drivers/crypto/keembay/ocs-aes.c
 +F:    drivers/crypto/keembay/ocs-aes.h
 +
  INTEL MANAGEMENT ENGINE (mei)
  M:    Tomas Winkler <tomas.winkler@intel.com>
  L:    linux-kernel@vger.kernel.org
@@@ -9109,12 -9014,6 +9109,12 @@@ F:    drivers/mfd/intel_soc_pmic
  F:    include/linux/mfd/intel_msic.h
  F:    include/linux/mfd/intel_soc_pmic*
  
 +INTEL PMT DRIVER
 +M:    "David E. Box" <david.e.box@linux.intel.com>
 +S:    Maintained
 +F:    drivers/mfd/intel_pmt.c
 +F:    drivers/platform/x86/intel_pmt_*
 +
  INTEL PRO/WIRELESS 2100, 2200BG, 2915ABG NETWORK CONNECTION SUPPORT
  M:    Stanislav Yakovlev <stas.yakovlev@gmail.com>
  L:    linux-wireless@vger.kernel.org
@@@ -9197,6 -9096,16 +9197,6 @@@ W:     https://wireless.wiki.kernel.org/en/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi.git
  F:    drivers/net/wireless/intel/iwlwifi/
  
 -INTEL WIRELESS WIMAX CONNECTION 2400
 -M:    Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
 -M:    linux-wimax@intel.com
 -L:    wimax@linuxwimax.org (subscribers-only)
 -S:    Supported
 -W:    http://linuxwimax.org
 -F:    Documentation/admin-guide/wimax/i2400m.rst
 -F:    drivers/net/wimax/i2400m/
 -F:    include/uapi/linux/wimax/i2400m.h
 -
  INTEL WMI SLIM BOOTLOADER (SBL) FIRMWARE UPDATE DRIVER
  M:    Jithu Joseph <jithu.joseph@intel.com>
  R:    Maurice Ma <maurice.ma@intel.com>
@@@ -9226,19 -9135,6 +9226,19 @@@ F:    Documentation/x86/intel_txt.rs
  F:    arch/x86/kernel/tboot.c
  F:    include/linux/tboot.h
  
 +INTEL SGX
 +M:    Jarkko Sakkinen <jarkko@kernel.org>
 +L:    linux-sgx@vger.kernel.org
 +S:    Supported
 +Q:    https://patchwork.kernel.org/project/intel-sgx/list/
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-sgx.git
 +F:    Documentation/x86/sgx.rst
 +F:    arch/x86/entry/vdso/vsgx.S
 +F:    arch/x86/include/uapi/asm/sgx.h
 +F:    arch/x86/kernel/cpu/sgx/*
 +F:    tools/testing/selftests/sgx/*
 +K:    \bSGX_
 +
  INTERCONNECT API
  M:    Georgi Djakov <georgi.djakov@linaro.org>
  L:    linux-pm@vger.kernel.org
@@@ -9254,7 -9150,7 +9254,7 @@@ INVENSENSE ICM-426xx IMU DRIVE
  M:    Jean-Baptiste Maneyrol <jmaneyrol@invensense.com>
  L:    linux-iio@vger.kernel.org
  S:    Maintained
 -W     https://invensense.tdk.com/
 +W:    https://invensense.tdk.com/
  F:    Documentation/devicetree/bindings/iio/imu/invensense,icm42600.yaml
  F:    drivers/iio/imu/inv_icm42600/
  
@@@ -9734,7 -9630,7 +9734,7 @@@ F:      arch/arm64/kvm
  F:    include/kvm/arm_*
  
  KERNEL VIRTUAL MACHINE FOR MIPS (KVM/mips)
 -M:    Huacai Chen <chenhc@lemote.com>
 +M:    Huacai Chen <chenhuacai@kernel.org>
  M:    Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
  L:    linux-mips@vger.kernel.org
  L:    kvm@vger.kernel.org
@@@ -10280,16 -10176,6 +10280,16 @@@ L: kunit-dev@googlegroups.co
  S:    Maintained
  F:    lib/list-test.c
  
 +LITEX PLATFORM
 +M:    Karol Gugala <kgugala@antmicro.com>
 +M:    Mateusz Holenko <mholenko@antmicro.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/*/litex,*.yaml
 +F:    arch/openrisc/boot/dts/or1klitex.dts
 +F:    drivers/soc/litex/litex_soc_ctrl.c
 +F:    drivers/tty/serial/liteuart.c
 +F:    include/linux/litex.h
 +
  LIVE PATCHING
  M:    Josh Poimboeuf <jpoimboe@redhat.com>
  M:    Jiri Kosina <jikos@kernel.org>
@@@ -10495,8 -10381,6 +10495,8 @@@ L:   linux-m68k@lists.linux-m68k.or
  S:    Maintained
  W:    http://www.mac.linux-m68k.org/
  F:    arch/m68k/mac/
 +F:    drivers/macintosh/adb-iop.c
 +F:    drivers/macintosh/via-macii.c
  
  M68K ON HP9000/300
  M:    Philip Blundell <philb@gnu.org>
@@@ -10550,15 -10434,6 +10550,15 @@@ F: drivers/mailbox
  F:    include/linux/mailbox_client.h
  F:    include/linux/mailbox_controller.h
  
 +MAILBOX ARM MHUv2
 +M:    Viresh Kumar <viresh.kumar@linaro.org>
 +M:    Tushar Khandelwal <Tushar.Khandelwal@arm.com>
 +L:    linux-kernel@vger.kernel.org
 +S:    Maintained
 +F:    drivers/mailbox/arm_mhuv2.c
 +F:    include/linux/mailbox/arm_mhuv2_message.h
 +F:    Documentation/devicetree/bindings/mailbox/arm,mhuv2.yaml
 +
  MAN-PAGES: MANUAL PAGES FOR LINUX -- Sections 2, 3, 4, 5, and 7
  M:    Michael Kerrisk <mtk.manpages@gmail.com>
  L:    linux-man@vger.kernel.org
@@@ -10605,7 -10480,6 +10605,7 @@@ M:   Srujana Challa <schalla@marvell.com
  L:    linux-crypto@vger.kernel.org
  S:    Maintained
  F:    drivers/crypto/marvell/
 +F:    include/linux/soc/marvell/octeontx2/
  
  MARVELL GIGABIT ETHERNET DRIVERS (skge/sky2)
  M:    Mirko Lindner <mlindner@marvell.com>
@@@ -10649,14 -10523,6 +10649,14 @@@ L: netdev@vger.kernel.or
  S:    Maintained
  F:    drivers/net/ethernet/marvell/mvneta.*
  
 +MARVELL MVPP2 ETHERNET DRIVER
 +M:    Marcin Wojtas <mw@semihalf.com>
 +M:    Russell King <linux@armlinux.org.uk>
 +L:    netdev@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/net/marvell-pp2.txt
 +F:    drivers/net/ethernet/marvell/mvpp2/
 +
  MARVELL MWIFIEX WIRELESS DRIVER
  M:    Amitkumar Karwar <amitkarwar@gmail.com>
  M:    Ganapathi Bhat <ganapathi.bhat@nxp.com>
@@@ -10686,7 -10552,6 +10686,7 @@@ M:   hariprasad <hkelam@marvell.com
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    drivers/net/ethernet/marvell/octeontx2/nic/
 +F:    include/linux/soc/marvell/octeontx2/
  
  MARVELL OCTEONTX2 RVU ADMIN FUNCTION DRIVER
  M:    Sunil Goutham <sgoutham@marvell.com>
@@@ -10974,8 -10839,8 +10974,8 @@@ L:   linux-media@vger.kernel.or
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/admin-guide/media/imx7.rst
 -F:    Documentation/devicetree/bindings/media/imx7-csi.txt
 -F:    Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt
 +F:    Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml
 +F:    Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml
  F:    drivers/staging/media/imx/imx7-media-csi.c
  F:    drivers/staging/media/imx/imx7-mipi-csis.c
  
@@@ -11234,12 -11099,6 +11234,12 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/i2c/i2c-mt7621.txt
  F:    drivers/i2c/busses/i2c-mt7621.c
  
 +MEDIATEK MT7621 PHY PCI DRIVER
 +M:    Sergio Paracuellos <sergio.paracuellos@gmail.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/phy/mediatek,mt7621-pci-phy.yaml
 +F:    drivers/phy/ralink/phy-mt7621-pci.c
 +
  MEDIATEK NAND CONTROLLER DRIVER
  L:    linux-mtd@lists.infradead.org
  S:    Orphan
@@@ -11318,7 -11177,6 +11318,7 @@@ MELLANOX BLUEFIELD I2C DRIVE
  M:    Khalil Blaiech <kblaiech@nvidia.com>
  L:    linux-i2c@vger.kernel.org
  S:    Supported
 +F:    Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml
  F:    drivers/i2c/busses/i2c-mlxbf.c
  
  MELLANOX ETHERNET DRIVER (mlx4_en)
@@@ -11465,7 -11323,6 +11465,7 @@@ S:   Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl.git
  F:    Documentation/devicetree/bindings/memory-controllers/
  F:    drivers/memory/
 +F:    include/dt-bindings/memory/
  
  MEMORY FREQUENCY SCALING DRIVERS FOR NVIDIA TEGRA
  M:    Dmitry Osipenko <digetx@gmail.com>
@@@ -11473,6 -11330,7 +11473,6 @@@ L:   linux-pm@vger.kernel.or
  L:    linux-tegra@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/linux.git
  S:    Maintained
 -F:    drivers/devfreq/tegra20-devfreq.c
  F:    drivers/devfreq/tegra30-devfreq.c
  
  MEMORY MANAGEMENT
@@@ -11545,15 -11403,6 +11545,15 @@@ F: Documentation/devicetree/bindings/me
  F:    drivers/media/cec/platform/meson/ao-cec-g12a.c
  F:    drivers/media/cec/platform/meson/ao-cec.c
  
 +MESON GE2D DRIVER FOR AMLOGIC SOCS
 +M:    Neil Armstrong <narmstrong@baylibre.com>
 +L:    linux-media@vger.kernel.org
 +L:    linux-amlogic@lists.infradead.org
 +S:    Supported
 +T:    git git://linuxtv.org/media_tree.git
 +F:    Documentation/devicetree/bindings/media/amlogic,axg-ge2d.yaml
 +F:    drivers/media/meson/ge2d/
 +
  MESON NAND CONTROLLER DRIVER FOR AMLOGIC SOCS
  M:    Liang Yang <liang.yang@amlogic.com>
  L:    linux-mtd@lists.infradead.org
@@@ -11670,7 -11519,7 +11670,7 @@@ M:   Woojung Huh <woojung.huh@microchip.c
  M:    Microchip Linux Driver Support <UNGLinuxDriver@microchip.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
 -F:    Documentation/devicetree/bindings/net/dsa/ksz.txt
 +F:    Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
  F:    drivers/net/dsa/microchip/*
  F:    include/linux/platform_data/microchip-ksz.h
  F:    net/dsa/tag_ksz.c
@@@ -11792,54 -11641,17 +11792,54 @@@ F:        drivers/scsi/smartpqi/smartpqi*.[ch
  F:    include/linux/cciss*.h
  F:    include/uapi/linux/cciss*.h
  
 +MICROSOFT SURFACE GPE LID SUPPORT DRIVER
 +M:    Maximilian Luz <luzmaximilian@gmail.com>
 +L:    platform-driver-x86@vger.kernel.org
 +S:    Maintained
 +F:    drivers/platform/surface/surface_gpe.c
 +
 +MICROSOFT SURFACE HARDWARE PLATFORM SUPPORT
 +M:    Hans de Goede <hdegoede@redhat.com>
 +M:    Mark Gross <mgross@linux.intel.com>
 +M:    Maximilian Luz <luzmaximilian@gmail.com>
 +L:    platform-driver-x86@vger.kernel.org
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
 +F:    drivers/platform/surface/
 +
  MICROSOFT SURFACE PRO 3 BUTTON DRIVER
  M:    Chen Yu <yu.c.chen@intel.com>
  L:    platform-driver-x86@vger.kernel.org
  S:    Supported
 -F:    drivers/platform/x86/surfacepro3_button.c
 +F:    drivers/platform/surface/surfacepro3_button.c
  
  MICROTEK X6 SCANNER
  M:    Oliver Neukum <oliver@neukum.org>
  S:    Maintained
  F:    drivers/usb/image/microtek.*
  
 +MIKROTIK CRS3XX 98DX3236 BOARD SUPPORT
 +M:    Luka Kovacic <luka.kovacic@sartura.hr>
 +M:    Luka Perkov <luka.perkov@sartura.hr>
 +S:    Maintained
 +F:    arch/arm/boot/dts/armada-xp-crs305-1g-4s-bit.dts
 +F:    arch/arm/boot/dts/armada-xp-crs305-1g-4s.dts
 +F:    arch/arm/boot/dts/armada-xp-crs326-24g-2s-bit.dts
 +F:    arch/arm/boot/dts/armada-xp-crs326-24g-2s.dts
 +F:    arch/arm/boot/dts/armada-xp-crs328-4c-20s-4s-bit.dts
 +F:    arch/arm/boot/dts/armada-xp-crs328-4c-20s-4s.dts
 +
 +MIPI CCS, SMIA AND SMIA++ IMAGE SENSOR DRIVER
 +M:    Sakari Ailus <sakari.ailus@linux.intel.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/media/i2c/mipi-ccs.yaml
 +F:    Documentation/driver-api/media/drivers/ccs/
 +F:    drivers/media/i2c/ccs-pll.c
 +F:    drivers/media/i2c/ccs-pll.h
 +F:    drivers/media/i2c/ccs/
 +F:    include/uapi/linux/smiapp.h
 +
  MIPS
  M:    Thomas Bogendoerfer <tsbogend@alpha.franken.de>
  L:    linux-mips@vger.kernel.org
@@@ -11907,7 -11719,7 +11907,7 @@@ F:   drivers/*/*/*loongson2
  F:    drivers/*/*loongson2*
  
  MIPS/LOONGSON64 ARCHITECTURE
 -M:    Huacai Chen <chenhc@lemote.com>
 +M:    Huacai Chen <chenhuacai@kernel.org>
  M:    Jiaxun Yang <jiaxun.yang@flygoat.com>
  L:    linux-mips@vger.kernel.org
  S:    Maintained
@@@ -12110,7 -11922,7 +12110,7 @@@ M:   Jacopo Mondi <jacopo@jmondi.org
  L:    linux-media@vger.kernel.org
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/i2c/aptina,mt9v111.txt
 +F:    Documentation/devicetree/bindings/media/i2c/aptina,mt9v111.yaml
  F:    drivers/media/i2c/mt9v111.c
  
  MULTIFUNCTION DEVICES (MFD)
@@@ -12454,7 -12266,6 +12454,7 @@@ L:   mptcp@lists.01.or
  S:    Maintained
  W:    https://github.com/multipath-tcp/mptcp_net-next/wiki
  B:    https://github.com/multipath-tcp/mptcp_net-next/issues
 +F:    Documentation/networking/mptcp-sysctl.rst
  F:    include/net/mptcp.h
  F:    include/uapi/linux/mptcp.h
  F:    net/mptcp/
@@@ -12745,7 -12556,7 +12745,7 @@@ NXP FXAS21002C DRIVE
  M:    Rui Miguel Silva <rmfrfs@gmail.com>
  L:    linux-iio@vger.kernel.org
  S:    Maintained
 -F:    Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.txt
 +F:    Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.yaml
  F:    drivers/iio/gyro/fxas21002c.h
  F:    drivers/iio/gyro/fxas21002c_core.c
  F:    drivers/iio/gyro/fxas21002c_i2c.c
@@@ -12759,12 -12570,6 +12759,12 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/display/imx/nxp,imx8mq-dcss.yaml
  F:    drivers/gpu/drm/imx/dcss/
  
 +NXP PF8100/PF8121A/PF8200 PMIC REGULATOR DEVICE DRIVER
 +M:    Jagan Teki <jagan@amarulasolutions.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/regulator/nxp,pf8x00-regulator.yaml
 +F:    drivers/regulator/pf8x00-regulator.c
 +
  NXP PTN5150A CC LOGIC AND EXTCON DRIVER
  M:    Krzysztof Kozlowski <krzk@kernel.org>
  L:    linux-kernel@vger.kernel.org
@@@ -13062,14 -12867,6 +13062,14 @@@ M: Harald Welte <laforge@gnumonks.org
  S:    Maintained
  F:    drivers/char/pcmcia/cm4040_cs.*
  
 +OMNIVISION OV02A10 SENSOR DRIVER
 +M:    Dongchun Zhu <dongchun.zhu@mediatek.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +T:    git git://linuxtv.org/media_tree.git
 +F:    Documentation/devicetree/bindings/media/i2c/ovti,ov02a10.yaml
 +F:    drivers/media/i2c/ov02a10.c
 +
  OMNIVISION OV13858 SENSOR DRIVER
  M:    Sakari Ailus <sakari.ailus@linux.intel.com>
  L:    linux-media@vger.kernel.org
@@@ -13082,7 -12879,7 +13082,7 @@@ M:   Rui Miguel Silva <rmfrfs@gmail.com
  L:    linux-media@vger.kernel.org
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/i2c/ov2680.txt
 +F:    Documentation/devicetree/bindings/media/i2c/ov2680.yaml
  F:    drivers/media/i2c/ov2680.c
  
  OMNIVISION OV2685 SENSOR DRIVER
@@@ -13140,8 -12937,9 +13140,8 @@@ T:   git git://linuxtv.org/media_tree.gi
  F:    drivers/media/i2c/ov5695.c
  
  OMNIVISION OV7670 SENSOR DRIVER
 -M:    Jonathan Corbet <corbet@lwn.net>
  L:    linux-media@vger.kernel.org
 -S:    Maintained
 +S:    Orphan
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/i2c/ov7670.txt
  F:    drivers/media/i2c/ov7670.c
@@@ -13151,7 -12949,7 +13151,7 @@@ M:   Jacopo Mondi <jacopo@jmondi.org
  L:    linux-media@vger.kernel.org
  S:    Odd fixes
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/i2c/ov772x.txt
 +F:    Documentation/devicetree/bindings/media/i2c/ovti,ov772x.yaml
  F:    drivers/media/i2c/ov772x.c
  F:    include/media/i2c/ov772x.h
  
@@@ -13187,14 -12985,6 +13187,14 @@@ T: git git://linuxtv.org/media_tree.gi
  F:    Documentation/devicetree/bindings/media/i2c/ov9650.txt
  F:    drivers/media/i2c/ov9650.c
  
 +OMNIVISION OV9734 SENSOR DRIVER
 +M:    Tianshu Qiu <tian.shu.qiu@intel.com>
 +R:    Bingbu Cao <bingbu.cao@intel.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +T:    git git://linuxtv.org/media_tree.git
 +F:    drivers/media/i2c/ov9734.c
 +
  ONENAND FLASH DRIVER
  M:    Kyungmin Park <kyungmin.park@samsung.com>
  L:    linux-mtd@lists.infradead.org
@@@ -13403,7 -13193,7 +13403,7 @@@ F:   include/trace/events/page_pool.
  F:    net/core/page_pool.c
  
  PANASONIC LAPTOP ACPI EXTRAS DRIVER
 -M:    Harald Welte <laforge@gnumonks.org>
 +M:    Kenneth Chan <kenneth.t.chan@gmail.com>
  L:    platform-driver-x86@vger.kernel.org
  S:    Maintained
  F:    drivers/platform/x86/panasonic-laptop.c
@@@ -13702,8 -13492,6 +13702,8 @@@ M:   Kishon Vijay Abraham I <kishon@ti.co
  M:    Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
  L:    linux-pci@vger.kernel.org
  S:    Supported
 +F:    Documentation/PCI/endpoint/*
 +F:    Documentation/misc-devices/pci-endpoint-test.rst
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kishon/pci-endpoint.git
  F:    drivers/misc/pci_endpoint_test.c
  F:    drivers/pci/endpoint/
@@@ -14127,13 -13915,6 +14127,13 @@@ M: Logan Gunthorpe <logang@deltatee.com
  S:    Maintained
  F:    drivers/dma/plx_dma.c
  
 +PM6764TR DRIVER
 +M:    Charles Hsu     <hsu.yungteng@gmail.com>
 +L:    linux-hwmon@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/hwmon/pm6764tr.rst
 +F:    drivers/hwmon/pmbus/pm6764tr.c
 +
  PM-GRAPH UTILITY
  M:    "Todd E Brandt" <todd.e.brandt@linux.intel.com>
  L:    linux-pm@vger.kernel.org
@@@ -14676,7 -14457,6 +14676,7 @@@ W:   https://wireless.wiki.kernel.org/en/
  F:    drivers/net/wireless/ath/ath9k/
  
  QUALCOMM CAMERA SUBSYSTEM DRIVER
 +M:    Robert Foss <robert.foss@linaro.org>
  M:    Todor Tomov <todor.too@gmail.com>
  L:    linux-media@vger.kernel.org
  S:    Maintained
@@@ -14758,14 -14538,6 +14758,14 @@@ F: Documentation/devicetree/bindings/ma
  F:    drivers/mailbox/qcom-ipcc.c
  F:    include/dt-bindings/mailbox/qcom-ipcc.h
  
 +QUALCOMM IPQ4019 USB PHY DRIVER
 +M:    Robert Marko <robert.marko@sartura.hr>
 +M:    Luka Perkov <luka.perkov@sartura.hr>
 +L:    linux-arm-msm@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/phy/qcom-usb-ipq4019-phy.yaml
 +F:    drivers/phy/qualcomm/phy-qcom-ipq4019-usb.c
 +
  QUALCOMM IPQ4019 VQMMC REGULATOR DRIVER
  M:    Robert Marko <robert.marko@sartura.hr>
  M:    Luka Perkov <luka.perkov@sartura.hr>
@@@ -15115,7 -14887,7 +15115,7 @@@ RENESAS CLOCK DRIVER
  M:    Geert Uytterhoeven <geert+renesas@glider.be>
  L:    linux-renesas-soc@vger.kernel.org
  S:    Supported
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git clk-renesas
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git renesas-clk
  F:    Documentation/devicetree/bindings/clock/renesas,*
  F:    drivers/clk/renesas/
  
@@@ -15174,7 -14946,6 +15174,7 @@@ M:   Philipp Zabel <p.zabel@pengutronix.d
  S:    Maintained
  T:    git git://git.pengutronix.de/git/pza/linux
  F:    Documentation/devicetree/bindings/reset/
 +F:    Documentation/driver-api/reset.rst
  F:    drivers/reset/
  F:    include/dt-bindings/reset/
  F:    include/linux/reset-controller.h
@@@ -15259,13 -15030,10 +15259,13 @@@ ROCKCHIP ISP V1 DRIVE
  M:    Helen Koike <helen.koike@collabora.com>
  M:    Dafna Hirschfeld <dafna.hirschfeld@collabora.com>
  L:    linux-media@vger.kernel.org
 +L:    linux-rockchip@lists.infradead.org
  S:    Maintained
  F:    Documentation/admin-guide/media/rkisp1.rst
 +F:    Documentation/devicetree/bindings/media/rockchip-isp1.yaml
  F:    Documentation/userspace-api/media/v4l/pixfmt-meta-rkisp1.rst
 -F:    drivers/staging/media/rkisp1/
 +F:    drivers/media/platform/rockchip/rkisp1
 +F:    include/uapi/linux/rkisp1-config.h
  
  ROCKCHIP RASTER 2D GRAPHIC ACCELERATION UNIT DRIVER
  M:    Jacob Chen <jacob-chen@iotwrt.com>
@@@ -15627,14 -15395,6 +15627,14 @@@ L: linux-fbdev@vger.kernel.or
  S:    Maintained
  F:    drivers/video/fbdev/s3c-fb.c
  
 +SAMSUNG INTERCONNECT DRIVERS
 +M:    Sylwester Nawrocki <s.nawrocki@samsung.com>
 +M:    Artur Świgoń <a.swigon@samsung.com>
 +L:    linux-pm@vger.kernel.org
 +L:    linux-samsung-soc@vger.kernel.org
 +S:    Supported
 +F:    drivers/interconnect/samsung/
 +
  SAMSUNG LAPTOP DRIVER
  M:    Corentin Chary <corentin.chary@gmail.com>
  L:    platform-driver-x86@vger.kernel.org
@@@ -15838,15 -15598,6 +15838,15 @@@ F: Documentation/scsi/st.rs
  F:    drivers/scsi/st.*
  F:    drivers/scsi/st_*.h
  
 +SCSI TARGET CORE USER DRIVER
 +M:    Bodo Stroesser <bostroesser@gmail.com>
 +L:    linux-scsi@vger.kernel.org
 +L:    target-devel@vger.kernel.org
 +S:    Supported
 +F:    Documentation/target/tcmu-design.rst
 +F:    drivers/target/target_core_user.c
 +F:    include/uapi/linux/target_core_user.h
 +
  SCSI TARGET SUBSYSTEM
  M:    "Martin K. Petersen" <martin.petersen@oracle.com>
  L:    linux-scsi@vger.kernel.org
@@@ -16070,14 -15821,13 +16070,14 @@@ F:        include/linux/sfp.
  K:    phylink\.h|struct\s+phylink|\.phylink|>phylink_|phylink_(autoneg|clear|connect|create|destroy|disconnect|ethtool|helper|mac|mii|of|set|start|stop|test|validate)
  
  SGI GRU DRIVER
 -M:    Dimitri Sivanich <sivanich@sgi.com>
 +M:    Dimitri Sivanich <dimitri.sivanich@hpe.com>
  S:    Maintained
  F:    drivers/misc/sgi-gru/
  
  SGI XP/XPC/XPNET DRIVER
 -M:    Cliff Whickman <cpw@sgi.com>
  M:    Robin Holt <robinmholt@gmail.com>
 +M:    Steve Wahl <steve.wahl@hpe.com>
 +R:    Mike Travis <mike.travis@hpe.com>
  S:    Maintained
  F:    drivers/misc/sgi-xp/
  
@@@ -16362,6 -16112,16 +16362,6 @@@ S:  Maintaine
  F:    drivers/firmware/smccc/
  F:    include/linux/arm-smccc.h
  
 -SMIA AND SMIA++ IMAGE SENSOR DRIVER
 -M:    Sakari Ailus <sakari.ailus@linux.intel.com>
 -L:    linux-media@vger.kernel.org
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/media/i2c/nokia,smia.txt
 -F:    drivers/media/i2c/smiapp-pll.c
 -F:    drivers/media/i2c/smiapp-pll.h
 -F:    drivers/media/i2c/smiapp/
 -F:    include/uapi/linux/smiapp.h
 -
  SMM665 HARDWARE MONITOR DRIVER
  M:    Guenter Roeck <linux@roeck-us.net>
  L:    linux-hwmon@vger.kernel.org
@@@ -16457,7 -16217,7 +16457,7 @@@ F:   drivers/infiniband/sw/siw
  F:    include/uapi/rdma/siw-abi.h
  
  SOFT-ROCE DRIVER (rxe)
 -M:    Zhu Yanjun <yanjunz@nvidia.com>
 +M:    Zhu Yanjun <zyjzyj2000@gmail.com>
  L:    linux-rdma@vger.kernel.org
  S:    Supported
  F:    drivers/infiniband/sw/rxe/
@@@ -16524,7 -16284,7 +16524,7 @@@ M:   Ricardo Ribalda <ribalda@kernel.org
  L:    linux-media@vger.kernel.org
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/i2c/sony,imx214.txt
 +F:    Documentation/devicetree/bindings/media/i2c/sony,imx214.yaml
  F:    drivers/media/i2c/imx214.c
  
  SONY IMX219 SENSOR DRIVER
@@@ -16760,10 -16520,8 +16760,10 @@@ F: Documentation/networking/device_driv
  F:    drivers/net/ethernet/toshiba/spider_net*
  
  SPMI SUBSYSTEM
 -R:    Stephen Boyd <sboyd@kernel.org>
 -L:    linux-arm-msm@vger.kernel.org
 +M:    Stephen Boyd <sboyd@kernel.org>
 +L:    linux-kernel@vger.kernel.org
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/sboyd/spmi.git
  F:    Documentation/devicetree/bindings/spmi/
  F:    drivers/spmi/
  F:    include/dt-bindings/spmi/spmi.h
@@@ -16917,6 -16675,22 +16917,22 @@@ M: Ion Badulescu <ionut@badula.org
  S:    Odd Fixes
  F:    drivers/net/ethernet/adaptec/starfire*
  
+ STATIC BRANCH/CALL
+ M:    Peter Zijlstra <peterz@infradead.org>
+ M:    Josh Poimboeuf <jpoimboe@redhat.com>
+ M:    Jason Baron <jbaron@akamai.com>
+ R:    Steven Rostedt <rostedt@goodmis.org>
+ R:    Ard Biesheuvel <ardb@kernel.org>
+ S:    Supported
+ F:    arch/*/include/asm/jump_label*.h
+ F:    arch/*/include/asm/static_call*.h
+ F:    arch/*/kernel/jump_label.c
+ F:    arch/*/kernel/static_call.c
+ F:    include/linux/jump_label*.h
+ F:    include/linux/static_call*.h
+ F:    kernel/jump_label.c
+ F:    kernel/static_call.c
  STEC S1220 SKD DRIVER
  M:    Damien Le Moal <Damien.LeMoal@wdc.com>
  L:    linux-block@vger.kernel.org
@@@ -17623,12 -17397,6 +17639,12 @@@ W: http://thinkwiki.org/wiki/Ibm-acp
  T:    git git://repo.or.cz/linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git
  F:    drivers/platform/x86/thinkpad_acpi.c
  
 +THUNDERBOLT DMA TRAFFIC TEST DRIVER
 +M:    Isaac Hazan <isaac.hazan@intel.com>
 +L:    linux-usb@vger.kernel.org
 +S:    Maintained
 +F:    drivers/thunderbolt/dma_test.c
 +
  THUNDERBOLT DRIVER
  M:    Andreas Noever <andreas.noever@gmail.com>
  M:    Michael Jamet <michael.jamet@intel.com>
@@@ -18009,7 -17777,6 +18025,7 @@@ T:   git git://git.kernel.org/pub/scm/lin
  F:    Documentation/trace/ftrace.rst
  F:    arch/*/*/*/ftrace.h
  F:    arch/*/kernel/ftrace.c
 +F:    fs/tracefs/
  F:    include/*/ftrace.h
  F:    include/linux/trace*.h
  F:    include/trace/
@@@ -18629,12 -18396,6 +18645,12 @@@ F: include/uapi/linux/uuid.
  F:    lib/test_uuid.c
  F:    lib/uuid.c
  
 +UV SYSFS DRIVER
 +M:    Justin Ernst <justin.ernst@hpe.com>
 +L:    platform-driver-x86@vger.kernel.org
 +S:    Maintained
 +F:    drivers/platform/x86/uv_sysfs.c
 +
  UVESAFB DRIVER
  M:    Michal Januszewski <spock@gentoo.org>
  L:    linux-fbdev@vger.kernel.org
@@@ -19157,6 -18918,18 +19173,6 @@@ S:  Supporte
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/wil6210
  F:    drivers/net/wireless/ath/wil6210/
  
 -WIMAX STACK
 -M:    Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
 -M:    linux-wimax@intel.com
 -L:    wimax@linuxwimax.org (subscribers-only)
 -S:    Supported
 -W:    http://linuxwimax.org
 -F:    Documentation/admin-guide/wimax/wimax.rst
 -F:    include/linux/wimax/debug.h
 -F:    include/net/wimax.h
 -F:    include/uapi/linux/wimax.h
 -F:    net/wimax/
 -
  WINBOND CIR DRIVER
  M:    David Härdeman <david@hardeman.nu>
  S:    Maintained
@@@ -19329,7 -19102,6 +19345,7 @@@ F:   arch/x86/platfor
  
  X86 PLATFORM UV HPE SUPERDOME FLEX
  M:    Steve Wahl <steve.wahl@hpe.com>
 +R:    Mike Travis <mike.travis@hpe.com>
  R:    Dimitri Sivanich <dimitri.sivanich@hpe.com>
  R:    Russ Anderson <russ.anderson@hpe.com>
  S:    Supported
@@@ -19516,16 -19288,6 +19532,16 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/net/can/xilinx_can.txt
  F:    drivers/net/can/xilinx_can.c
  
 +XILINX GPIO DRIVER
 +M:    Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
 +R:    Srinivas Neeli <srinivas.neeli@xilinx.com>
 +R:    Michal Simek <michal.simek@xilinx.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/gpio/gpio-xilinx.txt
 +F:    Documentation/devicetree/bindings/gpio/gpio-zynq.txt
 +F:    drivers/gpio/gpio-xilinx.c
 +F:    drivers/gpio/gpio-zynq.c
 +
  XILINX SD-FEC IP CORES
  M:    Derek Kiernan <derek.kiernan@xilinx.com>
  M:    Dragan Cvetic <dragan.cvetic@xilinx.com>
@@@ -19682,13 -19444,6 +19698,13 @@@ T: git git://git.kernel.org/pub/scm/lin
  F:    Documentation/filesystems/zonefs.rst
  F:    fs/zonefs/
  
 +ZPOOL COMPRESSED PAGE STORAGE API
 +M:    Dan Streetman <ddstreet@ieee.org>
 +L:    linux-mm@kvack.org
 +S:    Maintained
 +F:    include/linux/zpool.h
 +F:    mm/zpool.c
 +
  ZR36067 VIDEO FOR LINUX DRIVER
  M:    Corentin Labbe <clabbe@baylibre.com>
  L:    mjpeg-users@lists.sourceforge.net
@@@ -19699,6 -19454,13 +19715,6 @@@ Q:  https://patchwork.linuxtv.org/projec
  F:    Documentation/driver-api/media/drivers/zoran.rst
  F:    drivers/staging/media/zoran/
  
 -ZPOOL COMPRESSED PAGE STORAGE API
 -M:    Dan Streetman <ddstreet@ieee.org>
 -L:    linux-mm@kvack.org
 -S:    Maintained
 -F:    include/linux/zpool.h
 -F:    mm/zpool.c
 -
  ZRAM COMPRESSED RAM BLOCK DEVICE DRVIER
  M:    Minchan Kim <minchan@kernel.org>
  M:    Nitin Gupta <ngupta@vflare.org>
diff --combined kernel/softirq.c
@@@ -92,13 -92,6 +92,13 @@@ static bool ksoftirqd_running(unsigned 
                !__kthread_should_park(tsk);
  }
  
 +#ifdef CONFIG_TRACE_IRQFLAGS
 +DEFINE_PER_CPU(int, hardirqs_enabled);
 +DEFINE_PER_CPU(int, hardirq_context);
 +EXPORT_PER_CPU_SYMBOL_GPL(hardirqs_enabled);
 +EXPORT_PER_CPU_SYMBOL_GPL(hardirq_context);
 +#endif
 +
  /*
   * preempt_count and SOFTIRQ_OFFSET usage:
   * - preempt_count is changed by SOFTIRQ_OFFSET on entering or leaving
   * softirq and whether we just have bh disabled.
   */
  
 +#ifdef CONFIG_TRACE_IRQFLAGS
  /*
 - * This one is for softirq.c-internal use,
 - * where hardirqs are disabled legitimately:
 + * This is for softirq.c-internal use, where hardirqs are disabled
 + * legitimately:
   */
 -#ifdef CONFIG_TRACE_IRQFLAGS
 -
 -DEFINE_PER_CPU(int, hardirqs_enabled);
 -DEFINE_PER_CPU(int, hardirq_context);
 -EXPORT_PER_CPU_SYMBOL_GPL(hardirqs_enabled);
 -EXPORT_PER_CPU_SYMBOL_GPL(hardirq_context);
 -
  void __local_bh_disable_ip(unsigned long ip, unsigned int cnt)
  {
        unsigned long flags;
@@@ -186,7 -185,7 +186,7 @@@ void __local_bh_enable_ip(unsigned lon
         * Keep preemption disabled until we are done with
         * softirq processing:
         */
-       preempt_count_sub(cnt - 1);
+       __preempt_count_sub(cnt - 1);
  
        if (unlikely(!in_interrupt() && local_softirq_pending())) {
                /*
  }
  EXPORT_SYMBOL(__local_bh_enable_ip);
  
 +static inline void invoke_softirq(void)
 +{
 +      if (ksoftirqd_running(local_softirq_pending()))
 +              return;
 +
 +      if (!force_irqthreads) {
 +#ifdef CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK
 +              /*
 +               * We can safely execute softirq on the current stack if
 +               * it is the irq stack, because it should be near empty
 +               * at this stage.
 +               */
 +              __do_softirq();
 +#else
 +              /*
 +               * Otherwise, irq_exit() is called on the task stack that can
 +               * be potentially deep already. So call softirq in its own stack
 +               * to prevent from any overrun.
 +               */
 +              do_softirq_own_stack();
 +#endif
 +      } else {
 +              wakeup_softirqd();
 +      }
 +}
 +
 +asmlinkage __visible void do_softirq(void)
 +{
 +      __u32 pending;
 +      unsigned long flags;
 +
 +      if (in_interrupt())
 +              return;
 +
 +      local_irq_save(flags);
 +
 +      pending = local_softirq_pending();
 +
 +      if (pending && !ksoftirqd_running(pending))
 +              do_softirq_own_stack();
 +
 +      local_irq_restore(flags);
 +}
 +
  /*
   * We restart softirq processing for at most MAX_SOFTIRQ_RESTART times,
   * but break the loop if need_resched() is set or after 2 ms.
@@@ -315,10 -270,10 +315,10 @@@ asmlinkage __visible void __softirq_ent
        current->flags &= ~PF_MEMALLOC;
  
        pending = local_softirq_pending();
 -      account_irq_enter_time(current);
  
        __local_bh_disable_ip(_RET_IP_, SOFTIRQ_OFFSET);
        in_hardirq = lockdep_softirq_start();
 +      account_softirq_enter(current);
  
  restart:
        /* Reset the pending bitmask before enabling irqs */
                wakeup_softirqd();
        }
  
 +      account_softirq_exit(current);
        lockdep_softirq_end(in_hardirq);
 -      account_irq_exit_time(current);
        __local_bh_enable(SOFTIRQ_OFFSET);
        WARN_ON_ONCE(in_interrupt());
        current_restore_flags(old_flags, PF_MEMALLOC);
  }
  
 -asmlinkage __visible void do_softirq(void)
 -{
 -      __u32 pending;
 -      unsigned long flags;
 -
 -      if (in_interrupt())
 -              return;
 -
 -      local_irq_save(flags);
 -
 -      pending = local_softirq_pending();
 -
 -      if (pending && !ksoftirqd_running(pending))
 -              do_softirq_own_stack();
 -
 -      local_irq_restore(flags);
 -}
 -
  /**
   * irq_enter_rcu - Enter an interrupt context with RCU watching
   */
  void irq_enter_rcu(void)
  {
 -      if (is_idle_task(current) && !in_interrupt()) {
 -              /*
 -               * Prevent raise_softirq from needlessly waking up ksoftirqd
 -               * here, as softirq will be serviced on return from interrupt.
 -               */
 -              local_bh_disable();
 +      __irq_enter_raw();
 +
 +      if (is_idle_task(current) && (irq_count() == HARDIRQ_OFFSET))
                tick_irq_enter();
 -              _local_bh_enable();
 -      }
 -      __irq_enter();
 +
 +      account_hardirq_enter(current);
  }
  
  /**
@@@ -394,6 -371,32 +394,6 @@@ void irq_enter(void
        irq_enter_rcu();
  }
  
 -static inline void invoke_softirq(void)
 -{
 -      if (ksoftirqd_running(local_softirq_pending()))
 -              return;
 -
 -      if (!force_irqthreads) {
 -#ifdef CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK
 -              /*
 -               * We can safely execute softirq on the current stack if
 -               * it is the irq stack, because it should be near empty
 -               * at this stage.
 -               */
 -              __do_softirq();
 -#else
 -              /*
 -               * Otherwise, irq_exit() is called on the task stack that can
 -               * be potentially deep already. So call softirq in its own stack
 -               * to prevent from any overrun.
 -               */
 -              do_softirq_own_stack();
 -#endif
 -      } else {
 -              wakeup_softirqd();
 -      }
 -}
 -
  static inline void tick_irq_exit(void)
  {
  #ifdef CONFIG_NO_HZ_COMMON
@@@ -414,7 -417,7 +414,7 @@@ static inline void __irq_exit_rcu(void
  #else
        lockdep_assert_irqs_disabled();
  #endif
 -      account_irq_exit_time(current);
 +      account_hardirq_exit(current);
        preempt_count_sub(HARDIRQ_OFFSET);
        if (!in_interrupt() && local_softirq_pending())
                invoke_softirq();