Re: [PATCH 02/12] EXPORT_SYMBOL() for asm
From: Arnd Bergmann
Date: Fri Jan 29 2016 - 16:06:24 EST
On Friday 29 January 2016 19:18:24 Al Viro wrote:
> From: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
> Add asm-usable variants of EXPORT_SYMBOL/EXPORT_SYMBOL_GPL. This
> commit just adds the default implementation; most of the architectures
> can simply add export.h to asm/Kbuild and start using <asm/export.h>
> from assembler. The area where the things might diverge from default
> is the alignment; normally it's 8 bytes on 64bit targets and 4 on
> 32bit ones, both for unsigned long and for struct kernel_symbol.
> Unfortunately, amd64 and m68k are unusual - m68k aligns to 2 bytes
> (for both) and amd64 aligns struct kernel_symbol to 16 bytes. For
> those we'll need to have asm/export.h overriding the constants used
> by generic version (KSYM_ALIGN and KCRC_ALIGN for kernel_symbol and
> unsigned long resp.) and including asm-generic/export.h.
> And no, __alignof__ would not do the trick - on amd64 __alignof__
> of struct kernel_symbol is 8, not 16.
> Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
> include/asm-generic/export.h | 61 ++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 61 insertions(+)
> create mode 100644 include/asm-generic/export.h
Acked-by: Arnd Bergmann <arnd@xxxxxxxx>