From: asavkov@redhat.com (Artem Savkov)
To: linux-arm-kernel@lists.infradead.org
Subject: arm64 build failure with CONFIG_ARM64_LSE_ATOMICS=y
Date: Fri, 4 Nov 2016 09:35:19 +0100 [thread overview]
Message-ID: <20161104083519.GD24243@shodan.usersys.redhat.com> (raw)
In-Reply-To: <20161103184624.GA695@e104818-lin.cambridge.arm.com>
On Thu, Nov 03, 2016 at 06:46:25PM +0000, Catalin Marinas wrote:
> On Thu, Nov 03, 2016 at 12:12:38PM +0100, Artem Savkov wrote:
> > On Thu, Nov 03, 2016 at 10:39:43AM +0000, Suzuki K Poulose wrote:
> > > On 02/11/16 23:28, Will Deacon wrote:
> > > > On Wed, Nov 02, 2016 at 05:44:27PM +0100, Artem Savkov wrote:
> > > > > Looks like your patch "efd9e03 arm64: Use static keys for CPU features"
> > > > > breaks arm64 build with "CONFIG_ARM64_LSE_ATOMICS=y" because it creates a
> > > > > circular dependency for asm/lse.h through jump_label.h:
> [...]
> > Apparently it fails with an older gcc (4.8.5), but doesn't with 6.2.0.
> > The different bit is that with 4.8.5 I don't have CC_HAVE_ASM_GOTO set.
> > It is reproducible with 6.2.0 if you manually remove CC_HAVE_ASM_GOTO.
>
> -----------8<----------------
> From e27eb40cd5af38f1a5e64553a367220f00a1b5d8 Mon Sep 17 00:00:00 2001
> From: Catalin Marinas <catalin.marinas@arm.com>
> Date: Thu, 3 Nov 2016 18:34:34 +0000
> Subject: [PATCH] arm64: Fix circular include of asm/lse.h through
> linux/jump_label.h
>
> Commit efd9e03facd0 ("arm64: Use static keys for CPU features")
> introduced support for static keys in asm/cpufeature.h, including
> linux/jump_label.h. When CC_HAVE_ASM_GOTO is not defined, this causes a
> circular dependency via linux/atomic.h, asm/lse.h and asm/cpufeature.h.
>
> This patch moves the capability macros out out of asm/cpufeature.h into
> a separate asm/cpucaps.h and modifies some of the #includes accordingly.
>
> Fixes: efd9e03facd0 ("arm64: Use static keys for CPU features")
> Reported-by: Artem Savkov <asavkov@redhat.com>
> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
> ---
> arch/arm64/include/asm/alternative.h | 2 +-
> arch/arm64/include/asm/cpucaps.h | 40 ++++++++++++++++++++++++++++++++++++
> arch/arm64/include/asm/cpufeature.h | 20 +-----------------
> arch/arm64/include/asm/lse.h | 1 -
> 4 files changed, 42 insertions(+), 21 deletions(-)
> create mode 100644 arch/arm64/include/asm/cpucaps.h
Tested-by: Artem Savkov <asavkov@redhat.com>
The patch fixes the issue. Thanks.
--
Regards,
Artem
WARNING: multiple messages have this Message-ID (diff)
From: Artem Savkov <asavkov@redhat.com>
To: Catalin Marinas <catalin.marinas@arm.com>
Cc: Suzuki K Poulose <Suzuki.Poulose@arm.com>,
Will Deacon <will.deacon@arm.com>,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: arm64 build failure with CONFIG_ARM64_LSE_ATOMICS=y
Date: Fri, 4 Nov 2016 09:35:19 +0100 [thread overview]
Message-ID: <20161104083519.GD24243@shodan.usersys.redhat.com> (raw)
In-Reply-To: <20161103184624.GA695@e104818-lin.cambridge.arm.com>
On Thu, Nov 03, 2016 at 06:46:25PM +0000, Catalin Marinas wrote:
> On Thu, Nov 03, 2016 at 12:12:38PM +0100, Artem Savkov wrote:
> > On Thu, Nov 03, 2016 at 10:39:43AM +0000, Suzuki K Poulose wrote:
> > > On 02/11/16 23:28, Will Deacon wrote:
> > > > On Wed, Nov 02, 2016 at 05:44:27PM +0100, Artem Savkov wrote:
> > > > > Looks like your patch "efd9e03 arm64: Use static keys for CPU features"
> > > > > breaks arm64 build with "CONFIG_ARM64_LSE_ATOMICS=y" because it creates a
> > > > > circular dependency for asm/lse.h through jump_label.h:
> [...]
> > Apparently it fails with an older gcc (4.8.5), but doesn't with 6.2.0.
> > The different bit is that with 4.8.5 I don't have CC_HAVE_ASM_GOTO set.
> > It is reproducible with 6.2.0 if you manually remove CC_HAVE_ASM_GOTO.
>
> -----------8<----------------
> From e27eb40cd5af38f1a5e64553a367220f00a1b5d8 Mon Sep 17 00:00:00 2001
> From: Catalin Marinas <catalin.marinas@arm.com>
> Date: Thu, 3 Nov 2016 18:34:34 +0000
> Subject: [PATCH] arm64: Fix circular include of asm/lse.h through
> linux/jump_label.h
>
> Commit efd9e03facd0 ("arm64: Use static keys for CPU features")
> introduced support for static keys in asm/cpufeature.h, including
> linux/jump_label.h. When CC_HAVE_ASM_GOTO is not defined, this causes a
> circular dependency via linux/atomic.h, asm/lse.h and asm/cpufeature.h.
>
> This patch moves the capability macros out out of asm/cpufeature.h into
> a separate asm/cpucaps.h and modifies some of the #includes accordingly.
>
> Fixes: efd9e03facd0 ("arm64: Use static keys for CPU features")
> Reported-by: Artem Savkov <asavkov@redhat.com>
> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
> ---
> arch/arm64/include/asm/alternative.h | 2 +-
> arch/arm64/include/asm/cpucaps.h | 40 ++++++++++++++++++++++++++++++++++++
> arch/arm64/include/asm/cpufeature.h | 20 +-----------------
> arch/arm64/include/asm/lse.h | 1 -
> 4 files changed, 42 insertions(+), 21 deletions(-)
> create mode 100644 arch/arm64/include/asm/cpucaps.h
Tested-by: Artem Savkov <asavkov@redhat.com>
The patch fixes the issue. Thanks.
--
Regards,
Artem
next prev parent reply other threads:[~2016-11-04 8:35 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-02 16:44 arm64 build failure with CONFIG_ARM64_LSE_ATOMICS=y Artem Savkov
2016-11-02 16:44 ` Artem Savkov
2016-11-02 23:28 ` Will Deacon
2016-11-02 23:28 ` Will Deacon
2016-11-03 10:39 ` Suzuki K Poulose
2016-11-03 10:39 ` Suzuki K Poulose
2016-11-03 11:12 ` Artem Savkov
2016-11-03 11:12 ` Artem Savkov
2016-11-03 18:46 ` Catalin Marinas
2016-11-03 18:46 ` Catalin Marinas
2016-11-04 8:35 ` Artem Savkov [this message]
2016-11-04 8:35 ` Artem Savkov
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=20161104083519.GD24243@shodan.usersys.redhat.com \
--to=asavkov@redhat.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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.