]> Git Repo - linux.git/commitdiff
Merge tag 'modules-for-v4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu...
authorLinus Torvalds <[email protected]>
Thu, 23 Feb 2017 01:08:33 +0000 (17:08 -0800)
committerLinus Torvalds <[email protected]>
Thu, 23 Feb 2017 01:08:33 +0000 (17:08 -0800)
Pull modules updates from Jessica Yu:
 "Summary of modules changes for the 4.11 merge window:

   - A few small code cleanups

   - Add modules git tree url to MAINTAINERS"

* tag 'modules-for-v4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux:
  MAINTAINERS: add tree for modules
  module: fix memory leak on early load_module() failures
  module: Optimize search_module_extables()
  modules: mark __inittest/__exittest as __maybe_unused
  livepatch/module: print notice of TAINT_LIVEPATCH
  module: Drop redundant declaration of struct module

1  2 
MAINTAINERS
include/linux/module.h
kernel/module.c

diff --combined MAINTAINERS
index 545633d6663d673e525b4f39b42d503465cb331a,2ad16c2e443b452114872cb55fdffa8f6b7cbc86..7757bef14951d0ccf4a2269080e895ad3264e64a
@@@ -81,6 -81,7 +81,6 @@@ Descriptions of section entries
        Q: Patchwork web based patch tracking system site
        T: SCM tree type and location.
           Type is one of: git, hg, quilt, stgit, topgit
 -      B: Bug tracking system location.
        S: Status, one of the following:
           Supported:   Someone is actually paid to look after this.
           Maintained:  Someone actually looks after it.
@@@ -643,7 -644,7 +643,7 @@@ S: Maintaine
  F:    drivers/gpio/gpio-altera.c
  
  ALTERA SYSTEM RESOURCE DRIVER FOR ARRIA10 DEVKIT
 -M:    Thor Thayer <t[email protected].com>
 +M:    Thor Thayer <t[email protected].com>
  S:    Maintained
  F:    drivers/gpio/gpio-altera-a10sr.c
  F:    drivers/mfd/altera-a10sr.c
@@@ -877,8 -878,8 +877,8 @@@ S: Odd fixe
  F:    drivers/hwmon/applesmc.c
  
  APPLETALK NETWORK LAYER
 -M:    Arnaldo Carvalho de Melo <[email protected]>
 -S:    Maintained
 +L:    [email protected]
 +S:    Odd fixes
  F:    drivers/net/appletalk/
  F:    net/appletalk/
  
@@@ -976,7 -977,6 +976,7 @@@ M: Russell King <[email protected]
  L:    [email protected] (moderated for non-subscribers)
  W:    http://www.armlinux.org.uk/
  S:    Maintained
 +T:    git git://git.armlinux.org.uk/~rmk/linux-arm.git
  F:    arch/arm/
  
  ARM SUB-ARCHITECTURES
