All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Gortmaker <paul.gortmaker@windriver.com>
To: <torvalds@linux-foundation.org>
Cc: <rusty@rustcorp.com.au>, <mingo@elte.hu>,
	<akpm@linux-foundation.org>, <sfr@canb.auug.org.au>,
	<linux-kernel@vger.kernel.org>
Subject: [GIT PULL] introduce export.h; reduce module.h usage
Date: Mon, 31 Oct 2011 20:45:42 -0400	[thread overview]
Message-ID: <20111101004542.GA18671@windriver.com> (raw)

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

             reply	other threads:[~2011-11-01  0:46 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-01  0:45 Paul Gortmaker [this message]
2011-11-01 23:59 ` [GIT PULL] introduce export.h; reduce module.h usage Linus Torvalds
2011-11-02  2:44   ` Stephen Rothwell
2011-11-02 15:34     ` Paul Gortmaker
2011-11-02 15:18   ` Paul Gortmaker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20111101004542.GA18671@windriver.com \
    --to=paul.gortmaker@windriver.com \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=rusty@rustcorp.com.au \
    --cc=sfr@canb.auug.org.au \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.