From: Masahiro Yamada <masahiroy@kernel.org>
To: Jessica Yu <jeyu@kernel.org>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>,
Christoph Hellwig <hch@lst.de>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linux Next Mailing List <linux-next@vger.kernel.org>,
Michael Ellerman <mpe@ellerman.id.au>
Subject: Re: linux-next: build failure after merge of the modules tree
Date: Wed, 10 Feb 2021 17:37:47 +0900 [thread overview]
Message-ID: <CAK7LNAQn8BX9H577Mfp8WMzzaZZ=oZdEti1Lx2XptZY8aHmzuQ@mail.gmail.com> (raw)
In-Reply-To: <YCOUGGJtUJ+Nf0ZA@gunter>
On Wed, Feb 10, 2021 at 5:06 PM Jessica Yu <jeyu@kernel.org> wrote:
>
> +++ Stephen Rothwell [10/02/21 08:50 +1100]:
> >Hi Jessica,
> >
> >On Tue, 9 Feb 2021 16:16:20 +0100 Jessica Yu <jeyu@kernel.org> wrote:
> >>
> >> Hmm, these errors don't look like it's related to that particular commit. I was
> >
> >I found this commit by bisection and then tested by reverting it.
> >
> >Before this commit, CONFIG_TRIM_UNUSED_KSYMS would not be set in the
> >allyesconfig build because CONFIG_UNUSED_SYMBOLS was set. After this
> >commit, CONFIG_TRIM_UNUSED_KSYMS will be set in the allyesconfig build.
>
> Ah, that makes sense then. I would get the error on powerpc whenever
> CONFIG_TRIM_UNUSED_KSYMS was enabled.
>
> >> able to reproduce these weird autoksym errors even without any modules-next
> >> patches applied, and on a clean v5.11-rc7 tree. To reproduce it,
> >> CONFIG_TRIM_UNUSED_KSYMS needs to be enabled. I guess that's why we run into
> >> these errors with allyesconfig. I used a gcc-7 ppc64le cross compiler and got
> >> the same compiler warnings. It seems to not compile on powerpc properly because
> >> it looks like some symbols have an extra dot "." prefix, for example in
> >> kthread.o:
> >>
> >> 168: 0000000000000318 24 NOTYPE GLOBAL DEFAULT 6 kthread_create_worker
> >> 169: 0000000000001d90 104 FUNC GLOBAL DEFAULT 1 .kthread_create_worker
> >> 170: 0000000000000330 24 NOTYPE GLOBAL DEFAULT 6 kthread_create_worker_on_cpu
> >> 171: 0000000000001e00 88 FUNC GLOBAL DEFAULT 1 .kthread_create_worker_on_cpu
> >> 172: 0000000000000348 24 NOTYPE GLOBAL DEFAULT 6 kthread_queue_work
> >> 173: 0000000000001e60 228 FUNC GLOBAL DEFAULT 1 .kthread_queue_work
> >>
> >> So I suppose this dot prefix is specific to powerpc. From the ppc64 elf abi docs:
> >>
> >> Symbol names with a dot (.) prefix are reserved for holding entry point
> >> addresses. The value of a symbol named ".FN", if it exists, is the entry point
> >> of the function "FN".
> >>
> >> I guess the presence of the extra dot symbols is confusing
> >> scripts/gen_autoksyms.sh, so we get the dot symbols in autoksyms.h, which the
> >> preprocessor doesn't like. I am wondering how this was never caught until now
> >> and also now curious if this feature was ever functional on powerpc..
> >
> >Which feature?
>
> Sorry, by "feature" I meant CONFIG_TRIM_UNUSED_KSYMS. This config
> option was introduced around v4.7. If simply enabling it produces
> these compilation errors I was wondering if it ever built properly on
> powerpc.
>
> Thanks,
>
> Jessica
Thanks for the report.
I think the following will fix the issue,
but modpost needs fixing too.
diff --git a/scripts/gen_autoksyms.sh b/scripts/gen_autoksyms.sh
index 16c0b2ddaa4c..996a7109167b 100755
--- a/scripts/gen_autoksyms.sh
+++ b/scripts/gen_autoksyms.sh
@@ -44,7 +44,7 @@ sed 's/ko$/mod/' $modlist |
xargs -n1 sed -n -e '2{s/ /\n/g;/^$/!p;}' -- |
cat - "$ksym_wl" |
sort -u |
-sed -e 's/\(.*\)/#define __KSYM_\1 1/' >> "$output_file"
+sed -e 's/^\.\{,1\}\(.*\)/#define __KSYM_\1 1/' >> "$output_file"
# Special case for modversions (see modpost.c)
if [ -n "$CONFIG_MODVERSIONS" ]; then
m
I will post two patches with some commit log
after some testing.
(one for gen_autoksyms.sh and the other for modpost).
--
Best Regards
Masahiro Yamada
next prev parent reply other threads:[~2021-02-10 8:45 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-09 10:08 linux-next: build failure after merge of the modules tree Stephen Rothwell
2021-02-09 15:16 ` Jessica Yu
2021-02-09 16:06 ` Christoph Hellwig
2021-02-09 21:50 ` Stephen Rothwell
2021-02-10 8:06 ` Jessica Yu
2021-02-10 8:37 ` Masahiro Yamada [this message]
2021-02-11 6:19 ` Masahiro Yamada
2021-02-10 12:21 ` Stephen Rothwell
2021-02-10 16:16 ` Jessica Yu
-- strict thread matches above, loose matches on Subject: below --
2024-02-02 1:03 Stephen Rothwell
2022-11-14 0:13 Stephen Rothwell
2022-11-14 8:01 ` Jiri Olsa
2022-11-14 9:08 ` Leizhen (ThunderTown)
2022-02-21 16:07 broonie
2022-02-23 0:32 ` Luis Chamberlain
2022-02-28 5:13 ` Stephen Rothwell
2022-02-28 18:16 ` Luis Chamberlain
2019-06-25 4:27 Stephen Rothwell
2015-12-01 20:23 Mark Brown
2015-12-02 3:23 ` Rusty Russell
2015-11-27 1:26 Stephen Rothwell
2015-11-27 2:57 ` Rusty Russell
2015-06-25 6:54 Stephen Rothwell
2015-06-25 9:51 ` Dan Streetman
2015-06-24 1:37 Stephen Rothwell
2015-06-24 18:18 ` Dan Streetman
2015-06-24 22:57 ` Stephen Rothwell
2015-06-25 1:50 ` Stephen Rothwell
2014-12-18 2:05 Stephen Rothwell
2014-08-07 3:20 Stephen Rothwell
2014-08-07 11:37 ` Rusty Russell
2014-08-07 13:03 ` Stephen Rothwell
2014-08-07 13:07 ` Rusty Russell
2014-08-08 1:33 ` Stephen Rothwell
2014-07-28 3:58 Stephen Rothwell
2014-07-28 11:38 ` Rusty Russell
2014-03-25 3:02 Stephen Rothwell
2014-03-31 3:45 ` Rusty Russell
2012-11-26 4:10 Stephen Rothwell
2012-11-28 11:02 ` Stanislaw Gruszka
2012-12-03 0:29 ` Rusty Russell
2012-11-02 1:57 Stephen Rothwell
2012-11-02 3:16 ` Rusty Russell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAK7LNAQn8BX9H577Mfp8WMzzaZZ=oZdEti1Lx2XptZY8aHmzuQ@mail.gmail.com' \
--to=masahiroy@kernel.org \
--cc=hch@lst.de \
--cc=jeyu@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@vger.kernel.org \
--cc=mpe@ellerman.id.au \
--cc=sfr@canb.auug.org.au \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.