aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Abbott <tabbott@MIT.EDU>2009-04-27 14:02:27 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2009-04-27 22:51:58 -0400
commit27b1833279995e7c290a40cac4ef36ccea7e9283 (patch)
tree7efbe3f8c9dad692ea7a8bc04c6be2303b1296e6
parenta0871e8cb8c3f5ee2ecc560ae73a35cd420440f9 (diff)
Remove unused support code for refok sections.
The old refok sections .text.init.refok .data.init.refok .exit.text.refok have been deprecated since commit 312b1485fb509c9bc32eda28ad29537896658cb8. After the other patches in this patch series nothing is put in these sections, so clean things up by eliminating all the remaining references to them. Signed-off-by: Tim Abbott <tabbott@mit.edu> Acked-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--include/asm-generic/vmlinux.lds.h3
-rw-r--r--include/linux/init.h8
-rw-r--r--scripts/mod/modpost.c18
3 files changed, 0 insertions, 29 deletions
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
index eaa06ef6f7d9..89853bcd27a6 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -90,7 +90,6 @@
90/* .data section */ 90/* .data section */
91#define DATA_DATA \ 91#define DATA_DATA \
92 *(.data) \ 92 *(.data) \
93 *(.data.init.refok) \
94 *(.ref.data) \ 93 *(.ref.data) \
95 DEV_KEEP(init.data) \ 94 DEV_KEEP(init.data) \
96 DEV_KEEP(exit.data) \ 95 DEV_KEEP(exit.data) \
@@ -289,8 +288,6 @@
289 *(.text.hot) \ 288 *(.text.hot) \
290 *(.text) \ 289 *(.text) \
291 *(.ref.text) \ 290 *(.ref.text) \
292 *(.text.init.refok) \
293 *(.exit.text.refok) \
294 DEV_KEEP(init.text) \ 291 DEV_KEEP(init.text) \
295 DEV_KEEP(exit.text) \ 292 DEV_KEEP(exit.text) \
296 CPU_KEEP(init.text) \ 293 CPU_KEEP(init.text) \
diff --git a/include/linux/init.h b/include/linux/init.h
index 20a1334e34e9..0e06c176f185 100644
--- a/include/linux/init.h
+++ b/include/linux/init.h
@@ -62,14 +62,6 @@
62#define __refdata __section(.ref.data) 62#define __refdata __section(.ref.data)
63#define __refconst __section(.ref.rodata) 63#define __refconst __section(.ref.rodata)
64 64
65/* backward compatibility note
66 * A few places hardcode the old section names:
67 * .text.init.refok
68 * .data.init.refok
69 * .exit.text.refok
70 * They should be converted to use the defines from this file
71 */
72
73/* compatibility defines */ 65/* compatibility defines */
74#define __init_refok __ref 66#define __init_refok __ref
75#define __initdata_refok __refdata 67#define __initdata_refok __refdata
diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
index df6e6286a065..8d46ea7d6715 100644
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
@@ -794,15 +794,6 @@ static const char *init_exit_sections[] =
794/* data section */ 794/* data section */
795static const char *data_sections[] = { DATA_SECTIONS, NULL }; 795static const char *data_sections[] = { DATA_SECTIONS, NULL };
796 796
797/* sections that may refer to an init/exit section with no warning */
798static const char *initref_sections[] =
799{
800 ".text.init.refok*",
801 ".exit.text.refok*",
802 ".data.init.refok*",
803 NULL
804};
805
806 797
807/* symbols in .data that may refer to init/exit sections */ 798/* symbols in .data that may refer to init/exit sections */
808static const char *symbol_white_list[] = 799static const char *symbol_white_list[] =
@@ -915,11 +906,6 @@ static int section_mismatch(const char *fromsec, const char *tosec)
915/** 906/**
916 * Whitelist to allow certain references to pass with no warning. 907 * Whitelist to allow certain references to pass with no warning.
917 * 908 *
918 * Pattern 0:
919 * Do not warn if funtion/data are marked with __init_refok/__initdata_refok.
920 * The pattern is identified by:
921 * fromsec = .text.init.refok* | .data.init.refok*
922 *
923 * Pattern 1: 909 * Pattern 1:
924 * If a module parameter is declared __initdata and permissions=0 910 * If a module parameter is declared __initdata and permissions=0
925 * then this is legal despite the warning generated. 911 * then this is legal despite the warning generated.
@@ -958,10 +944,6 @@ static int section_mismatch(const char *fromsec, const char *tosec)
958static int secref_whitelist(const char *fromsec, const char *fromsym, 944static int secref_whitelist(const char *fromsec, const char *fromsym,
959 const char *tosec, const char *tosym) 945 const char *tosec, const char *tosym)
960{ 946{
961 /* Check for pattern 0 */
962 if (match(fromsec, initref_sections))
963 return 0;
964
965 /* Check for pattern 1 */ 947 /* Check for pattern 1 */
966 if (match(tosec, init_data_sections) && 948 if (match(tosec, init_data_sections) &&
967 match(fromsec, data_sections) && 949 match(fromsec, data_sections) &&