diff mbox series

module: replace VMLINUX_SYMBOL_STR() with __stringify() or string literal

Message ID 1529768264-10199-1-git-send-email-yamada.masahiro@socionext.com
State Accepted
Commit 996302c5e85650722f1e5aeaeaaac12f9f362bf8
Headers show
Series module: replace VMLINUX_SYMBOL_STR() with __stringify() or string literal | expand

Commit Message

Masahiro Yamada June 23, 2018, 3:37 p.m. UTC
With the special case handling for Blackfin and Metag was removed by
commit 94e58e0ac312 ("export.h: remove code for prefixing symbols with
underscore"), VMLINUX_SYMBOL_STR() is now equivalent to __stringify().

Replace the remaining usages to prepare for the entire removal of
VMLINUX_SYMBOL_STR().

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

---

 include/linux/module.h | 4 ++--
 kernel/module.c        | 6 ++----
 2 files changed, 4 insertions(+), 6 deletions(-)

-- 
2.7.4

Comments

Jessica Yu June 25, 2018, 9:52 a.m. UTC | #1
+++ Masahiro Yamada [24/06/18 00:37 +0900]:
>With the special case handling for Blackfin and Metag was removed by

>commit 94e58e0ac312 ("export.h: remove code for prefixing symbols with

>underscore"), VMLINUX_SYMBOL_STR() is now equivalent to __stringify().

>

>Replace the remaining usages to prepare for the entire removal of

>VMLINUX_SYMBOL_STR().

>

>Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>


Applied, thanks.

Jessica

>---

>

> include/linux/module.h | 4 ++--

> kernel/module.c        | 6 ++----

> 2 files changed, 4 insertions(+), 6 deletions(-)

>

>diff --git a/include/linux/module.h b/include/linux/module.h

>index d44df9b..f807f15 100644

>--- a/include/linux/module.h

>+++ b/include/linux/module.h

>@@ -266,7 +266,7 @@ extern int modules_disabled; /* for sysctl */

> /* Get/put a kernel symbol (calls must be symmetric) */

> void *__symbol_get(const char *symbol);

> void *__symbol_get_gpl(const char *symbol);

>-#define symbol_get(x) ((typeof(&x))(__symbol_get(VMLINUX_SYMBOL_STR(x))))

>+#define symbol_get(x) ((typeof(&x))(__symbol_get(__stringify(x))))

>

> /* modules using other modules: kdb wants to see this. */

> struct module_use {

>@@ -575,7 +575,7 @@ extern void __noreturn __module_put_and_exit(struct module *mod,

> #ifdef CONFIG_MODULE_UNLOAD

> int module_refcount(struct module *mod);

> void __symbol_put(const char *symbol);

>-#define symbol_put(x) __symbol_put(VMLINUX_SYMBOL_STR(x))

>+#define symbol_put(x) __symbol_put(__stringify(x))

> void symbol_put_addr(void *addr);

>

> /* Sometimes we know we already have a refcount, and it's easier not

>diff --git a/kernel/module.c b/kernel/module.c

>index f475f30..624d2c0 100644

>--- a/kernel/module.c

>+++ b/kernel/module.c

>@@ -1339,14 +1339,12 @@ static inline int check_modstruct_version(const struct load_info *info,

> 	 * locking is necessary -- use preempt_disable() to placate lockdep.

> 	 */

> 	preempt_disable();

>-	if (!find_symbol(VMLINUX_SYMBOL_STR(module_layout), NULL,

>-			 &crc, true, false)) {

>+	if (!find_symbol("module_layout", NULL, &crc, true, false)) {

> 		preempt_enable();

> 		BUG();

> 	}

> 	preempt_enable();

>-	return check_version(info, VMLINUX_SYMBOL_STR(module_layout),

>-			     mod, crc);

>+	return check_version(info, "module_layout", mod, crc);

> }

>

> /* First part is kernel version, which we ignore if module has crcs. */

>-- 

>2.7.4

>
diff mbox series

Patch

diff --git a/include/linux/module.h b/include/linux/module.h
index d44df9b..f807f15 100644
--- a/include/linux/module.h
+++ b/include/linux/module.h
@@ -266,7 +266,7 @@  extern int modules_disabled; /* for sysctl */
 /* Get/put a kernel symbol (calls must be symmetric) */
 void *__symbol_get(const char *symbol);
 void *__symbol_get_gpl(const char *symbol);
-#define symbol_get(x) ((typeof(&x))(__symbol_get(VMLINUX_SYMBOL_STR(x))))
+#define symbol_get(x) ((typeof(&x))(__symbol_get(__stringify(x))))
 
 /* modules using other modules: kdb wants to see this. */
 struct module_use {
@@ -575,7 +575,7 @@  extern void __noreturn __module_put_and_exit(struct module *mod,
 #ifdef CONFIG_MODULE_UNLOAD
 int module_refcount(struct module *mod);
 void __symbol_put(const char *symbol);
-#define symbol_put(x) __symbol_put(VMLINUX_SYMBOL_STR(x))
+#define symbol_put(x) __symbol_put(__stringify(x))
 void symbol_put_addr(void *addr);
 
 /* Sometimes we know we already have a refcount, and it's easier not
diff --git a/kernel/module.c b/kernel/module.c
index f475f30..624d2c0 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -1339,14 +1339,12 @@  static inline int check_modstruct_version(const struct load_info *info,
 	 * locking is necessary -- use preempt_disable() to placate lockdep.
 	 */
 	preempt_disable();
-	if (!find_symbol(VMLINUX_SYMBOL_STR(module_layout), NULL,
-			 &crc, true, false)) {
+	if (!find_symbol("module_layout", NULL, &crc, true, false)) {
 		preempt_enable();
 		BUG();
 	}
 	preempt_enable();
-	return check_version(info, VMLINUX_SYMBOL_STR(module_layout),
-			     mod, crc);
+	return check_version(info, "module_layout", mod, crc);
 }
 
 /* First part is kernel version, which we ignore if module has crcs. */