aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-12-11 16:13:55 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2012-12-11 16:13:55 -0500
commitcff2f741b8ee8a70b208830e330de053efd4fc45 (patch)
tree83367ed74d889e2c8179f1f8b5d6f6f73b857982 /scripts
parentb0885d01f9ab1274109c02942c881d598f939623 (diff)
parent92e9e6d1f9844b73a26215025a922e7d7aeae361 (diff)
Merge tag 'driver-core-3.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
Pull driver core updates from Greg Kroah-Hartman: "Here's the large driver core updates for 3.8-rc1. The biggest thing here is the various __dev* marking removals. This is going to be a pain for the merge with different subsystem trees, I know, but all of the patches included here have been ACKed by their various subsystem maintainers, as they wanted them to go through here. If this is too much of a pain, I can pull all of them out of this tree and just send you one with the other fixes/updates and then, after 3.8-rc1 is out, do the rest of the removals to ensure we catch them all, it's up to you. The merges should all be trivial, and Stephen has been doing them all in linux-next for a few weeks now quite easily. Other than the __dev* marking removals, there's nothing major here, some firmware loading updates and other minor things in the driver core. All of these have (much to Stephen's annoyance), been in linux-next for a while. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>" Fixed up trivial conflicts in drivers/gpio/gpio-{em,stmpe}.c due to gpio update. * tag 'driver-core-3.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (93 commits) modpost.c: Stop checking __dev* section mismatches init.h: Remove __dev* sections from the kernel acpi: remove use of __devinit PCI: Remove __dev* markings PCI: Always build setup-bus when PCI is enabled PCI: Move pci_uevent into pci-driver.c PCI: Remove CONFIG_HOTPLUG ifdefs unicore32/PCI: Remove CONFIG_HOTPLUG ifdefs sh/PCI: Remove CONFIG_HOTPLUG ifdefs powerpc/PCI: Remove CONFIG_HOTPLUG ifdefs mips/PCI: Remove CONFIG_HOTPLUG ifdefs microblaze/PCI: Remove CONFIG_HOTPLUG ifdefs dma: remove use of __devinit dma: remove use of __devexit_p firewire: remove use of __devinitdata firewire: remove use of __devinit leds: remove use of __devexit leds: remove use of __devinit leds: remove use of __devexit_p mmc: remove use of __devexit ...
Diffstat (limited to 'scripts')
-rw-r--r--scripts/mod/modpost.c24
1 files changed, 10 insertions, 14 deletions
diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
index 0d93856a03f..ff36c508a10 100644
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
@@ -858,25 +858,23 @@ static void check_section(const char *modname, struct elf_info *elf,
858 858
859#define ALL_INIT_DATA_SECTIONS \ 859#define ALL_INIT_DATA_SECTIONS \
860 ".init.setup$", ".init.rodata$", \ 860 ".init.setup$", ".init.rodata$", \
861 ".devinit.rodata$", ".cpuinit.rodata$", ".meminit.rodata$", \ 861 ".cpuinit.rodata$", ".meminit.rodata$", \
862 ".init.data$", ".devinit.data$", ".cpuinit.data$", ".meminit.data$" 862 ".init.data$", ".cpuinit.data$", ".meminit.data$"
863#define ALL_EXIT_DATA_SECTIONS \ 863#define ALL_EXIT_DATA_SECTIONS \
864 ".exit.data$", ".devexit.data$", ".cpuexit.data$", ".memexit.data$" 864 ".exit.data$", ".cpuexit.data$", ".memexit.data$"
865 865
866#define ALL_INIT_TEXT_SECTIONS \ 866#define ALL_INIT_TEXT_SECTIONS \
867 ".init.text$", ".devinit.text$", ".cpuinit.text$", ".meminit.text$" 867 ".init.text$", ".cpuinit.text$", ".meminit.text$"
868#define ALL_EXIT_TEXT_SECTIONS \ 868#define ALL_EXIT_TEXT_SECTIONS \
869 ".exit.text$", ".devexit.text$", ".cpuexit.text$", ".memexit.text$" 869 ".exit.text$", ".cpuexit.text$", ".memexit.text$"
870 870
871#define ALL_PCI_INIT_SECTIONS \ 871#define ALL_PCI_INIT_SECTIONS \
872 ".pci_fixup_early$", ".pci_fixup_header$", ".pci_fixup_final$", \ 872 ".pci_fixup_early$", ".pci_fixup_header$", ".pci_fixup_final$", \
873 ".pci_fixup_enable$", ".pci_fixup_resume$", \ 873 ".pci_fixup_enable$", ".pci_fixup_resume$", \
874 ".pci_fixup_resume_early$", ".pci_fixup_suspend$" 874 ".pci_fixup_resume_early$", ".pci_fixup_suspend$"
875 875
876#define ALL_XXXINIT_SECTIONS DEV_INIT_SECTIONS, CPU_INIT_SECTIONS, \ 876#define ALL_XXXINIT_SECTIONS CPU_INIT_SECTIONS, MEM_INIT_SECTIONS
877 MEM_INIT_SECTIONS 877#define ALL_XXXEXIT_SECTIONS CPU_EXIT_SECTIONS, MEM_EXIT_SECTIONS
878#define ALL_XXXEXIT_SECTIONS DEV_EXIT_SECTIONS, CPU_EXIT_SECTIONS, \
879 MEM_EXIT_SECTIONS
880 878
881#define ALL_INIT_SECTIONS INIT_SECTIONS, ALL_XXXINIT_SECTIONS 879#define ALL_INIT_SECTIONS INIT_SECTIONS, ALL_XXXINIT_SECTIONS
882#define ALL_EXIT_SECTIONS EXIT_SECTIONS, ALL_XXXEXIT_SECTIONS 880#define ALL_EXIT_SECTIONS EXIT_SECTIONS, ALL_XXXEXIT_SECTIONS
@@ -885,12 +883,10 @@ static void check_section(const char *modname, struct elf_info *elf,
885#define TEXT_SECTIONS ".text$" 883#define TEXT_SECTIONS ".text$"
886 884
887#define INIT_SECTIONS ".init.*" 885#define INIT_SECTIONS ".init.*"
888#define DEV_INIT_SECTIONS ".devinit.*"
889#define CPU_INIT_SECTIONS ".cpuinit.*" 886#define CPU_INIT_SECTIONS ".cpuinit.*"
890#define MEM_INIT_SECTIONS ".meminit.*" 887#define MEM_INIT_SECTIONS ".meminit.*"
891 888
892#define EXIT_SECTIONS ".exit.*" 889#define EXIT_SECTIONS ".exit.*"
893#define DEV_EXIT_SECTIONS ".devexit.*"
894#define CPU_EXIT_SECTIONS ".cpuexit.*" 890#define CPU_EXIT_SECTIONS ".cpuexit.*"
895#define MEM_EXIT_SECTIONS ".memexit.*" 891#define MEM_EXIT_SECTIONS ".memexit.*"
896 892
@@ -979,7 +975,7 @@ const struct sectioncheck sectioncheck[] = {
979 .mismatch = DATA_TO_ANY_EXIT, 975 .mismatch = DATA_TO_ANY_EXIT,
980 .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL }, 976 .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
981}, 977},
982/* Do not reference init code/data from devinit/cpuinit/meminit code/data */ 978/* Do not reference init code/data from cpuinit/meminit code/data */
983{ 979{
984 .fromsec = { ALL_XXXINIT_SECTIONS, NULL }, 980 .fromsec = { ALL_XXXINIT_SECTIONS, NULL },
985 .tosec = { INIT_SECTIONS, NULL }, 981 .tosec = { INIT_SECTIONS, NULL },
@@ -1000,7 +996,7 @@ const struct sectioncheck sectioncheck[] = {
1000 .mismatch = XXXINIT_TO_SOME_INIT, 996 .mismatch = XXXINIT_TO_SOME_INIT,
1001 .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL }, 997 .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
1002}, 998},
1003/* Do not reference exit code/data from devexit/cpuexit/memexit code/data */ 999/* Do not reference exit code/data from cpuexit/memexit code/data */
1004{ 1000{
1005 .fromsec = { ALL_XXXEXIT_SECTIONS, NULL }, 1001 .fromsec = { ALL_XXXEXIT_SECTIONS, NULL },
1006 .tosec = { EXIT_SECTIONS, NULL }, 1002 .tosec = { EXIT_SECTIONS, NULL },
@@ -1089,7 +1085,7 @@ static const struct sectioncheck *section_mismatch(
1089 * Pattern 2: 1085 * Pattern 2:
1090 * Many drivers utilise a *driver container with references to 1086 * Many drivers utilise a *driver container with references to
1091 * add, remove, probe functions etc. 1087 * add, remove, probe functions etc.
1092 * These functions may often be marked __devinit and we do not want to 1088 * These functions may often be marked __cpuinit and we do not want to
1093 * warn here. 1089 * warn here.
1094 * the pattern is identified by: 1090 * the pattern is identified by:
1095 * tosec = init or exit section 1091 * tosec = init or exit section