@@@ -1091,7 -1091,7 +1091,7 @@@ F:      arch/arm/boot/dts/aspeed-
  F:    drivers/*/*aspeed*
  
  ARM/ATMEL AT91RM9200, AT91SAM9 AND SAMA5 SOC SUPPORT
 -M:    Nicolas Ferre <nicolas.ferre@atmel.com>
 +M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  M:    Alexandre Belloni <[email protected]>
  M:    Jean-Christophe Plagniol-Villard <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
@@@ -1154,7 -1154,6 +1154,7 @@@ ARM/CLKDEV SUPPOR
  M:    Russell King <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
 +T:    git git://git.armlinux.org.uk/~rmk/linux-arm.git clkdev
  F:    arch/arm/include/asm/clkdev.h
  F:    drivers/clk/clkdev.c
  
@@@ -1690,7 -1689,6 +1690,7 @@@ M:      Krzysztof Kozlowski <[email protected]
  R:    Javier Martinez Canillas <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  L:    [email protected] (moderated for non-subscribers)
 +Q:    https://patchwork.kernel.org/project/linux-samsung-soc/list/
  S:    Maintained
  F:    arch/arm/boot/dts/s3c*
  F:    arch/arm/boot/dts/s5p*
@@@ -1773,7 -1771,7 +1773,7 @@@ F:      drivers/soc/renesas
  F:    include/linux/soc/renesas/
  
  ARM/SOCFPGA ARCHITECTURE
 -M:    Dinh Nguyen <dinguyen@opensource.altera.com>
 +M:    Dinh Nguyen <dinguyen@kernel.org>
  S:    Maintained
  F:    arch/arm/mach-socfpga/
  F:    arch/arm/boot/dts/socfpga*
@@@ -1783,12 -1781,12 +1783,12 @@@ W:   http://www.rocketboards.or
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux.git
  
  ARM/SOCFPGA CLOCK FRAMEWORK SUPPORT
 -M:    Dinh Nguyen <dinguyen@opensource.altera.com>
 +M:    Dinh Nguyen <dinguyen@kernel.org>
  S:    Maintained
  F:    drivers/clk/socfpga/
  
  ARM/SOCFPGA EDAC SUPPORT
 -M:    Thor Thayer <t[email protected].com>
 +M:    Thor Thayer <t[email protected].com>
  S:    Maintained
  F:    drivers/edac/altera_edac.
  
@@@ -2175,56 -2173,64 +2175,56 @@@ F:   include/linux/atm
  F:    include/uapi/linux/atm*
  
  ATMEL AT91 / AT32 MCI DRIVER
 -M:    Ludovic Desroches <ludovic.desroches@atmel.com>
 +M:    Ludovic Desroches <ludovic.desroches@microchip.com>
  S:    Maintained
  F:    drivers/mmc/host/atmel-mci.c
  
  ATMEL AT91 SAMA5D2-Compatible Shutdown Controller
 -M:    Nicolas Ferre <nicolas.ferre@atmel.com>
 +M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  S:    Supported
  F:    drivers/power/reset/at91-sama5d2_shdwc.c
  
  ATMEL SAMA5D2 ADC DRIVER
 -M:    Ludovic Desroches <ludovic.desroches@atmel.com>
 +M:    Ludovic Desroches <ludovic.desroches@microchip.com>
  L:    [email protected]
  S:    Supported
  F:    drivers/iio/adc/at91-sama5d2_adc.c
  
  ATMEL Audio ALSA driver
 -M:    Nicolas Ferre <nicolas.ferre@atmel.com>
 +M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  L:    [email protected] (moderated for non-subscribers)
  S:    Supported
  F:    sound/soc/atmel
  
 -ATMEL DMA DRIVER
 -M:    Nicolas Ferre <[email protected]>
 -L:    [email protected] (moderated for non-subscribers)
 -S:    Supported
 -F:    drivers/dma/at_hdmac.c
 -F:    drivers/dma/at_hdmac_regs.h
 -F:    include/linux/platform_data/dma-atmel.h
 -
  ATMEL XDMA DRIVER
 -M:    Ludovic Desroches <ludovic.desroches@atmel.com>
 +M:    Ludovic Desroches <ludovic.desroches@microchip.com>
  L:    [email protected]
  L:    [email protected]
  S:    Supported
  F:    drivers/dma/at_xdmac.c
  
  ATMEL I2C DRIVER
 -M:    Ludovic Desroches <ludovic.desroches@atmel.com>
 +M:    Ludovic Desroches <ludovic.desroches@microchip.com>
  L:    [email protected]
  S:    Supported
  F:    drivers/i2c/busses/i2c-at91.c
  
  ATMEL ISI DRIVER
 -M:    Ludovic Desroches <ludovic.desroches@atmel.com>
 +M:    Ludovic Desroches <ludovic.desroches@microchip.com>
  L:    [email protected]
  S:    Supported
  F:    drivers/media/platform/soc_camera/atmel-isi.c
  F:    include/media/atmel-isi.h
  
  ATMEL LCDFB DRIVER
 -M:    Nicolas Ferre <nicolas.ferre@atmel.com>
 +M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  L:    [email protected]
  S:    Maintained
  F:    drivers/video/fbdev/atmel_lcdfb.c
  F:    include/video/atmel_lcdc.h
  
  ATMEL MACB ETHERNET DRIVER
 -M:    Nicolas Ferre <nicolas.ferre@atmel.com>
 +M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  S:    Supported
  F:    drivers/net/ethernet/cadence/
  
@@@ -2236,32 -2242,32 +2236,32 @@@ S:   Supporte
  F:    drivers/mtd/nand/atmel_nand*
  
  ATMEL SDMMC DRIVER
 -M:    Ludovic Desroches <ludovic.desroches@atmel.com>
 +M:    Ludovic Desroches <ludovic.desroches@microchip.com>
  L:    [email protected]
  S:    Supported
  F:    drivers/mmc/host/sdhci-of-at91.c
  
  ATMEL SPI DRIVER
 -M:    Nicolas Ferre <nicolas.ferre@atmel.com>
 +M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  S:    Supported
  F:    drivers/spi/spi-atmel.*
  
  ATMEL SSC DRIVER
 -M:    Nicolas Ferre <nicolas.ferre@atmel.com>
 +M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  L:    [email protected] (moderated for non-subscribers)
  S:    Supported
  F:    drivers/misc/atmel-ssc.c
  F:    include/linux/atmel-ssc.h
  
  ATMEL Timer Counter (TC) AND CLOCKSOURCE DRIVERS
 -M:    Nicolas Ferre <nicolas.ferre@atmel.com>
 +M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  L:    [email protected] (moderated for non-subscribers)
  S:    Supported
  F:    drivers/misc/atmel_tclib.c
  F:    drivers/clocksource/tcb_clksrc.c
  
  ATMEL USBA UDC DRIVER
 -M:    Nicolas Ferre <nicolas.ferre@atmel.com>
 +M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  L:    [email protected] (moderated for non-subscribers)
  S:    Supported
  F:    drivers/usb/gadget/udc/atmel_usba_udc.*
@@@ -2423,14 -2429,6 +2423,14 @@@ W:    https://linuxtv.or
  S:    Supported
  F:    drivers/media/platform/sti/bdisp
  
 +DELTA ST MEDIA DRIVER
 +M:    Hugues Fruchet <[email protected]>
 +L:    [email protected]
 +T:    git git://linuxtv.org/media_tree.git
 +W:    https://linuxtv.org
 +S:    Supported
 +F:    drivers/media/platform/sti/delta
 +
  BEFS FILE SYSTEM
  M:    Luis de Bethencourt <[email protected]>
  M:    Salah Triki <[email protected]>
  S:    Supported
  F:    drivers/net/ethernet/broadcom/bnx2x/
  
 +BROADCOM BNXT_EN 50 GIGABIT ETHERNET DRIVER
 +M:    Michael Chan <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/net/ethernet/broadcom/bnxt/
 +
  BROADCOM BCM281XX/BCM11XXX/BCM216XX ARM ARCHITECTURE
  M:    Florian Fainelli <[email protected]>
  M:    Ray Jui <[email protected]>
@@@ -2706,13 -2698,6 +2706,13 @@@ F:    drivers/irqchip/irq-brcmstb
  F:    include/linux/bcm963xx_nvram.h
  F:    include/linux/bcm963xx_tag.h
  
 +BROADCOM BMIPS CPUFREQ DRIVER
 +M:    Markus Mayer <[email protected]>
 +M:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/cpufreq/bmips-cpufreq.c
 +
  BROADCOM TG3 GIGABIT ETHERNET DRIVER
  M:    Siva Reddy Kallam <[email protected]>
  M:    Prashant Sreedharan <[email protected]>
@@@ -3588,7 -3573,7 +3588,7 @@@ F:      drivers/infiniband/hw/cxgb3
  F:    include/uapi/rdma/cxgb3-abi.h
  
  CXGB4 ETHERNET DRIVER (CXGB4)
 -M:    Hariprasad S <hariprasad@chelsio.com>
 +M:    Ganesh Goudar <ganeshgr@chelsio.com>
  L:    [email protected]
  W:    http://www.chelsio.com
  S:    Supported
@@@ -3815,7 -3800,6 +3815,7 @@@ F:      include/linux/devcoredump.
  DEVICE FREQUENCY (DEVFREQ)
  M:    MyungJoo Ham <[email protected]>
  M:    Kyungmin Park <[email protected]>
 +R:    Chanwoo Choi <[email protected]>
  L:    [email protected]
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mzx/devfreq.git
  S:    Maintained
@@@ -4121,24 -4105,18 +4121,24 @@@ F:   drivers/gpu/drm/bridge
  
  DRM DRIVER FOR BOCHS VIRTUAL GPU
  M:    Gerd Hoffmann <[email protected]>
 -S:    Odd Fixes
 +L:    [email protected]
 +T:    git git://git.kraxel.org/linux drm-qemu
 +S:    Maintained
  F:    drivers/gpu/drm/bochs/
  
  DRM DRIVER FOR QEMU'S CIRRUS DEVICE
  M:    Dave Airlie <[email protected]>
 -S:    Odd Fixes
 +M:    Gerd Hoffmann <[email protected]>
 +L:    [email protected]
 +T:    git git://git.kraxel.org/linux drm-qemu
 +S:    Obsolete
 +W:    https://www.kraxel.org/blog/2014/10/qemu-using-cirrus-considered-harmful/
  F:    drivers/gpu/drm/cirrus/
  
  RADEON and AMDGPU DRM DRIVERS
  M:    Alex Deucher <[email protected]>
  M:    Christian König <[email protected]>
 -L:    dri-devel@lists.freedesktop.org
 +L:    amd-gfx@lists.freedesktop.org
  T:    git git://people.freedesktop.org/~agd5f/linux
  S:    Supported
  F:    drivers/gpu/drm/radeon/
@@@ -4174,7 -4152,7 +4174,7 @@@ F:      Documentation/gpu/i915.rs
  INTEL GVT-g DRIVERS (Intel GPU Virtualization)
  M:      Zhenyu Wang <[email protected]>
  M:      Zhi Wang <[email protected]>
 -L:      i[email protected].org
 +L:      i[email protected].org
  L:      [email protected]
  W:      https://01.org/igvt-g
  T:      git https://github.com/01org/gvt-linux.git
@@@ -4325,10 -4303,7 +4325,10 @@@ F:    Documentation/devicetree/bindings/di
  
  DRM DRIVER FOR QXL VIRTUAL GPU
  M:    Dave Airlie <[email protected]>
 -S:    Odd Fixes
 +M:    Gerd Hoffmann <[email protected]>
 +L:    [email protected]
 +T:    git git://git.kraxel.org/linux drm-qemu
 +S:    Maintained
  F:    drivers/gpu/drm/qxl/
  F:    include/uapi/drm/qxl_drm.h
  
@@@ -5105,11 -5080,9 +5105,11 @@@ F:    drivers/net/wan/dlci.
  F:    drivers/net/wan/sdla.c
  
  FRAMEBUFFER LAYER
 +M:    Bartlomiej Zolnierkiewicz <[email protected]>
  L:    [email protected]
 +T:    git git://github.com/bzolnier/linux.git
  Q:    http://patchwork.kernel.org/project/linux-fbdev/list/
 -S:    Orphan
 +S:    Maintained
  F:    Documentation/fb/
  F:    drivers/video/
  F:    include/video/
@@@ -5295,7 -5268,7 +5295,7 @@@ M:      Jaegeuk Kim <[email protected]
  L:    [email protected]
  S:    Supported
  F:    fs/crypto/
 -F:    include/linux/fscrypto.h
 +F:    include/linux/fscrypt*.h
  
  F2FS FILE SYSTEM
  M:    Jaegeuk Kim <[email protected]>
@@@ -5531,7 -5504,6 +5531,7 @@@ M:      Alex Elder <[email protected]
  M:    Greg Kroah-Hartman <[email protected]>
  S:    Maintained
  F:    drivers/staging/greybus/
 +L:    [email protected]
  
  GREYBUS AUDIO PROTOCOLS DRIVERS
  M:    Vaibhav Agarwal <[email protected]>
@@@ -5653,14 -5625,6 +5653,14 @@@ T:    git git://linuxtv.org/media_tree.gi
  S:    Odd Fixes
  F:    drivers/media/usb/gspca/
  
 +GTP (GPRS Tunneling Protocol)
 +M:    Pablo Neira Ayuso <[email protected]>
 +M:    Harald Welte <[email protected]>
 +L:    [email protected]
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pablo/gtp.git
 +S:    Maintained
 +F:    drivers/net/gtp.c
 +
  GUID PARTITION TABLE (GPT)
  M:    Davidlohr Bueso <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    sound/parisc/harmony.*
  
 -HD29L2 MEDIA DRIVER
 -M:    Antti Palosaari <[email protected]>
 -L:    [email protected]
 -W:    https://linuxtv.org
 -W:    http://palosaari.fi/linux/
 -Q:    http://patchwork.linuxtv.org/project/linux-media/list/
 -T:    git git://linuxtv.org/anttip/media_tree.git
 -S:    Maintained
 -F:    drivers/media/dvb-frontends/hd29l2*
 -
  HEWLETT PACKARD ENTERPRISE ILO NMI WATCHDOG DRIVER
  M:    Jimmy Vance <[email protected]>
  S:    Supported
@@@ -5987,13 -5961,11 +5987,13 @@@ F:   drivers/media/platform/sti/hv
  Hyper-V CORE AND DRIVERS
  M:    "K. Y. Srinivasan" <[email protected]>
  M:    Haiyang Zhang <[email protected]>
 +M:    Stephen Hemminger <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    arch/x86/include/asm/mshyperv.h
  F:    arch/x86/include/uapi/asm/hyperv.h
  F:    arch/x86/kernel/cpu/mshyperv.c
 +F:    arch/x86/hyperv
  F:    drivers/hid/hid-hyperv.c
  F:    drivers/hv/
  F:    drivers/input/serio/hyperv-keyboard.c
@@@ -6264,13 -6236,6 +6264,13 @@@ F:    include/net/cfg802154.
  F:    include/net/ieee802154_netdev.h
  F:    Documentation/networking/ieee802154.txt
  
 +IFE PROTOCOL
 +M:    Yotam Gigi <[email protected]>
 +M:    Jamal Hadi Salim <[email protected]>
 +F:    net/ife
 +F:    include/net/ife.h
 +F:    include/uapi/linux/ife.h
 +
  IGORPLUG-USB IR RECEIVER
  M:    Sean Young <[email protected]>
  L:    [email protected]
@@@ -6754,8 -6719,9 +6754,8 @@@ S:      Odd Fixe
  F:    drivers/tty/ipwireless/
  
  IPX NETWORK LAYER
 -M:    Arnaldo Carvalho de Melo <[email protected]>
  L:    [email protected]
 -S:    Maintained
 +S:    Odd fixes
  F:    include/net/ipx.h
  F:    include/uapi/linux/ipx.h
  F:    net/ipx/
@@@ -7527,8 -7493,8 +7527,8 @@@ S:      Maintaine
  F:    drivers/misc/lkdtm*
  
  LLC (802.2)
 -M:    Arnaldo Carvalho de Melo <[email protected]>
 -S:    Maintained
 +L:    [email protected]
 +S:    Odd fixes
  F:    include/linux/llc.h
  F:    include/uapi/linux/llc.h
  F:    include/net/llc*
@@@ -7561,7 -7527,6 +7561,7 @@@ S:      Maintaine
  F:    Documentation/hwmon/lm90
  F:    Documentation/devicetree/bindings/hwmon/lm90.txt
  F:    drivers/hwmon/lm90.c
 +F:    include/dt-bindings/thermal/lm90.h
  
  LM95234 HARDWARE MONITOR DRIVER
  M:    Guenter Roeck <[email protected]>
@@@ -7727,12 -7692,6 +7727,12 @@@ W:    http://www.kernel.org/doc/man-page
  L:    [email protected]
  S:    Maintained
  
 +MARDUK (CREATOR CI40) DEVICE TREE SUPPORT
 +M:    Rahul Bedarkar <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    arch/mips/boot/dts/img/pistachio_marduk.dts
 +
  MARVELL 88E6XXX ETHERNET SWITCH FABRIC DRIVER
  M:    Andrew Lunn <[email protected]>
  M:    Vivien Didelot <[email protected]>
@@@ -7742,10 -7701,8 +7742,10 @@@ F:    drivers/net/dsa/mv88e6xxx
  F:    Documentation/devicetree/bindings/net/dsa/marvell.txt
  
  MARVELL ARMADA DRM SUPPORT
 -M:    Russell King <rmk+kernel@armlinux.org.uk>
 +M:    Russell King <linux@armlinux.org.uk>
  S:    Maintained
 +T:    git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-armada-devel
 +T:    git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-armada-fixes
  F:    drivers/gpu/drm/armada/
  F:    include/uapi/drm/armada_drm.h
  F:    Documentation/devicetree/bindings/display/armada/
@@@ -8217,15 -8174,6 +8217,15 @@@ S:    Maintaine
  F:    drivers/tty/serial/atmel_serial.c
  F:    include/linux/atmel_serial.h
  
 +MICROCHIP / ATMEL DMA DRIVER
 +M:    Ludovic Desroches <[email protected]>
 +L:    [email protected] (moderated for non-subscribers)
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/dma/at_hdmac.c
 +F:    drivers/dma/at_hdmac_regs.h
 +F:    include/linux/platform_data/dma-atmel.h
 +
  MICROCHIP / ATMEL ISC DRIVER
  M:    Songjun Wu <[email protected]>
  L:    [email protected]
@@@ -8234,14 -8182,6 +8234,14 @@@ F:    drivers/media/platform/atmel/atmel-i
  F:    drivers/media/platform/atmel/atmel-isc-regs.h
  F:    devicetree/bindings/media/atmel-isc.txt
  
 +MICROCHIP USB251XB DRIVER
 +M:    Richard Leitner <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/usb/misc/usb251xb.c
 +F:    include/linux/platform_data/usb251xb.h
 +F:    Documentation/devicetree/bindings/usb/usb251xb.txt
 +
  MICROSOFT SURFACE PRO 3 BUTTON DRIVER
  M:    Chen Yu <[email protected]>
  L:    [email protected]
@@@ -8364,6 -8304,7 +8364,7 @@@ F:      drivers/media/dvb-frontends/mn88473
  MODULE SUPPORT
  M:    Jessica Yu <[email protected]>
  M:    Rusty Russell <[email protected]>
+ T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux.git modules-next
  S:    Maintained
  F:    include/linux/module.h
  F:    kernel/module.c
@@@ -8607,8 -8548,9 +8608,8 @@@ F:      Documentation/networking/s2io.tx
  F:    Documentation/networking/vxge.txt
  F:    drivers/net/ethernet/neterion/
  
 -NETFILTER ({IP,IP6,ARP,EB,NF}TABLES)
 +NETFILTER
  M:    Pablo Neira Ayuso <[email protected]>
 -M:    Patrick McHardy <[email protected]>
  M:    Jozsef Kadlecsik <[email protected]>
  L:    [email protected]
  L:    [email protected]
@@@ -8653,10 -8595,10 +8654,10 @@@ S:   Maintaine
  F:    drivers/net/ethernet/netronome/
  
  NETWORK BLOCK DEVICE (NBD)
 -M:    Markus Pargmann <[email protected]>
 +M:    Josef Bacik <[email protected]>
  S:    Maintained
 +L:    [email protected]
  L:    [email protected]
 -T:    git git://git.pengutronix.de/git/mpa/linux-nbd.git
  F:    Documentation/blockdev/nbd.txt
  F:    drivers/block/nbd.c
  F:    include/uapi/linux/nbd.h
@@@ -8852,22 -8794,6 +8853,22 @@@ T:    git git://git.kernel.org/pub/scm/lin
  S:    Maintained
  F:    arch/nios2/
  
 +NOKIA N900 CAMERA SUPPORT (ET8EK8 SENSOR, AD5820 FOCUS)
 +M:    Pavel Machek <[email protected]>
 +M:    Sakari Ailus <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/media/i2c/et8ek8
 +F:    drivers/media/i2c/ad5820.c
 +
 +NOKIA N900 CAMERA SUPPORT (ET8EK8 SENSOR, AD5820 FOCUS)
 +M:    Pavel Machek <[email protected]>
 +M:    Sakari Ailus <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/media/i2c/et8ek8
 +F:    drivers/media/i2c/ad5820.c
 +
  NOKIA N900 POWER SUPPLY DRIVERS
  R:    Pali Rohár <[email protected]>
  F:    include/linux/power/bq2415x_charger.h
@@@ -8927,22 -8853,17 +8928,22 @@@ F:   drivers/video/fbdev/nvidia
  NVM EXPRESS DRIVER
  M:    Keith Busch <[email protected]>
  M:    Jens Axboe <[email protected]>
 +M:    Christoph Hellwig <[email protected]>
 +M:    Sagi Grimberg <[email protected]>
  L:    [email protected]
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git
 -W:    https://kernel.googlesource.com/pub/scm/linux/kernel/git/axboe/linux-block/
 +T:    git://git.infradead.org/nvme.git
 +W:    http://git.infradead.org/nvme.git
  S:    Supported
  F:    drivers/nvme/host/
  F:    include/linux/nvme.h
 +F:    include/uapi/linux/nvme_ioctl.h
  
  NVM EXPRESS TARGET DRIVER
  M:    Christoph Hellwig <[email protected]>
  M:    Sagi Grimberg <[email protected]>
  L:    [email protected]
 +T:    git://git.infradead.org/nvme.git
 +W:    http://git.infradead.org/nvme.git
  S:    Supported
  F:    drivers/nvme/target/
  
@@@ -8973,10 -8894,8 +8974,10 @@@ S:    Supporte
  F:    drivers/nfc/nxp-nci
  
  NXP TDA998X DRM DRIVER
 -M:    Russell King <rmk+kernel@armlinux.org.uk>
 +M:    Russell King <linux@armlinux.org.uk>
  S:    Supported
 +T:    git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-devel
 +T:    git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-fixes
  F:    drivers/gpu/drm/i2c/tda998x_drv.c
  F:    include/drm/i2c/tda998x.h
  
@@@ -9425,14 -9344,6 +9426,14 @@@ F:    drivers/video/fbdev/sti
  F:    drivers/video/console/sti*
  F:    drivers/video/logo/logo_parisc*
  
 +PARMAN
 +M:    Jiri Pirko <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    lib/parman.c
 +F:    lib/test_parman.c
 +F:    include/linux/parman.h
 +
  PC87360 HARDWARE MONITORING DRIVER
  M:    Jim Cromie <[email protected]>
  L:    [email protected]
@@@ -9800,7 -9711,7 +9801,7 @@@ S:      Maintaine
  F:    drivers/pinctrl/pinctrl-at91.*
  
  PIN CONTROLLER - ATMEL AT91 PIO4
 -M:    Ludovic Desroches <ludovic.desroches@atmel.com>
 +M:    Ludovic Desroches <ludovic.desroches@microchip.com>
  L:    [email protected] (moderated for non-subscribers)
  L:    [email protected]
  S:    Supported
@@@ -9852,7 -9763,7 +9853,7 @@@ L:      [email protected]
  S:      Maintained
  F:      arch/mips/pistachio/
  F:      arch/mips/include/asm/mach-pistachio/
 -F:      arch/mips/boot/dts/pistachio/
 +F:      arch/mips/boot/dts/img/pistachio*
  F:      arch/mips/configs/pistachio*_defconfig
  
  PKTCDVD DRIVER
@@@ -9932,7 -9843,7 +9933,7 @@@ M:      Mark Rutland <[email protected]
  M:    Lorenzo Pieralisi <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    drivers/firmware/psci.c
 +F:    drivers/firmware/psci*.c
  F:    include/linux/psci.h
  F:    include/uapi/linux/psci.h
  
  S:    Maintained
  F:    drivers/block/ps3vram.c
  
 +PSAMPLE PACKET SAMPLING SUPPORT:
 +M:    Yotam Gigi <[email protected]>
 +S:    Maintained
 +F:    net/psample
 +F:    include/net/psample.h
 +F:    include/uapi/linux/psample.h
 +
  PSTORE FILESYSTEM
 +M:    Kees Cook <[email protected]>
  M:    Anton Vorontsov <[email protected]>
  M:    Colin Cross <[email protected]>
 -M:    Kees Cook <[email protected]>
  M:    Tony Luck <[email protected]>
  S:    Maintained
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/pstore
  F:    fs/pstore/
  F:    include/linux/pstore*
  F:    drivers/firmware/efi/efi-pstore.c
  F:    drivers/acpi/apei/erst.c
 +F:    Documentation/admin-guide/ramoops.rst
 +F:    Documentation/devicetree/bindings/reserved-memory/ramoops.txt
 +K:    \b(pstore|ramoops)
  
  PTP HARDWARE CLOCK SUPPORT
  M:    Richard Cochran <[email protected]>
@@@ -10251,8 -10152,7 +10252,8 @@@ F:   include/uapi/linux/qnx4_fs.
  F:    include/uapi/linux/qnxtypes.h
  
  QORIQ DPAA2 FSL-MC BUS DRIVER
 -M:    Stuart Yoder <[email protected]>
 +M:    Stuart Yoder <[email protected]>
 +M:    Laurentiu Tudor <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/staging/fsl-mc/
@@@ -10270,6 -10170,7 +10271,6 @@@ F:   drivers/media/tuners/qt1010
  QUALCOMM ATHEROS ATH9K WIRELESS DRIVER
  M:    QCA ath9k Development <[email protected]>
  L:    [email protected]
 -L:    [email protected]
  W:    http://wireless.kernel.org/en/users/Drivers/ath9k
  S:    Supported
  F:    drivers/net/wireless/ath/ath9k/
  F:    drivers/net/ethernet/renesas/
  F:    include/linux/sh_eth.h
  
 +RENESAS R-CAR GYROADC DRIVER
 +M:    Marek Vasut <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/iio/adc/rcar_gyro_adc.c
 +
  RENESAS USB2 PHY DRIVER
  M:    Yoshihiro Shimoda <[email protected]>
  L:    [email protected]
@@@ -10674,7 -10569,7 +10675,7 @@@ F:   drivers/net/wireless/realtek/rtlwifi
  F:    drivers/net/wireless/realtek/rtlwifi/rtl8192ce/
  
  RTL8XXXU WIRELESS DRIVER (rtl8xxxu)
 -M:    Jes Sorensen <Jes.Sorensen@redhat.com>
 +M:    Jes Sorensen <Jes.Sorensen@gmail.com>
  L:    [email protected]
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jes/linux.git rtl8xxxu-devel
  S:    Maintained
@@@ -10927,14 -10822,6 +10928,14 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/serial/
  F:    drivers/tty/serial/
  
 +SERIAL DEVICE BUS
 +M:    Rob Herring <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/serial/slave-device.txt
 +F:    drivers/tty/serdev/
 +F:    include/linux/serdev.h
 +
  SERIAL IR RECEIVER
  M:    Sean Young <[email protected]>
  L:    [email protected]
@@@ -10948,13 -10835,6 +10949,13 @@@ S: Maintaine
  F:    drivers/staging/media/st-cec/
  F:    Documentation/devicetree/bindings/media/stih-cec.txt
  
 +SHARED MEMORY COMMUNICATIONS (SMC) SOCKETS
 +M:    Ursula Braun <[email protected]>
 +L:    [email protected]
 +W:    http://www.ibm.com/developerworks/linux/linux390/
 +S:    Supported
 +F:    net/smc/
 +
  SYNOPSYS DESIGNWARE DMAC DRIVER
  M:    Viresh Kumar <[email protected]>
  M:    Andy Shevchenko <[email protected]>
@@@ -10963,6 -10843,13 +10964,6 @@@ F:  include/linux/dma/dw.
  F:    include/linux/platform_data/dma-dw.h
  F:    drivers/dma/dw/
  
 -SYNOPSYS DESIGNWARE ETHERNET QOS 4.10a driver
 -M: Lars Persson <[email protected]>
 -S: Supported
 -F: Documentation/devicetree/bindings/net/snps,dwc-qos-ethernet.txt
 -F: drivers/net/ethernet/synopsys/dwc_eth_qos.c
 -
  SYNOPSYS DESIGNWARE I2C DRIVER
  M:    Jarkko Nikula <[email protected]>
  R:    Andy Shevchenko <[email protected]>
@@@ -10976,6 -10863,7 +10977,6 @@@ SYNOPSYS DESIGNWARE MMC/SD/SDIO DRIVE
  M:    Jaehoon Chung <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    include/linux/mmc/dw_mmc.h
  F:    drivers/mmc/host/dw_mmc*
  
  SYSTEM TRACE MODULE CLASS
  S:    Maintained
  F:    drivers/mmc/host/sdhci-spear.c
  
 +SECURE ENCRYPTING DEVICE (SED) OPAL DRIVER
 +M:    Scott Bauer <[email protected]>
 +M:    Jonathan Derrick <[email protected]>
 +M:    Rafael Antognolli <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    block/sed*
 +F:    block/opal_proto.h
 +F:    include/linux/sed*
 +F:    include/uapi/linux/sed*
 +
  SECURITY SUBSYSTEM
  M:    James Morris <[email protected]>
  M:    "Serge E. Hallyn" <[email protected]>
@@@ -11415,13 -11292,6 +11416,13 @@@ F: arch/arm/mach-s3c24xx/mach-bast.
  F:    arch/arm/mach-s3c24xx/bast-ide.c
  F:    arch/arm/mach-s3c24xx/bast-irq.c
  
 +SIPHASH PRF ROUTINES
 +M:    Jason A. Donenfeld <[email protected]>
 +S:    Maintained
 +F:    lib/siphash.c
 +F:    lib/test_siphash.c
 +F:    include/linux/siphash.h
 +
  TI DAVINCI MACHINE SUPPORT
  M:    Sekhar Nori <[email protected]>
  M:    Kevin Hilman <[email protected]>
@@@ -11993,7 -11863,6 +11994,7 @@@ F:   include/linux/swiotlb.
  
  SWITCHDEV
  M:    Jiri Pirko <[email protected]>
 +M:    Ivan Vecera <[email protected]>
  L:    [email protected]
  S:    Supported
  F:    net/switchdev/
@@@ -13087,7 -12956,7 +13088,7 @@@ USERSPACE I/O (UIO
  M:    Greg Kroah-Hartman <[email protected]>
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
 -F:    Documentation/DocBook/uio-howto.tmpl
 +F:    Documentation/driver-api/uio-howto.rst
  F:    drivers/uio/
  F:    include/linux/uio*.h
  
@@@ -13172,7 -13041,7 +13173,7 @@@ F:   drivers/input/serio/userio.
  F:    include/uapi/linux/userio.h
  
  VIRTIO CONSOLE DRIVER
 -M:    Amit Shah <amit[email protected]>
 +M:    Amit Shah <amit@kernel.org>
  L:    [email protected]
  S:    Maintained
  F:    drivers/char/virtio_console.c
@@@ -13207,7 -13076,6 +13208,7 @@@ M:   David Airlie <[email protected]
  M:    Gerd Hoffmann <[email protected]>
  L:    [email protected]
  L:    [email protected]
 +T:    git git://git.kraxel.org/linux drm-qemu
  S:    Maintained
  F:    drivers/gpu/drm/virtio/
  F:    include/uapi/linux/virtio_gpu.h
@@@ -13480,8 -13348,10 +13481,8 @@@ S:  Maintaine
  F:    drivers/input/misc/wistron_btns.c
  
  WL3501 WIRELESS PCMCIA CARD DRIVER
 -M:    Arnaldo Carvalho de Melo <[email protected]>
  L:    [email protected]
 -W:    http://oops.ghostprotocols.net:81/blog
 -S:    Maintained
 +S:    Odd fixes
  F:    drivers/net/wireless/wl3501*
  
  WOLFSON MICROELECTRONICS DRIVERS
@@@ -13557,7 -13427,6 +13558,7 @@@ F:   arch/x86
  
  X86 PLATFORM DRIVERS
  M:    Darren Hart <[email protected]>
 +M:    Andy Shevchenko <[email protected]>
  L:    [email protected]
  T:    git git://git.infradead.org/users/dvhart/linux-platform-drivers-x86.git
  S:    Maintained
@@@ -13659,11 -13528,11 +13660,11 @@@ F:        arch/x86/xen/*swiotlb
  F:    drivers/xen/*swiotlb*
  
  XFS FILESYSTEM
 -M:    Dave Chinner <david@fromorbit.com>
 +M:    Darrick J. Wong <darrick.wong@oracle.com>
  M:    [email protected]
  L:    [email protected]
  W:    http://xfs.org/
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs.git
 +T:    git git://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git
  S:    Supported
  F:    Documentation/filesystems/xfs.txt
  F:    fs/xfs/
@@@ -13729,7 -13598,6 +13730,7 @@@ F:   drivers/net/hamradio/z8530.
  
  ZBUD COMPRESSED PAGE ALLOCATOR
  M:    Seth Jennings <[email protected]>
 +M:    Dan Streetman <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    mm/zbud.c
  S:    Maintained
  F:    drivers/net/wireless/zydas/zd1211rw/
  
 +ZD1301_DEMOD MEDIA DRIVER
 +M:    Antti Palosaari <[email protected]>
 +L:    [email protected]
 +W:    https://linuxtv.org/
 +W:    http://palosaari.fi/linux/
 +Q:    https://patchwork.linuxtv.org/project/linux-media/list/
 +S:    Maintained
 +F:    drivers/media/dvb-frontends/zd1301_demod*
 +
 +ZD1301 MEDIA DRIVER
 +M:    Antti Palosaari <[email protected]>
 +L:    [email protected]
 +W:    https://linuxtv.org/
 +W:    http://palosaari.fi/linux/
 +Q:    https://patchwork.linuxtv.org/project/linux-media/list/
 +S:    Maintained
 +F:    drivers/media/usb/dvb-usb-v2/zd1301*
 +
  ZPOOL COMPRESSED PAGE STORAGE API
  M:    Dan Streetman <[email protected]>
  L:    [email protected]
@@@ -13803,7 -13653,6 +13804,7 @@@ F:   Documentation/vm/zsmalloc.tx
  
  ZSWAP COMPRESSED SWAP CACHING
  M:    Seth Jennings <[email protected]>
 +M:    Dan Streetman <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    mm/zswap.c
diff --combined include/linux/module.h
index f4f542ed3d9204c8f48a6fb9a1b5571bff8ed192,4e09f469bd7d66d23bb778af246d93861f8cf08d..0297c5cd7cdfc6692a400cac545d1a07637ab8b2
@@@ -18,6 -18,7 +18,6 @@@
  #include <linux/moduleparam.h>
  #include <linux/jump_label.h>
  #include <linux/export.h>
 -#include <linux/extable.h>    /* only as arch move module.h -> extable.h */
  #include <linux/rbtree_latch.h>
  
  #include <linux/percpu.h>
