Re: [PATCH] nios2: ksyms: Add missing symbol exports

From: Ley Foon Tan
Date: Fri Nov 09 2018 - 03:14:47 EST


On Sun, 2018-10-07 at 07:53 -0700, Guenter Roeck wrote:
> Building nios2:allmodconfig fails as follows (each symbol is only
> listed
> once).
>
> ERROR: "__ashldi3" [drivers/md/dm-writecache.ko] undefined!
> ERROR: "__ashrdi3" [fs/xfs/xfs.ko] undefined!
> ERROR: "__ucmpdi2" [drivers/media/i2c/adv7842.ko] undefined!
> ERROR: "__lshrdi3" [drivers/md/dm-zoned.ko] undefined!
> ERROR: "flush_icache_range" [drivers/misc/lkdtm/lkdtm.ko] undefined!
> ERROR: "empty_zero_page" [drivers/md/dm-mod.ko] undefined!
>
> The problem is seen with gcc 7.3.0.
>
> Export the missing symbols.
>
> Fixes: 2fc8483fdcde ("nios2: Build infrastructure")
> Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
Acked-by: Ley Foon Tan <ley.foon.tan@xxxxxxxxx>

> ---
> Âarch/nios2/kernel/nios2_ksyms.c | 12 ++++++++++++
> Â1 file changed, 12 insertions(+)
>
> diff --git a/arch/nios2/kernel/nios2_ksyms.c
> b/arch/nios2/kernel/nios2_ksyms.c
> index bf2f55d10a4d..4e704046a150 100644
> --- a/arch/nios2/kernel/nios2_ksyms.c
> +++ b/arch/nios2/kernel/nios2_ksyms.c
> @@ -9,12 +9,20 @@
> Â#include <linux/export.h>
> Â#include <linux/string.h>
>
> +#include <asm/cacheflush.h>
> +#include <asm/pgtable.h>
> +
> Â/* string functions */
>
> ÂEXPORT_SYMBOL(memcpy);
> ÂEXPORT_SYMBOL(memset);
> ÂEXPORT_SYMBOL(memmove);
>
> +/* memory management */
> +
> +EXPORT_SYMBOL(empty_zero_page);
> +EXPORT_SYMBOL(flush_icache_range);
> +
> Â/*
> Â * libgcc functions - functions that are used internally by the
> Â * compiler...ÂÂ(prototypes are not correct though, but that
> @@ -31,3 +39,7 @@ DECLARE_EXPORT(__udivsi3);
> ÂDECLARE_EXPORT(__umoddi3);
> ÂDECLARE_EXPORT(__umodsi3);
> ÂDECLARE_EXPORT(__muldi3);
> +DECLARE_EXPORT(__ucmpdi2);
> +DECLARE_EXPORT(__lshrdi3);
> +DECLARE_EXPORT(__ashldi3);
> +DECLARE_EXPORT(__ashrdi3);
> --
> 2.7.4
>
>
> ________________________________
>
> Confidentiality Notice.
> This message may contain information that is confidential or
> otherwise protected from disclosure. If you are not the intended
> recipient, you are hereby notified that any use, disclosure,
> dissemination, distribution, or copying of this message, or any
> attachments, is strictly prohibited. If you have received this
> message in error, please advise the sender by reply e-mail, and
> delete the message and any attachments. Thank you.