Hi Masahiro On Wed, May 09, 2018 at 04:23:49PM +0900, Masahiro Yamada wrote: > CONFIG_HAVE_UNDERSCORE_SYMBOL_PREFIX was selected by BLACKFIN, METAG. > They were removed by commit 4ba66a976072 ("arch: remove blackfin port"), > commit bb6fb6dfcc17 ("metag: Remove arch/metag/"), respectively. > > No more architecture enables CONFIG_HAVE_UNDERSCORE_SYMBOL_PREFIX. > Clean up the export.h headers. I am keeping VMLINUX_SYMBOL() and > VMLINUX_SYMBOL_STR() because they are widely used. > > Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> > --- > diff --git a/include/linux/export.h b/include/linux/export.h > index 1a1dfdb..b768d6d 100644 > --- a/include/linux/export.h > +++ b/include/linux/export.h > @@ -10,14 +10,8 @@ > * hackers place grumpy comments in header files. > */ > > -/* Some toolchains use a `_' prefix for all user symbols. */ > -#ifdef CONFIG_HAVE_UNDERSCORE_SYMBOL_PREFIX > -#define __VMLINUX_SYMBOL(x) _##x > -#define __VMLINUX_SYMBOL_STR(x) "_" #x > -#else > #define __VMLINUX_SYMBOL(x) x > #define __VMLINUX_SYMBOL_STR(x) #x > -#endif > > /* Indirect, so macros are expanded before pasting. */ > #define VMLINUX_SYMBOL(x) __VMLINUX_SYMBOL(x) Since we no longer need any expansion, then the indirection seems unnessesary. I think we can reduce this to just: #define VMLINUX_SYMBOL(x) x Likewise for __VMLINUX_SYMBOL_STR Sam