lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 31 Oct 2011 20:45:42 -0400
From:	Paul Gortmaker <paul.gortmaker@...driver.com>
To:	<torvalds@...ux-foundation.org>
CC:	<rusty@...tcorp.com.au>, <mingo@...e.hu>,
	<akpm@...ux-foundation.org>, <sfr@...b.auug.org.au>,
	<linux-kernel@...r.kernel.org>
Subject: [GIT PULL] introduce export.h; reduce module.h usage

Linus,

Please pull the below to get the module.h split content.  It has been
tested on v3.1-rc6, soaked in linux-next, and re-tested again lots more
today after rebasing it to allow most of the linux-next finds to be
blended in, where they could not be on the original v3.1-rc6 baseline.

A special thanks to Stephen for all his efforts in assisting with this.

Paul.

---


The following changes since commit 839d8810747bbf39e0a5a7f223b67bffa7945f8d:

  Merge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging (2011-10-30 15:54:59 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux.git modsplit-Oct31_2011

Axel Lin (1):
      unicore32: EXPORT_SYMBOL needs export.h

Heiko Carstens (1):
      s390: add missing module.h/export.h includes

Mark Brown (1):
      cpufreq: Fix build of s3c64xx cpufreq driver for header change

Paul Gortmaker (224):
      module.h: split out the EXPORT_SYMBOL into export.h
      module.h: relocate MODULE_PARM_DESC into moduleparam.h
      range: fix bogus misuse of module.h to get printk()
      mm: delete various needless include <linux/module.h>
      mm: Add export.h for EXPORT_SYMBOL to active symbol exporters
      mm: Map most files to use export.h instead of module.h
      mm: fix implicit stat.h usage in dmapool.c
      kernel: Map most files to use export.h instead of module.h
      kernel: Add <linux/module.h> to files using it implicitly
      kernel: fix several implicit usasges of kmod.h
      kernel: fix two implicit header assumptions in irq_work.c
      kernel: ksysfs.c is implicitly using stat.h
      kernel: params.c needs module.h not moduleparam.h
      kernel: fix up module header handling in rcutiny files
      kernel: Fix files explicitly needing EXPORT_SYMBOL infrastructure
      net: Fix files explicitly needing to include module.h
      net: add moduleparam.h for users of module_param/MODULE_PARM_DESC
      net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules
      net: fix implicit kmod.h usage in bridge/br_stp_if.c
      fs: add export.h to files using EXPORT_SYMBOL/THIS_MODULE macros
      fs: add module.h to files that were implicitly using it
      acpi: add module.h to files implicitly using/relying on it.
      acpi: delete module.h include from files explicitly not needing it
      acpi: downgrade files from module.h to export.h where possible.
      acpi: add export.h to files using THIS_MODULE/EXPORT_SYMBOL
      x86: fix implicit include of <linux/topology.h> in vsyscall_64
      x86: Fix files explicitly requiring export.h for EXPORT_SYMBOL/THIS_MODULE
      x86: fix up files really needing to include module.h
      x86: efi_32.c is implicitly getting asm/desc.h via module.h
      powerpc: io-workarounds.c was implicitly getting init_mm
      powerpc: add export.h to files making use of EXPORT_SYMBOL
      powerpc: include export.h for files using EXPORT_SYMBOL/THIS_MODULE
      powerpc: Fix up modules that should be including module.h
      powerpc: Fix up implicit stat.h users
      powerpc: Fix up implicit sched.h users
      powerpc: cell/beat_wrapper.h is implicitly using memcpy functions
      powerpc: fix implicit notifier use in converting to export.h
      powerpc: fix implicit use of cache.h in kernel/firmware.c
      powerpc: fix implicit use of mutex.h by include/asm/spu.h
      powerpc: fix two implicit header uses in pseries/plpar_wrappers.h
      powerpc: convert hvconsole.c to export.h ; fix implicit use of errno.h
      powerpc: various straight conversions from module.h --> export.h
      powerpc: remove non-required uses of include <linux/module.h>
      arm: add elf.h to arch/arm/kernel/ptrace.c
      arm: fix implicit memset/string.h usage in various arch/arm files
      arm: fix implicit use of page.h in several arch/arm files
      arm: fix implicit use of moduleparam in mach-mx31*.c
      arm: fix implicit use of sched.h in bcmring/dma.c
      arm: add slab.h to plat-samsung files for GFP_KERNEL
      arm: remove several unnecessary module.h include instances
      arm: convert core files from module.h to export.h
      arm: Add export.h to ARM specific files as required.
      arm: fix implicit module.h users by adding it to arch/arm as required.
      arm: Add moduleparam.h to arch/arm files as required
      sparc: fix implicit use of spitfire.h in pcr.c and of_device_64.c
      sparc: fix implicit use of uaccess.h header in mdesc.c
      sparc: add export.h to arch/sparc files as required
      sparc: move symbol exporters to use export.h not module.h
      sparc: remove several unnecessary module.h include instances
      sparc: Add module.h to files previously implicitly using it.
      mips: fix implicit use of asm/elf.h in kernel/cpu-probe.c
      mips: fix implicit smp.h usage in various files.
      mips: migrate core kernel file from module.h --> export.h
      mips: remove needless include of module.h from core kernel files.
      mips: add export.h to files using EXPORT_SYMBOL/THIS_MODULE
      ia64: Add export.h to arch/ia64 specific files as required
      m68k: Add export.h to the m68k specific files as required
      avr32: add export.h to arch/avr32 for EXPORT_SYMBOL/THIS_MODULE
      parisc: Add export.h to files needing EXPORT_SYMBOL/THIS_MODULE
      parisc: add module.h to files really requiring it
      blackfin: Add export.h to files using EXPORT_SYMBOL/THIS_MODULE
      blackfin: add module.h to files implicitly expecting to use it.
      alpha: fix implicit stat.h usage in pci-sysfs.c
      alpha: Add export.h for THIS_MODULE/EXPORT_SYMBOL
      sh: fix implicit use of stat.h in arch/sh specific files
      sh: Add module.h to arch/sh specific files as required.
      sh: Add export.h to arch/sh specific files as required.
      microblaze: Add export.h to arch/microblaze files as required
      drivers/net: Add module.h to drivers who were implicitly using it
      drivers/net: Add export.h to files using EXPORT_SYMBOL/THIS_MODULE
      drivers/net: change moduleparam.h to module.h as required.
      drivers/net: Add moduleparam.h to drivers as required.
      drivers/net: wireless/ath/ath5k/debug.c does not need module.h
      drivers/net: fix mislocated headers in cxgb4/l2t.c
      crypto: add module.h to those files that are explicitly using it
      mtd: Add export.h for EXPORT_SYMBOL/THIS_MODULE where needed
      mtd: Add module.h to drivers users that were implicitly using it.
      block: add export.h to files using EXPORT_SYMBOL/THIS_MODULE macros
      block: Fix files that are modules and hence need module.h
      block: Change module.h -> export.h in bsg-lib.c
      of: of_pci.c needs export.h since it uses EXPORT_SYMBOLS
      drivers/base: transport_class explicitly requires EXPORT_SYMBOL
      drivers: power_supply_sysfs.c needs stat.h
      drivers/input: Add module.h to modular drivers implicitly using it
      drivers/input: add export.h to symbol exporting files.
      hid: Add module.h to fix up implicit users of it
      hid: Fix up files needing export.h for EXPORT_SYMBOL
      md: Add module.h to all files using it implicitly
      md: Add in export.h for files using EXPORT_SYMBOL
      sound: fix drivers needing module.h not moduleparam.h
      sound: add moduleparam.h to users of module_param/MODULE_PARM_DESC
      sound: Add module.h to the previously silent sound users
      sound: Add export.h for THIS_MODULE/EXPORT_SYMBOL where needed
      pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE
      pci: add module.h to files implicitly relying on its presence.
      scsi: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required
      scsi: Fix up files implicitly depending on module.h inclusion
      usb: Add module.h to drivers/usb consumers who really use it.
      usb: Add export.h for EXPORT_SYMBOL/THIS_MODULE where needed
      usb: fix implicit usage of gfp.h in host/xhci-hub.c
      bluetooth: add module.h to drivers/bluetooth files as required.
      tty: Add module.h to drivers/tty users who just expect it there.
      tty: Add export.h for EXPORT_SYMBOL/THIS_MODULE to exporters
      rtc: Add module.h to implicit users in drivers/rtc
      i2c: add export.h to i2c-boardinfo.c for EXPORT_SYMBOL
      i2c: Add module.h to modular files prev. implicitly getting it
      cpuidle: Add module.h to drivers/cpuidle files as required.
      cpuidle: ladder.c needs module.h and not just moduleparam.h
      cpufreq: cpufreq_stats.c is a module, and should include module.h
      selinux: Add export.h to files using EXPORT_SYMBOL/THIS_MODULE
      video: Add export.h for THIS_MODULE/EXPORT_SYMBOL to drivers/video
      video: Add module.h to drivers/video files who really use it.
      infiniband: Fix up users implicitly relying on getting stat.h
      infiniband: Fix up module files that need to include module.h
      infiniband: add in export.h for files using EXPORT_SYMBOL/THIS_MODULE
      infiniband: add moduleparam.h to drivers/infiniband as required
      ide/ata: Add export.h for EXPORT_SYMBOL/THIS_MODULE where needed
      ide/ata: Add module.h to the implicit modular users
      drivers/base: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required.
      drivers/base: dma-coherent.c is a module and needs module.h
      drivers/base: base.h implicitly depends on <linux/notifier.h>
      drivers/base: change module.h -> export.h in power/common.c
      drivers/char: Add module.h to those who were using it implicitly
      drivers/char: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required
      drivers/char: Fix implicit use of err.h in ramoops.c
      drivers/clocksource: Add module.h to those who were using it implicitly
      drivers/dca: Add module.h to dca-core.c
      drivers/dca: Add export.h for THIS_MODULE to dca-sysfs.c
      drivers/dma: Add module.h to files implicitly using it.
      drivers/dma: Add export.h to ste_dma40.c
      drivers/edac: Add module.h to mce_amd_inj.c
      drivers/firewire: Add export.h for EXPORT_SYMBOL to core-iso.c
      drivers/firmware: Add module.h to google/gsmi.c
      drivers/gpio: Fix drivers who are implicit users of module.h
      drivers/hwmon: add module.h to ultra45_env.c
      drivers/isdn: Add module.h to ISDN files implicitly using it.
      drivers/isdn: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required.
      drivers/leds: Add module.h to files using it implicitly
      drivers/leds: Add export.h for THIS_MODULE to leds-cobalt-raq.c
      drivers/media: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required
      drivers/media: Add module.h to all files using it implicitly
      drivers/memstick: Add module.h to the prev. implicit modular users
      drivers/message: Add module.h to i2o/pci.c
      drivers/misc: Add module.h to files who are really modular.
      drivers/misc: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required.
      drivers/nfc: add module.h to nfcwilink.c
      drivers/of: Add module.h to of_spi.c
      drivers/of: include export.h for EXPORT_SYMBOL_GPL/THIS_MODULE as required
      drivers/power: Add module.h to the actual modules in drivers/power
      drivers/rapidio: idt_gen2.c is implicitly relying on getting stat.h
      drivers/sh: Add export.h for EXPORT_SYMBOL to intc/virq.c
      drivers/target: Add export.h to files as required.
      drivers/target: Add module.h to drivers/target files as required.
      drivers/w1: Add export.h for EXPORT_SYMBOL/THIS_MODULE
      drivers/w1: Add moduleparam.h to drivers/w1/w1_int.c
      drivers/zorro: Add export.h to proc.c
      bcma: add module.h to the modular portions of this driver
      bcma: fix implicit use of export.h contents
      gpu: Add export.h as required to drivers/gpu files.
      gpu: add module.h to drivers/gpu files as required.
      gpu: add moduleparam.h to drivers/gpu/drm/drm_crtc_helper.c
      mfd: Add module.h to the implicit drivers/mfd users
      mfd: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required
      mmc: Add module.h to drivers/mmc users assuming implicit presence.
      mmc: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required
      mmc: Fix implicit use of stat.h header in associated files
      ssb: Add module.h to the real modules in drivers/ssb
      ssb: Add export.h to files using EXPORT_SYMBOL/THIS_MODULE
      staging: Add export.h for THIS_MODULE/EXPORT_SYMBOL to drivers/staging users.
      staging: Add moduleparam.h to drivers/staging files as required
      staging: Add module.h to more drivers implicitly using it.
      uio: Add module.h to implicit drivers/uio users
      xen: Add module.h to modular drivers/xen users.
      xen: Add export.h for THIS_MODULE/EXPORT_SYMBOL to various xen users.
      kvm: fix implicit use of stat.h header file
      kvm: iommu.c file requires the full module.h present.
      lguest: add export.h to lguest files for THIS_MODULE/EXPORT_SYMBOL
      virtio: Add module.h to drivers/virtio users.
      intel-iommu: now needs export.h for EXPORT_SYMBOL_GPL
      regulator: Add export.h for THIS_MODULE to dummy.c
      regulator: Add module.h to drivers/regulator users as required
      regulator: Fix implicit use of notifier.h by driver.h
      spi: Add module.h to implicit users in drivers/spi
      spi: Add export.h for THIS_MODULE/EXPORT_SYMBOL to spi.c
      drivers/uwb: fix implicit use of stat.h
      uwb: Add module.h to the real uwb modular users.
      uwb: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required
      pcmcia: add module.h to db1xxx_ss.c since it is modular.
      pcmcia: Add export.h to drivers/pcmcia as required.
      pnp: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required
      watchdog: Add module.h to drivers/watchdog/stmp3xxx_wdt.c
      lib: dma-debug needs export.h for EXPORT_SYMBOL
      vermagic: delete unused include of <linux/module.h>
      sysdev.h: dont include <linux/module.h> for no reason
      net: inet_timewait_sock doesnt need <linux/module.h>
      net: sch_generic remove redundant use of <linux/module.h>
      device_cgroup.h: delete needless include <linux/module.h>
      miscdevice.h: delete unnecessary inclusion of module.h
      acpi: remove module.h include from platform/aclinux.h
      of_platform.h: delete needless include <linux/module.h>
      of: fix implicit use of errno.h in include/linux/of.h
      stop_machine.h: fix implicit use of smp.h for smp_processor_id
      miscdevice.h: fix up implicit use of lists and types
      linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h
      pm_runtime.h: explicitly requires notifier.h
      uwb.h: fix implicit use of asm/page.h for PAGE_SIZE
      crypto.h: remove unused crypto_tfm_alg_modname() inline
      include: convert various register fcns to macros to avoid include chaining
      include: replace linux/module.h with "struct module" wherever possible
      nf_conntrack.h: fix up fallout from implicit moduleparam.h presence
      ip_vs.h: fix implicit use of module_get/module_put from module.h
      bluetooth: macroize two small inlines to avoid module.h
      irq: don't put module.h into irq.h for tracking irqgen modules.
      Revert "tracing: Include module.h in define_trace.h"

Randy Dunlap (1):
      drivers/sfi: sfi_acpi.c needs sysfs.h

Stephen Rothwell (2):
      drivers/media: ir-raw.c needs kmod.h for request_module
      pinctrl: EXPORT_SYMBOL needs export.h

 include/acpi/platform/aclinux.h                    |    1 -
 include/drm/drmP.h                                 |    3 +-
 include/linux/bcma/bcma.h                          |    7 +-
 include/linux/blkdev.h                             |    2 +-
 include/linux/cpuidle.h                            |    3 +-
 include/linux/crypto.h                             |    6 --
 include/linux/device.h                             |   15 ++-
 include/linux/device_cgroup.h                      |    1 -
 include/linux/dmaengine.h                          |    2 +
 include/linux/export.h                             |   89 ++++++++++++++++++++
 include/linux/firmware.h                           |    2 +-
 include/linux/ftrace.h                             |    2 +-
 include/linux/gameport.h                           |   17 ++--
 include/linux/hid.h                                |    9 +-
 include/linux/i2c.h                                |   10 +-
 include/linux/ipmi.h                               |    3 +-
 include/linux/ipmi_smi.h                           |    1 -
 include/linux/irq.h                                |   32 +++-----
 include/linux/irqdesc.h                            |    1 +
 include/linux/mdio-bitbang.h                       |    3 +-
 include/linux/miscdevice.h                         |    3 +-
 include/linux/module.h                             |   73 +----------------
 include/linux/moduleparam.h                        |    5 +
 include/linux/mtd/mtd.h                            |    3 +-
 include/linux/of.h                                 |    1 +
 include/linux/of_platform.h                        |    1 -
 include/linux/pci_hotplug.h                        |   10 +--
 include/linux/pm_runtime.h                         |    1 +
 include/linux/regmap.h                             |    2 +-
 include/linux/regulator/driver.h                   |    1 +
 include/linux/serio.h                              |   20 +++--
 include/linux/ssb/ssb.h                            |    7 +-
 include/linux/stop_machine.h                       |    1 +
 include/linux/sunrpc/svc_xprt.h                    |    3 +-
 include/linux/sysdev.h                             |    1 -
 include/linux/textsearch.h                         |    3 +-
 include/linux/uio_driver.h                         |   12 ++--
 include/linux/usb.h                                |    9 +-
 include/linux/uwb.h                                |    1 +
 include/linux/uwb/umc.h                            |    7 +-
 include/linux/vermagic.h                           |    1 -
 include/linux/vlynq.h                              |    3 +-
 include/media/saa7146.h                            |    3 +-
 include/media/v4l2-int-device.h                    |    3 +-
 include/net/bluetooth/hci_core.h                   |   24 +++---
 include/net/inet_timewait_sock.h                   |    1 -
 include/net/ip_vs.h                                |   15 ++--
 include/net/lib80211.h                             |    3 +-
 include/net/netfilter/nf_conntrack.h               |    2 +
 include/net/sch_generic.h                          |    1 -
 include/net/sock.h                                 |    2 +-
 include/sound/core.h                               |    2 +-
 include/trace/define_trace.h                       |   10 --
 include/trace/events/module.h                      |    2 +-
 include/xen/xenbus.h                               |    1 +

 [ ...snip lots of one line change per file diffstat info ... ]

 2059 files changed, 2251 insertions(+), 606 deletions(-)
 create mode 100644 include/linux/export.h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