@@@ -126,13 -127,13 +126,13 @@@ extern void cleanup_module(void)
  
  /* Each module must use one module_init(). */
  #define module_init(initfn)                                   \
-       static inline initcall_t __inittest(void)               \
+       static inline initcall_t __maybe_unused __inittest(void)                \
        { return initfn; }                                      \
        int init_module(void) __attribute__((alias(#initfn)));
  
  /* This is only required if you want to be unloadable. */
  #define module_exit(exitfn)                                   \
-       static inline exitcall_t __exittest(void)               \
+       static inline exitcall_t __maybe_unused __exittest(void)                \
        { return exitfn; }                                      \
        void cleanup_module(void) __attribute__((alias(#exitfn)));
  
@@@ -281,8 -282,6 +281,6 @@@ enum module_state 
        MODULE_STATE_UNFORMED,  /* Still setting it up. */
  };
  
- struct module;
  struct mod_tree_node {
        struct module *mod;
        struct latch_tree_node node;
@@@ -345,7 -344,7 +343,7 @@@ struct module 
  
        /* Exported symbols */
        const struct kernel_symbol *syms;
 -      const unsigned long *crcs;
 +      const s32 *crcs;
        unsigned int num_syms;
  
        /* Kernel parameters. */
        /* GPL-only exported symbols. */
        unsigned int num_gpl_syms;
        const struct kernel_symbol *gpl_syms;
 -      const unsigned long *gpl_crcs;
 +      const s32 *gpl_crcs;
  
  #ifdef CONFIG_UNUSED_SYMBOLS
        /* unused exported symbols. */
        const struct kernel_symbol *unused_syms;
 -      const unsigned long *unused_crcs;
 +      const s32 *unused_crcs;
        unsigned int num_unused_syms;
  
        /* GPL-only, unused exported symbols. */
        unsigned int num_unused_gpl_syms;
        const struct kernel_symbol *unused_gpl_syms;
 -      const unsigned long *unused_gpl_crcs;
 +      const s32 *unused_gpl_crcs;
  #endif
  
  #ifdef CONFIG_MODULE_SIG
  
        /* symbols that will be GPL-only in the near future. */
        const struct kernel_symbol *gpl_future_syms;
 -      const unsigned long *gpl_future_crcs;
 +      const s32 *gpl_future_crcs;
        unsigned int num_gpl_future_syms;
  
        /* Exception table */
@@@ -522,7 -521,7 +520,7 @@@ struct module *find_module(const char *
  
  struct symsearch {
        const struct kernel_symbol *start, *stop;
 -      const unsigned long *crcs;
 +      const s32 *crcs;
        enum {
                NOT_GPL_ONLY,
                GPL_ONLY,
   */
  const struct kernel_symbol *find_symbol(const char *name,
                                        struct module **owner,
 -                                      const unsigned long **crc,
 +                                      const s32 **crc,
                                        bool gplok,
                                        bool warn);
  
@@@ -763,7 -762,7 +761,7 @@@ extern int module_sysfs_initialized
  
  #define __MODULE_STRING(x) __stringify(x)
  
 -#ifdef CONFIG_DEBUG_SET_MODULE_RONX
 +#ifdef CONFIG_STRICT_MODULE_RWX
  extern void set_all_modules_text_rw(void);
  extern void set_all_modules_text_ro(void);
  extern void module_enable_ro(const struct module *mod, bool after_init);
diff --combined kernel/module.c
index a3889169a3ae2e50091fcb019f41a9a43ce17a19,14da88b5d0fb65524b047eaf2bbaf6d29cc9bf1e..7eba6dea4f417dbf363731cf2a3cc374ce1d703b
@@@ -17,7 -17,6 +17,7 @@@
      Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  */
  #include <linux/export.h>
 +#include <linux/extable.h>
  #include <linux/moduleloader.h>
  #include <linux/trace_events.h>
  #include <linux/init.h>
@@@ -62,7 -61,6 +62,7 @@@
  #include <linux/pfn.h>
  #include <linux/bsearch.h>
  #include <linux/dynamic_debug.h>
 +#include <linux/audit.h>
  #include <uapi/linux/module.h>
  #include "module-internal.h"
  
@@@ -76,9 -74,9 +76,9 @@@
  /*
   * Modules' sections will be aligned on page boundaries
   * to ensure complete separation of code and data, but
 - * only when CONFIG_DEBUG_SET_MODULE_RONX=y
 + * only when CONFIG_STRICT_MODULE_RWX=y
   */
 -#ifdef CONFIG_DEBUG_SET_MODULE_RONX
 +#ifdef CONFIG_STRICT_MODULE_RWX
  # define debug_align(X) ALIGN(X, PAGE_SIZE)
  #else
  # define debug_align(X) (X)
@@@ -391,16 -389,16 +391,16 @@@ extern const struct kernel_symbol __sta
  extern const struct kernel_symbol __stop___ksymtab_gpl[];
  extern const struct kernel_symbol __start___ksymtab_gpl_future[];
  extern const struct kernel_symbol __stop___ksymtab_gpl_future[];
 -extern const unsigned long __start___kcrctab[];
 -extern const unsigned long __start___kcrctab_gpl[];
 -extern const unsigned long __start___kcrctab_gpl_future[];
 +extern const s32 __start___kcrctab[];
 +extern const s32 __start___kcrctab_gpl[];
 +extern const s32 __start___kcrctab_gpl_future[];
  #ifdef CONFIG_UNUSED_SYMBOLS
  extern const struct kernel_symbol __start___ksymtab_unused[];
  extern const struct kernel_symbol __stop___ksymtab_unused[];
  extern const struct kernel_symbol __start___ksymtab_unused_gpl[];
  extern const struct kernel_symbol __stop___ksymtab_unused_gpl[];
 -extern const unsigned long __start___kcrctab_unused[];
 -extern const unsigned long __start___kcrctab_unused_gpl[];
 +extern const s32 __start___kcrctab_unused[];
 +extern const s32 __start___kcrctab_unused_gpl[];
  #endif
  
  #ifndef CONFIG_MODVERSIONS
@@@ -499,7 -497,7 +499,7 @@@ struct find_symbol_arg 
  
        /* Output */
        struct module *owner;
 -      const unsigned long *crc;
 +      const s32 *crc;
        const struct kernel_symbol *sym;
  };
  
@@@ -565,7 -563,7 +565,7 @@@ static bool find_symbol_in_section(cons
   * (optional) module which owns it.  Needs preempt disabled or module_mutex. */
  const struct kernel_symbol *find_symbol(const char *name,
                                        struct module **owner,
 -                                      const unsigned long **crc,
 +                                      const s32 **crc,
                                        bool gplok,
                                        bool warn)
  {
@@@ -1147,7 -1145,7 +1147,7 @@@ static size_t module_flags_taint(struc
  
        for (i = 0; i < TAINT_FLAGS_COUNT; i++) {
                if (taint_flags[i].module && test_bit(i, &mod->taints))
 -                      buf[l++] = taint_flags[i].true;
 +                      buf[l++] = taint_flags[i].c_true;
        }
  
        return l;
@@@ -1251,17 -1249,23 +1251,17 @@@ static int try_to_force_load(struct mod
  }
  
  #ifdef CONFIG_MODVERSIONS
 -/* If the arch applies (non-zero) relocations to kernel kcrctab, unapply it. */
 -static unsigned long maybe_relocated(unsigned long crc,
 -                                   const struct module *crc_owner)
 +
 +static u32 resolve_rel_crc(const s32 *crc)
  {
 -#ifdef ARCH_RELOCATES_KCRCTAB
 -      if (crc_owner == NULL)
 -              return crc - (unsigned long)reloc_start;
 -#endif
 -      return crc;
 +      return *(u32 *)((void *)crc + *crc);
  }
  
  static int check_version(Elf_Shdr *sechdrs,
                         unsigned int versindex,
                         const char *symname,
                         struct module *mod,
 -                       const unsigned long *crc,
 -                       const struct module *crc_owner)
 +                       const s32 *crc)
  {
        unsigned int i, num_versions;
        struct modversion_info *versions;
                / sizeof(struct modversion_info);
  
        for (i = 0; i < num_versions; i++) {
 +              u32 crcval;
 +
                if (strcmp(versions[i].name, symname) != 0)
                        continue;
  
 -              if (versions[i].crc == maybe_relocated(*crc, crc_owner))
 +              if (IS_ENABLED(CONFIG_MODULE_REL_CRCS))
 +                      crcval = resolve_rel_crc(crc);
 +              else
 +                      crcval = *crc;
 +              if (versions[i].crc == crcval)
                        return 1;
 -              pr_debug("Found checksum %lX vs module %lX\n",
 -                     maybe_relocated(*crc, crc_owner), versions[i].crc);
 +              pr_debug("Found checksum %X vs module %lX\n",
 +                       crcval, versions[i].crc);
                goto bad_version;
        }
  
@@@ -1309,7 -1307,7 +1309,7 @@@ static inline int check_modstruct_versi
                                          unsigned int versindex,
                                          struct module *mod)
  {
 -      const unsigned long *crc;
 +      const s32 *crc;
  
        /*
         * Since this should be found in kernel (which can't be removed), no
        }
        preempt_enable();
        return check_version(sechdrs, versindex,
 -                           VMLINUX_SYMBOL_STR(module_layout), mod, crc,
 -                           NULL);
 +                           VMLINUX_SYMBOL_STR(module_layout), mod, crc);
  }
  
  /* First part is kernel version, which we ignore if module has crcs. */
@@@ -1341,7 -1340,8 +1341,7 @@@ static inline int check_version(Elf_Shd
                                unsigned int versindex,
                                const char *symname,
                                struct module *mod,
 -                              const unsigned long *crc,
 -                              const struct module *crc_owner)
 +                              const s32 *crc)
  {
        return 1;
  }
@@@ -1368,7 -1368,7 +1368,7 @@@ static const struct kernel_symbol *reso
  {
        struct module *owner;
        const struct kernel_symbol *sym;
 -      const unsigned long *crc;
 +      const s32 *crc;
        int err;
  
        /*
        if (!sym)
                goto unlock;
  
 -      if (!check_version(info->sechdrs, info->index.vers, name, mod, crc,
 -                         owner)) {
 +      if (!check_version(info->sechdrs, info->index.vers, name, mod, crc)) {
                sym = ERR_PTR(-EINVAL);
                goto getname;
        }
@@@ -1846,7 -1847,7 +1846,7 @@@ static void mod_sysfs_teardown(struct m
        mod_sysfs_fini(mod);
  }
  
 -#ifdef CONFIG_DEBUG_SET_MODULE_RONX
 +#ifdef CONFIG_STRICT_MODULE_RWX
  /*
   * LKM RO/NX protection: protect module's text/ro-data
   * from modification and any data from execution.
@@@ -2811,6 -2812,8 +2811,8 @@@ static int check_modinfo_livepatch(stru
        if (get_modinfo(info, "livepatch")) {
                mod->klp = true;
                add_taint_module(mod, TAINT_LIVEPATCH, LOCKDEP_STILL_OK);
+               pr_notice_once("%s: tainting kernel with TAINT_LIVEPATCH\n",
+                              mod->name);
        }
  
        return 0;
@@@ -3610,8 -3613,6 +3612,8 @@@ static int load_module(struct load_inf
                goto free_copy;
        }
  
 +      audit_log_kern_module(mod->name);
 +
        /* Reserve our place in the list. */
        err = add_unformed_module(mod);
        if (err)
                       mod->name, after_dashes);
        }
  
 -      /* Link in to syfs. */
 +      /* Link in to sysfs. */
        err = mod_sysfs_setup(mod, info, mod->kp, mod->num_kp);
        if (err < 0)
                goto coming_cleanup;
        mod_sysfs_teardown(mod);
   coming_cleanup:
        mod->state = MODULE_STATE_GOING;
+       destroy_params(mod->kp, mod->num_kp);
        blocking_notifier_call_chain(&module_notify_list,
                                     MODULE_STATE_GOING, mod);
        klp_module_going(mod);
@@@ -4169,22 -4171,23 +4172,23 @@@ const struct exception_table_entry *sea
        struct module *mod;
  
        preempt_disable();
-       list_for_each_entry_rcu(mod, &modules, list) {
-               if (mod->state == MODULE_STATE_UNFORMED)
-                       continue;
-               if (mod->num_exentries == 0)
-                       continue;
+       mod = __module_address(addr);
+       if (!mod)
+               goto out;
  
-               e = search_extable(mod->extable,
-                                  mod->extable + mod->num_exentries - 1,
-                                  addr);
-               if (e)
-                       break;
-       }
+       if (!mod->num_exentries)
+               goto out;
+       e = search_extable(mod->extable,
+                          mod->extable + mod->num_exentries - 1,
+                          addr);
+ out:
        preempt_enable();
  
-       /* Now, if we found one, we are running inside it now, hence
-          we cannot unload the module, hence no refcnt needed. */
+       /*
+        * Now, if we found one, we are running inside it now, hence
+        * we cannot unload the module, hence no refcnt needed.
+        */
        return e;
  }
  
This page took 0.146616 seconds and 4 git commands to generate.