diff options
author | Greg Kroah-Hartman <gregkh@suse.de> | 2006-03-20 16:17:13 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2006-03-20 16:42:58 -0500 |
commit | 9f28bb7e1d0188a993403ab39b774785892805e1 (patch) | |
tree | 939660c2531335dc899cc66fa7f3f05aa343d1e0 /scripts | |
parent | 3fd6805f4dfb02bcfb5634972eabad0e790f119a (diff) |
[PATCH] add EXPORT_SYMBOL_GPL_FUTURE()
This patch adds the ability to mark symbols that will be changed in the
future, so that kernel modules that don't include MODULE_LICENSE("GPL")
and use the symbols, will be flagged and printed out to the system log.
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/genksyms/keywords.c_shipped | 91 | ||||
-rw-r--r-- | scripts/genksyms/keywords.gperf | 1 |
2 files changed, 47 insertions, 45 deletions
diff --git a/scripts/genksyms/keywords.c_shipped b/scripts/genksyms/keywords.c_shipped index ee4647805c58..d8153f572e40 100644 --- a/scripts/genksyms/keywords.c_shipped +++ b/scripts/genksyms/keywords.c_shipped | |||
@@ -52,9 +52,9 @@ is_reserved_hash (register const char *str, register unsigned int len) | |||
52 | 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, | 52 | 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, |
53 | 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, | 53 | 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, |
54 | 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, | 54 | 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, |
55 | 71, 71, 71, 71, 71, 71, 71, 71, 71, 15, | 55 | 71, 71, 71, 71, 71, 71, 71, 71, 71, 0, |
56 | 71, 71, 71, 71, 71, 71, 15, 71, 71, 71, | 56 | 71, 71, 71, 71, 71, 71, 35, 71, 71, 71, |
57 | 10, 71, 71, 71, 71, 71, 71, 71, 71, 71, | 57 | 5, 71, 71, 71, 71, 71, 71, 71, 71, 71, |
58 | 71, 71, 71, 71, 71, 0, 71, 0, 71, 5, | 58 | 71, 71, 71, 71, 71, 0, 71, 0, 71, 5, |
59 | 5, 0, 10, 20, 71, 25, 71, 71, 20, 0, | 59 | 5, 0, 10, 20, 71, 25, 71, 71, 20, 0, |
60 | 20, 30, 25, 71, 10, 5, 0, 20, 15, 71, | 60 | 20, 30, 25, 71, 10, 5, 0, 20, 15, 71, |
@@ -84,9 +84,9 @@ is_reserved_word (register const char *str, register unsigned int len) | |||
84 | { | 84 | { |
85 | enum | 85 | enum |
86 | { | 86 | { |
87 | TOTAL_KEYWORDS = 41, | 87 | TOTAL_KEYWORDS = 42, |
88 | MIN_WORD_LENGTH = 3, | 88 | MIN_WORD_LENGTH = 3, |
89 | MAX_WORD_LENGTH = 17, | 89 | MAX_WORD_LENGTH = 24, |
90 | MIN_HASH_VALUE = 3, | 90 | MIN_HASH_VALUE = 3, |
91 | MAX_HASH_VALUE = 70 | 91 | MAX_HASH_VALUE = 70 |
92 | }; | 92 | }; |
@@ -94,104 +94,105 @@ is_reserved_word (register const char *str, register unsigned int len) | |||
94 | static const struct resword wordlist[] = | 94 | static const struct resword wordlist[] = |
95 | { | 95 | { |
96 | {""}, {""}, {""}, | 96 | {""}, {""}, {""}, |
97 | #line 24 "scripts/genksyms/keywords.gperf" | 97 | #line 25 "scripts/genksyms/keywords.gperf" |
98 | {"asm", ASM_KEYW}, | 98 | {"asm", ASM_KEYW}, |
99 | {""}, | 99 | {""}, |
100 | #line 7 "scripts/genksyms/keywords.gperf" | 100 | #line 8 "scripts/genksyms/keywords.gperf" |
101 | {"__asm", ASM_KEYW}, | 101 | {"__asm", ASM_KEYW}, |
102 | {""}, | 102 | {""}, |
103 | #line 8 "scripts/genksyms/keywords.gperf" | 103 | #line 9 "scripts/genksyms/keywords.gperf" |
104 | {"__asm__", ASM_KEYW}, | 104 | {"__asm__", ASM_KEYW}, |
105 | {""}, | 105 | {""}, |
106 | #line 21 "scripts/genksyms/keywords.gperf" | 106 | #line 22 "scripts/genksyms/keywords.gperf" |
107 | {"_restrict", RESTRICT_KEYW}, | 107 | {"_restrict", RESTRICT_KEYW}, |
108 | #line 50 "scripts/genksyms/keywords.gperf" | 108 | #line 51 "scripts/genksyms/keywords.gperf" |
109 | {"__typeof__", TYPEOF_KEYW}, | 109 | {"__typeof__", TYPEOF_KEYW}, |
110 | #line 9 "scripts/genksyms/keywords.gperf" | 110 | #line 10 "scripts/genksyms/keywords.gperf" |
111 | {"__attribute", ATTRIBUTE_KEYW}, | 111 | {"__attribute", ATTRIBUTE_KEYW}, |
112 | #line 11 "scripts/genksyms/keywords.gperf" | 112 | #line 12 "scripts/genksyms/keywords.gperf" |
113 | {"__const", CONST_KEYW}, | 113 | {"__const", CONST_KEYW}, |
114 | #line 10 "scripts/genksyms/keywords.gperf" | 114 | #line 11 "scripts/genksyms/keywords.gperf" |
115 | {"__attribute__", ATTRIBUTE_KEYW}, | 115 | {"__attribute__", ATTRIBUTE_KEYW}, |
116 | #line 12 "scripts/genksyms/keywords.gperf" | 116 | #line 13 "scripts/genksyms/keywords.gperf" |
117 | {"__const__", CONST_KEYW}, | 117 | {"__const__", CONST_KEYW}, |
118 | #line 16 "scripts/genksyms/keywords.gperf" | 118 | #line 17 "scripts/genksyms/keywords.gperf" |
119 | {"__signed__", SIGNED_KEYW}, | 119 | {"__signed__", SIGNED_KEYW}, |
120 | #line 42 "scripts/genksyms/keywords.gperf" | 120 | #line 43 "scripts/genksyms/keywords.gperf" |
121 | {"static", STATIC_KEYW}, | 121 | {"static", STATIC_KEYW}, |
122 | {""}, | 122 | {""}, |
123 | #line 15 "scripts/genksyms/keywords.gperf" | 123 | #line 16 "scripts/genksyms/keywords.gperf" |
124 | {"__signed", SIGNED_KEYW}, | 124 | {"__signed", SIGNED_KEYW}, |
125 | #line 30 "scripts/genksyms/keywords.gperf" | 125 | #line 31 "scripts/genksyms/keywords.gperf" |
126 | {"char", CHAR_KEYW}, | 126 | {"char", CHAR_KEYW}, |
127 | {""}, | 127 | {""}, |
128 | #line 43 "scripts/genksyms/keywords.gperf" | 128 | #line 44 "scripts/genksyms/keywords.gperf" |
129 | {"struct", STRUCT_KEYW}, | 129 | {"struct", STRUCT_KEYW}, |
130 | #line 22 "scripts/genksyms/keywords.gperf" | ||
131 | {"__restrict__", RESTRICT_KEYW}, | ||
132 | #line 23 "scripts/genksyms/keywords.gperf" | 130 | #line 23 "scripts/genksyms/keywords.gperf" |
131 | {"__restrict__", RESTRICT_KEYW}, | ||
132 | #line 24 "scripts/genksyms/keywords.gperf" | ||
133 | {"restrict", RESTRICT_KEYW}, | 133 | {"restrict", RESTRICT_KEYW}, |
134 | #line 33 "scripts/genksyms/keywords.gperf" | 134 | #line 34 "scripts/genksyms/keywords.gperf" |
135 | {"enum", ENUM_KEYW}, | 135 | {"enum", ENUM_KEYW}, |
136 | #line 17 "scripts/genksyms/keywords.gperf" | 136 | #line 18 "scripts/genksyms/keywords.gperf" |
137 | {"__volatile", VOLATILE_KEYW}, | 137 | {"__volatile", VOLATILE_KEYW}, |
138 | #line 34 "scripts/genksyms/keywords.gperf" | 138 | #line 35 "scripts/genksyms/keywords.gperf" |
139 | {"extern", EXTERN_KEYW}, | 139 | {"extern", EXTERN_KEYW}, |
140 | #line 18 "scripts/genksyms/keywords.gperf" | 140 | #line 19 "scripts/genksyms/keywords.gperf" |
141 | {"__volatile__", VOLATILE_KEYW}, | 141 | {"__volatile__", VOLATILE_KEYW}, |
142 | #line 37 "scripts/genksyms/keywords.gperf" | 142 | #line 38 "scripts/genksyms/keywords.gperf" |
143 | {"int", INT_KEYW}, | 143 | {"int", INT_KEYW}, |
144 | {""}, | 144 | #line 7 "scripts/genksyms/keywords.gperf" |
145 | #line 31 "scripts/genksyms/keywords.gperf" | 145 | {"EXPORT_SYMBOL_GPL_FUTURE", EXPORT_SYMBOL_KEYW}, |
146 | {"const", CONST_KEYW}, | ||
147 | #line 32 "scripts/genksyms/keywords.gperf" | 146 | #line 32 "scripts/genksyms/keywords.gperf" |
147 | {"const", CONST_KEYW}, | ||
148 | #line 33 "scripts/genksyms/keywords.gperf" | ||
148 | {"double", DOUBLE_KEYW}, | 149 | {"double", DOUBLE_KEYW}, |
149 | {""}, | 150 | {""}, |
150 | #line 13 "scripts/genksyms/keywords.gperf" | 151 | #line 14 "scripts/genksyms/keywords.gperf" |
151 | {"__inline", INLINE_KEYW}, | 152 | {"__inline", INLINE_KEYW}, |
152 | #line 29 "scripts/genksyms/keywords.gperf" | 153 | #line 30 "scripts/genksyms/keywords.gperf" |
153 | {"auto", AUTO_KEYW}, | 154 | {"auto", AUTO_KEYW}, |
154 | #line 14 "scripts/genksyms/keywords.gperf" | 155 | #line 15 "scripts/genksyms/keywords.gperf" |
155 | {"__inline__", INLINE_KEYW}, | 156 | {"__inline__", INLINE_KEYW}, |
156 | #line 41 "scripts/genksyms/keywords.gperf" | 157 | #line 42 "scripts/genksyms/keywords.gperf" |
157 | {"signed", SIGNED_KEYW}, | 158 | {"signed", SIGNED_KEYW}, |
158 | {""}, | 159 | {""}, |
159 | #line 46 "scripts/genksyms/keywords.gperf" | 160 | #line 47 "scripts/genksyms/keywords.gperf" |
160 | {"unsigned", UNSIGNED_KEYW}, | 161 | {"unsigned", UNSIGNED_KEYW}, |
161 | {""}, | 162 | {""}, |
162 | #line 40 "scripts/genksyms/keywords.gperf" | 163 | #line 41 "scripts/genksyms/keywords.gperf" |
163 | {"short", SHORT_KEYW}, | 164 | {"short", SHORT_KEYW}, |
164 | #line 49 "scripts/genksyms/keywords.gperf" | 165 | #line 50 "scripts/genksyms/keywords.gperf" |
165 | {"typeof", TYPEOF_KEYW}, | 166 | {"typeof", TYPEOF_KEYW}, |
166 | #line 44 "scripts/genksyms/keywords.gperf" | 167 | #line 45 "scripts/genksyms/keywords.gperf" |
167 | {"typedef", TYPEDEF_KEYW}, | 168 | {"typedef", TYPEDEF_KEYW}, |
168 | #line 48 "scripts/genksyms/keywords.gperf" | 169 | #line 49 "scripts/genksyms/keywords.gperf" |
169 | {"volatile", VOLATILE_KEYW}, | 170 | {"volatile", VOLATILE_KEYW}, |
170 | {""}, | 171 | {""}, |
171 | #line 35 "scripts/genksyms/keywords.gperf" | 172 | #line 36 "scripts/genksyms/keywords.gperf" |
172 | {"float", FLOAT_KEYW}, | 173 | {"float", FLOAT_KEYW}, |
173 | {""}, {""}, | 174 | {""}, {""}, |
174 | #line 39 "scripts/genksyms/keywords.gperf" | 175 | #line 40 "scripts/genksyms/keywords.gperf" |
175 | {"register", REGISTER_KEYW}, | 176 | {"register", REGISTER_KEYW}, |
176 | #line 47 "scripts/genksyms/keywords.gperf" | 177 | #line 48 "scripts/genksyms/keywords.gperf" |
177 | {"void", VOID_KEYW}, | 178 | {"void", VOID_KEYW}, |
178 | {""}, | 179 | {""}, |
179 | #line 36 "scripts/genksyms/keywords.gperf" | 180 | #line 37 "scripts/genksyms/keywords.gperf" |
180 | {"inline", INLINE_KEYW}, | 181 | {"inline", INLINE_KEYW}, |
181 | {""}, | 182 | {""}, |
182 | #line 5 "scripts/genksyms/keywords.gperf" | 183 | #line 5 "scripts/genksyms/keywords.gperf" |
183 | {"EXPORT_SYMBOL", EXPORT_SYMBOL_KEYW}, | 184 | {"EXPORT_SYMBOL", EXPORT_SYMBOL_KEYW}, |
184 | {""}, | 185 | {""}, |
185 | #line 20 "scripts/genksyms/keywords.gperf" | 186 | #line 21 "scripts/genksyms/keywords.gperf" |
186 | {"_Bool", BOOL_KEYW}, | 187 | {"_Bool", BOOL_KEYW}, |
187 | {""}, | 188 | {""}, |
188 | #line 6 "scripts/genksyms/keywords.gperf" | 189 | #line 6 "scripts/genksyms/keywords.gperf" |
189 | {"EXPORT_SYMBOL_GPL", EXPORT_SYMBOL_KEYW}, | 190 | {"EXPORT_SYMBOL_GPL", EXPORT_SYMBOL_KEYW}, |
190 | {""}, {""}, {""}, {""}, {""}, {""}, | 191 | {""}, {""}, {""}, {""}, {""}, {""}, |
191 | #line 38 "scripts/genksyms/keywords.gperf" | 192 | #line 39 "scripts/genksyms/keywords.gperf" |
192 | {"long", LONG_KEYW}, | 193 | {"long", LONG_KEYW}, |
193 | {""}, {""}, {""}, {""}, {""}, | 194 | {""}, {""}, {""}, {""}, {""}, |
194 | #line 45 "scripts/genksyms/keywords.gperf" | 195 | #line 46 "scripts/genksyms/keywords.gperf" |
195 | {"union", UNION_KEYW} | 196 | {"union", UNION_KEYW} |
196 | }; | 197 | }; |
197 | 198 | ||
diff --git a/scripts/genksyms/keywords.gperf b/scripts/genksyms/keywords.gperf index b6bec765996e..c75e0c8d8f0c 100644 --- a/scripts/genksyms/keywords.gperf +++ b/scripts/genksyms/keywords.gperf | |||
@@ -4,6 +4,7 @@ struct resword { const char *name; int token; } | |||
4 | %% | 4 | %% |
5 | EXPORT_SYMBOL, EXPORT_SYMBOL_KEYW | 5 | EXPORT_SYMBOL, EXPORT_SYMBOL_KEYW |
6 | EXPORT_SYMBOL_GPL, EXPORT_SYMBOL_KEYW | 6 | EXPORT_SYMBOL_GPL, EXPORT_SYMBOL_KEYW |
7 | EXPORT_SYMBOL_GPL_FUTURE, EXPORT_SYMBOL_KEYW | ||
7 | __asm, ASM_KEYW | 8 | __asm, ASM_KEYW |
8 | __asm__, ASM_KEYW | 9 | __asm__, ASM_KEYW |
9 | __attribute, ATTRIBUTE_KEYW | 10 | __attribute, ATTRIBUTE_KEYW |