1. 31 Oct, 2011 40 commits
    • Paul Gortmaker's avatar
      arm: fix implicit use of sched.h in bcmring/dma.c · 4cffaf73
      Paul Gortmaker authored
      To fix this:
      
      arch/arm/mach-bcmring/dma.c: In function 'dma_request_channel_dbg':
      arch/arm/mach-bcmring/dma.c:1022: error: 'TASK_INTERRUPTIBLE' undeclared (first use in this function)
      arch/arm/mach-bcmring/dma.c:1022: error: (Each undeclared identifier is reported only once
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      4cffaf73
    • Paul Gortmaker's avatar
      arm: fix implicit use of moduleparam in mach-mx31*.c · 9e907416
      Paul Gortmaker authored
      To get the definition of core_param() they need this header.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      9e907416
    • Paul Gortmaker's avatar
      arm: fix implicit use of page.h in several arch/arm files · 9e54d33f
      Paul Gortmaker authored
      Add the include to fix things like this:
      
      arch/arm/mach-sa1100/jornada720.c:278: error: 'PAGE_SHIFT' undeclared here (not in a function)
      arch/arm/mach-bcmring/mm.c:32: error: 'PAGE_SHIFT' undeclared here (not in a function)
      arch/arm/mach-sa1100/collie.c:361: error: 'PAGE_SHIFT' undeclared here (not in a function)
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      9e54d33f
    • Paul Gortmaker's avatar
      arm: fix implicit memset/string.h usage in various arch/arm files · d44b28c4
      Paul Gortmaker authored
      To fix things like this:
      
      arch/arm/mach-omap2/usb-tusb6010.c:58: error: implicit declaration of function 'memset'
      arch/arm/kernel/leds.c:40: error: implicit declaration of function 'strcspn'
      arch/arm/kernel/leds.c:40: warning: incompatible implicit declaration of built-in function 'strcspn'
      arch/arm/kernel/leds.c:45: error: implicit declaration of function 'strncmp'
      arch/arm/kernel/leds.c:55: error: implicit declaration of function 'strlen'
      arch/arm/kernel/leds.c:55: warning: incompatible implicit declaration of built-in function 'strlen'
      arch/arm/mach-omap2/clockdomain.c:52: error: implicit declaration of function 'strcmp'
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      d44b28c4
    • Paul Gortmaker's avatar
      arm: add elf.h to arch/arm/kernel/ptrace.c · ce8b9d25
      Paul Gortmaker authored
      It was implicitly getting it via an implicit presence of module.h
      but when we clean that up, we'll get a bunch of lines like this:
      
      arch/arm/kernel/ptrace.c:764: error: 'NT_PRSTATUS' undeclared here (not in a function)
      arch/arm/kernel/ptrace.c:765: error: 'ELF_NGREG' undeclared here (not in a function)
      arch/arm/kernel/ptrace.c:776: error: 'NT_PRFPREG' undeclared here (not in a function)
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      ce8b9d25
    • Paul Gortmaker's avatar
      powerpc: remove non-required uses of include <linux/module.h> · ead53f22
      Paul Gortmaker authored
      None of the files touched here are modules, and they are not
      exporting any symbols either -- so there is no need to be including
      the module.h.  Builds of all the files remains successful.
      
      Even kernel/module.c does not need to include it, since it includes
      linux/moduleloader.h instead.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      ead53f22
    • Paul Gortmaker's avatar
      powerpc: various straight conversions from module.h --> export.h · 4b16f8e2
      Paul Gortmaker authored
      All these files were including module.h just for the basic
      EXPORT_SYMBOL infrastructure.  We can shift them off to the
      export.h header which is a way smaller footprint and thus
      realize some compile time gains.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      4b16f8e2
    • Paul Gortmaker's avatar
      powerpc: convert hvconsole.c to export.h ; fix implicit use of errno.h · e9848d62
      Paul Gortmaker authored
      This file is only exporting symbols and so should use export.h
      and not module.h header.  But in doing the conversion, we will
      uncover that it was implicitly using errno.h via module.h:
      
        CC      arch/powerpc/platforms/pseries/hvconsole.o
      arch/powerpc/platforms/pseries/hvconsole.c: In function 'hvc_put_chars':
      arch/powerpc/platforms/pseries/hvconsole.c:77: error: 'EIO' undeclared (first use in this function)
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      e9848d62
    • Paul Gortmaker's avatar
      powerpc: fix two implicit header uses in pseries/plpar_wrappers.h · 614f15b4
      Paul Gortmaker authored
      Removing the implicit presence of module.h from almost everywhere
      will reveal this implicit usage of paca.h and string.h headers as
      follows:
      
      arch/powerpc/platforms/pseries/plpar_wrappers.h:22: error: implicit declaration of function 'get_lppaca'
      arch/powerpc/platforms/pseries/plpar_wrappers.h:208: error: implicit declaration of function 'memcpy'
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      614f15b4
    • Paul Gortmaker's avatar
      powerpc: fix implicit use of mutex.h by include/asm/spu.h · e415372a
      Paul Gortmaker authored
      We've been getting the header implicitly via module.h in the past
      but when we clean that up, we'll get this failure:
      
        CC      arch/powerpc/platforms/cell/beat_spu_priv1.o
      In file included from arch/powerpc/platforms/cell/beat_spu_priv1.c:22:
      arch/powerpc/include/asm/spu.h:190: error: field 'list_mutex' has incomplete type
      make[2]: *** [arch/powerpc/platforms/cell/beat_spu_priv1.o] Error 1
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      e415372a
    • Paul Gortmaker's avatar
      powerpc: fix implicit use of cache.h in kernel/firmware.c · cab2e052
      Paul Gortmaker authored
      This file only needs export.h to get EXPORT_SYMBOL, but in doing
      so, it uncovers an implicit use of linux/cache.h as follows:
      
       CC      arch/powerpc/kernel/firmware.o
      arch/powerpc/kernel/firmware.c:20: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__read_mostly'
      arch/powerpc/kernel/firmware.c:21: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__used'
      make[2]: *** [arch/powerpc/kernel/firmware.o] Error 1
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      cab2e052
    • Paul Gortmaker's avatar
      powerpc: fix implicit notifier use in converting to export.h · 2a7156b9
      Paul Gortmaker authored
      We can convert this file to using export.h since it only wants
      to export symbols, but when we do we'll see also that it was
      implicitly getting notifier.h from module.h via this failure:
      
        CC      arch/powerpc/platforms/cell/spu_notify.o
      arch/powerpc/platforms/cell/spu_notify.c:28: warning: type defaults to 'int' in declaration of 'BLOCKING_NOTIFIER_HEAD'
      arch/powerpc/platforms/cell/spu_notify.c:28: warning: parameter names (without types) in function declaration
      arch/powerpc/platforms/cell/spu_notify.c: In function 'spu_switch_notify':
      arch/powerpc/platforms/cell/spu_notify.c:32: error: implicit declaration of function 'blocking_notifier_call_chain'
      arch/powerpc/platforms/cell/spu_notify.c:32: error: 'spu_switch_notifier' undeclared (first use in this function)
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      2a7156b9
    • Paul Gortmaker's avatar
      powerpc: cell/beat_wrapper.h is implicitly using memcpy functions · 08f1e55c
      Paul Gortmaker authored
      This has been relying on the fact that the parent file would have
      module.h (and thus nearly everything) present.  But once we fix that,
      we'll get stuck with this failure:
      
      In file included from arch/powerpc/platforms/cell/beat_spu_priv1.c:26:
      arch/powerpc/platforms/cell/beat_wrapper.h: In function 'beat_eeprom_write':
      arch/powerpc/platforms/cell/beat_wrapper.h:160: error: implicit declaration of function 'memcpy'
      
      and many more instances of the same.  Fix it in advance.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      08f1e55c
    • Paul Gortmaker's avatar
      powerpc: Fix up implicit sched.h users · 62fe91bb
      Paul Gortmaker authored
      They are getting it through device.h --> module.h path, but we want
      to clean that up.  This is a sample of what will happen if we don't:
      
        pseries/iommu.c: In function 'tce_build_pSeriesLP':
        pseries/iommu.c:136: error: implicit declaration of function 'show_stack'
      
        pseries/eeh.c: In function 'eeh_token_to_phys':
        pseries/eeh.c:359: error: 'init_mm' undeclared (first use in this function)
      
        pseries/eeh_event.c: In function 'eeh_event_handler':
        pseries/eeh_event.c:63: error: implicit declaration of function 'daemonize'
        pseries/eeh_event.c:64: error: implicit declaration of function 'set_current_state'
        pseries/eeh_event.c:64: error: 'TASK_INTERRUPTIBLE' undeclared (first use in this function)
        pseries/eeh_event.c:64: error: (Each undeclared identifier is reported only once
        pseries/eeh_event.c:64: error: for each function it appears in.)
        pseries/eeh_event.c: In function 'eeh_thread_launcher':
        pseries/eeh_event.c:109: error: 'CLONE_KERNEL' undeclared (first use in this function)
      
        hotplug-cpu.c: In function 'pseries_mach_cpu_die':
        hotplug-cpu.c:115: error: implicit declaration of function 'idle_task_exit'
      
        kernel/swsusp_64.c: In function 'do_after_copyback':
        kernel/swsusp_64.c:17: error: implicit declaration of function 'touch_softlockup_watchdog'
      
        cell/spufs/context.c: In function 'alloc_spu_context':
        cell/spufs/context.c:60: error: implicit declaration of function 'get_task_mm'
        cell/spufs/context.c:60: warning: assignment makes pointer from integer without a cast
        cell/spufs/context.c: In function 'spu_forget':
        cell/spufs/context.c:127: error: implicit declaration of function 'mmput'
      
        pasemi/dma_lib.c: In function 'pasemi_dma_stop_chan':
        pasemi/dma_lib.c:332: error: implicit declaration of function 'cond_resched'
      
        sysdev/fsl_lbc.c: In function 'fsl_lbc_ctrl_irq':
        sysdev/fsl_lbc.c:247: error: 'TASK_NORMAL' undeclared (first use in this function)
      
      Add in sched.h so these get the definitions they are looking for.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      62fe91bb
    • Paul Gortmaker's avatar
      powerpc: Fix up implicit stat.h users · b56eade5
      Paul Gortmaker authored
      They get it via module.h (via device.h) but we want to clean that up.
      When we do, we'll get things like:
      
      ibmebus.c:314: error: 'S_IWUSR' undeclared here (not in a function)
      vio.c:972: error: 'S_IWUSR' undeclared here (not in a function)
      
      so add in the stat header it is using explicitly in advance.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      b56eade5
    • Paul Gortmaker's avatar
      powerpc: Fix up modules that should be including module.h · 7dfe293c
      Paul Gortmaker authored
      So that we can clean up the header files and not be relying
      on implicit includes from device.h ---> module.h
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      7dfe293c
    • Paul Gortmaker's avatar
      powerpc: include export.h for files using EXPORT_SYMBOL/THIS_MODULE · 93087948
      Paul Gortmaker authored
      Fix failures in powerpc associated with the previously allowed
      implicit module.h presence that now lead to things like this:
      
      arch/powerpc/mm/mmu_context_hash32.c:76:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL_GPL'
      arch/powerpc/mm/tlb_hash32.c:48:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL'
      arch/powerpc/kernel/pci_32.c:51:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL_GPL'
      arch/powerpc/kernel/iomap.c:36:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL'
      arch/powerpc/platforms/44x/canyonlands.c:126:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL'
      arch/powerpc/kvm/44x.c:168:59: error: 'THIS_MODULE' undeclared (first use in this function)
      
      [with several contibutions from Stephen Rothwell <sfr@canb.auug.org.au>]
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      93087948
    • Paul Gortmaker's avatar
      powerpc: add export.h to files making use of EXPORT_SYMBOL · 66b15db6
      Paul Gortmaker authored
      With module.h being implicitly everywhere via device.h, the absence
      of explicitly including something for EXPORT_SYMBOL went unnoticed.
      Since we are heading to fix things up and clean module.h from the
      device.h file, we need to explicitly include these files now.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      66b15db6
    • Paul Gortmaker's avatar
      powerpc: io-workarounds.c was implicitly getting init_mm · 333a1518
      Paul Gortmaker authored
      It was coming in via device.h --> module.h etc. but we want to
      clean that up.  So explicitly include the header where init_mm
      is being declared.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      333a1518
    • Paul Gortmaker's avatar
      x86: efi_32.c is implicitly getting asm/desc.h via module.h · 783ac47c
      Paul Gortmaker authored
      We want to clean up the chain of includes stumbling through
      module.h, and when we do that, we'll see:
      
        CC      arch/x86/platform/efi/efi_32.o
        efi/efi_32.c: In function ‘efi_call_phys_prelog’:
        efi/efi_32.c:80: error: implicit declaration of function ‘get_cpu_gdt_table’
        efi/efi_32.c:82: error: implicit declaration of function ‘load_gdt’
        make[4]: *** [arch/x86/platform/efi/efi_32.o] Error 1
      
      Include asm/desc.h so that there are no implicit include assumptions.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      783ac47c
    • Paul Gortmaker's avatar
      x86: fix up files really needing to include module.h · 7c52d551
      Paul Gortmaker authored
      These files aren't just exporting symbols -- they are also defining
      a MODULE_LICENSE etc. so give them the full module.h file.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      7c52d551
    • Paul Gortmaker's avatar
      x86: Fix files explicitly requiring export.h for EXPORT_SYMBOL/THIS_MODULE · 69c60c88
      Paul Gortmaker authored
      These files were implicitly getting EXPORT_SYMBOL via device.h
      which was including module.h, but that will be fixed up shortly.
      
      By fixing these now, we can avoid seeing things like:
      
      arch/x86/kernel/rtc.c:29: warning: type defaults to ‘int’ in declaration of ‘EXPORT_SYMBOL’
      arch/x86/kernel/pci-dma.c:20: warning: type defaults to ‘int’ in declaration of ‘EXPORT_SYMBOL’
      arch/x86/kernel/e820.c:69: warning: type defaults to ‘int’ in declaration of ‘EXPORT_SYMBOL_GPL’
      
      [ with input from Randy Dunlap <rdunlap@xenotime.net> and also
        from Stephen Rothwell <sfr@canb.auug.org.au> ]
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      69c60c88
    • Paul Gortmaker's avatar
      x86: fix implicit include of <linux/topology.h> in vsyscall_64 · 29574022
      Paul Gortmaker authored
      In removing the presence of <linux/module.h> from some of the
      more common <linux/something.h> files, this implict include
      of <linux/topology.h> was uncovered.
      
        CC      arch/x86/kernel/vsyscall_64.o
        arch/x86/kernel/vsyscall_64.c: In function ‘vsyscall_set_cpu’:
        arch/x86/kernel/vsyscall_64.c:259: error: implicit declaration of function ‘cpu_to_node’
      
      Explicitly call it out so the cleanup can take place.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      29574022
    • Paul Gortmaker's avatar
      acpi: add export.h to files using THIS_MODULE/EXPORT_SYMBOL · 214f2c90
      Paul Gortmaker authored
      These files were relying on module.h to come in via the path
      in an include/acpi header file, but we don't want to have
      instances of module.h being included from include/* files
      if it can be avoided.  Have the files include export.h instead.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      214f2c90
    • Paul Gortmaker's avatar
      acpi: downgrade files from module.h to export.h where possible. · 067d7561
      Paul Gortmaker authored
      If a file is only exporting symbols and not using the core
      modular infrastructure, it can get by with just including
      the smaller export.h header, which is a lot smaller than the
      module.h header.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      067d7561
    • Paul Gortmaker's avatar
      acpi: delete module.h include from files explicitly not needing it · c0d12cc6
      Paul Gortmaker authored
      Files which aren't actually using infrastructure from module.h
      shouldn't include it, as it is a big header with lots of child
      includes spawned off.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      c0d12cc6
    • Paul Gortmaker's avatar
      acpi: add module.h to files implicitly using/relying on it. · cc4b859c
      Paul Gortmaker authored
      These files are using standard module API things like MODULE_AUTHOR
      etc. and so should not be relying on an implicit presence of the
      module.h header.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      cc4b859c
    • Paul Gortmaker's avatar
      fs: add module.h to files that were implicitly using it · 143cb494
      Paul Gortmaker authored
      Some files were using the complete module.h infrastructure without
      actually including the header at all.  Fix them up in advance so
      once the implicit presence is removed, we won't get failures like this:
      
        CC [M]  fs/nfsd/nfssvc.o
      fs/nfsd/nfssvc.c: In function 'nfsd_create_serv':
      fs/nfsd/nfssvc.c:335: error: 'THIS_MODULE' undeclared (first use in this function)
      fs/nfsd/nfssvc.c:335: error: (Each undeclared identifier is reported only once
      fs/nfsd/nfssvc.c:335: error: for each function it appears in.)
      fs/nfsd/nfssvc.c: In function 'nfsd':
      fs/nfsd/nfssvc.c:555: error: implicit declaration of function 'module_put_and_exit'
      make[3]: *** [fs/nfsd/nfssvc.o] Error 1
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      143cb494
    • Paul Gortmaker's avatar
      fs: add export.h to files using EXPORT_SYMBOL/THIS_MODULE macros · afeacc8c
      Paul Gortmaker authored
      These files were getting <linux/module.h> via an implicit include
      path, but we want to crush those out of existence since they cost
      time during compiles of processing thousands of lines of headers
      for no reason.  Give them the lightweight header that just contains
      the EXPORT_SYMBOL infrastructure.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      afeacc8c
    • Paul Gortmaker's avatar
      net: fix implicit kmod.h usage in bridge/br_stp_if.c · 79bb1ee4
      Paul Gortmaker authored
      To fix this, once the implicit presence of module.h is removed:
      
      net/bridge/br_stp_if.c: In function ‘br_stp_start’:
      net/bridge/br_stp_if.c:131: error: implicit declaration of function ‘call_usermodehelper’
      net/bridge/br_stp_if.c:131: error: ‘UMH_WAIT_PROC’ undeclared (first use in this function)
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      79bb1ee4
    • Paul Gortmaker's avatar
      net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules · bc3b2d7f
      Paul Gortmaker authored
      These files are non modular, but need to export symbols using
      the macros now living in export.h -- call out the include so
      that things won't break when we remove the implicit presence
      of module.h from everywhere.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      bc3b2d7f
    • Paul Gortmaker's avatar
      net: add moduleparam.h for users of module_param/MODULE_PARM_DESC · d9b93842
      Paul Gortmaker authored
      These files were getting access to these two via the implicit
      presence of module.h everywhere.  They aren't modules, so they
      don't need the full module.h inclusion though.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      d9b93842
    • Paul Gortmaker's avatar
      net: Fix files explicitly needing to include module.h · 3a9a231d
      Paul Gortmaker authored
      With calls to modular infrastructure, these files really
      needs the full module.h header.  Call it out so some of the
      cleanups of implicit and unrequired includes elsewhere can be
      cleaned up.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      3a9a231d
    • Paul Gortmaker's avatar
      kernel: Fix files explicitly needing EXPORT_SYMBOL infrastructure · 6e5fdeed
      Paul Gortmaker authored
      These files were getting <linux/module.h> via an implicit non-obvious
      path, but we want to crush those out of existence since they cost
      time during compiles of processing thousands of lines of headers
      for no reason.  Give them the lightweight header that just contains
      the EXPORT_SYMBOL infrastructure.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      6e5fdeed
    • Paul Gortmaker's avatar
      kernel: fix up module header handling in rcutiny files · bdfa97bf
      Paul Gortmaker authored
      The file rcutiny.c does not need moduleparam.h header, as
      there are no modparams in this file.
      
      However rcutiny_plugin.h does define a module_init() and
      a module_exit() and it uses the various MODULE_ macros, so
      it really does need module.h included.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      bdfa97bf
    • Paul Gortmaker's avatar
      kernel: params.c needs module.h not moduleparam.h · 72a59aaa
      Paul Gortmaker authored
      Through various other implicit include paths, some files were
      getting the full module.h file, and hence living the illusion
      that they really only needed moduleparam.h -- but the reality
      is that once you remove the module.h presence, these show up:
      
      kernel/params.c:583: warning: ‘struct module_kobject’ declared inside parameter list
      
      Such files really require module.h so simply make it so.  As the
      file module.h grabs moduleparam.h on the fly, all will be well.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      72a59aaa
    • Paul Gortmaker's avatar
      kernel: ksysfs.c is implicitly using stat.h · 1596425f
      Paul Gortmaker authored
      With the module.h usage cleanup, we'll get this:
      
      kernel/ksysfs.c:161: error: ‘S_IRUGO’ undeclared here (not in a function)
      make[2]: *** [kernel/ksysfs.o] Error 1
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      1596425f
    • Paul Gortmaker's avatar
      kernel: fix two implicit header assumptions in irq_work.c · 967d1f90
      Paul Gortmaker authored
      Up until now, this file was getting percpu.h because nearly every
      file was implicitly getting module.h (and all its sub-includes).
      But we want to clean that up, so call out percpu.h explicitly.
      Otherwise we'll get things like this on an ARM build:
      
      kernel/irq_work.c:48: error: expected declaration specifiers or '...' before 'irq_work_list'
      kernel/irq_work.c:48: warning: type defaults to 'int' in declaration of 'DEFINE_PER_CPU'
      
      The same thing was happening for builds on ARM for asm/processor.h
      
      kernel/irq_work.c: In function 'irq_work_sync':
      kernel/irq_work.c:166: error: implicit declaration of function 'cpu_relax'
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      967d1f90
    • Paul Gortmaker's avatar
      kernel: fix several implicit usasges of kmod.h · 74da1ff7
      Paul Gortmaker authored
      These files were implicitly relying on <linux/kmod.h> coming in via
      module.h, as without it we get things like:
      
      kernel/power/suspend.c:100: error: implicit declaration of function ‘usermodehelper_disable’
      kernel/power/suspend.c:109: error: implicit declaration of function ‘usermodehelper_enable’
      kernel/power/user.c:254: error: implicit declaration of function ‘usermodehelper_disable’
      kernel/power/user.c:261: error: implicit declaration of function ‘usermodehelper_enable’
      
      kernel/sys.c:317: error: implicit declaration of function ‘usermodehelper_disable’
      kernel/sys.c:1816: error: implicit declaration of function ‘call_usermodehelper_setup’
      kernel/sys.c:1822: error: implicit declaration of function ‘call_usermodehelper_setfns’
      kernel/sys.c:1824: error: implicit declaration of function ‘call_usermodehelper_exec’
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      74da1ff7
    • Paul Gortmaker's avatar
      kernel: Add <linux/module.h> to files using it implicitly · 56d82e00
      Paul Gortmaker authored
      These files are doing things like module_put and try_module_get
      so they need to call out the module.h for explicit inclusion,
      rather than getting it via <linux/device.h> which we ideally want
      to remove the module.h inclusion from.
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      56d82e00