From: arnd@arndb.de (Arnd Bergmann)
To: linux-arm-kernel@lists.infradead.org
Subject: [BUG] CONFIG_UNINLINE_SPIN_UNLOCK important for Cortex-A9
Date: Tue, 31 May 2016 11:35:08 +0200 [thread overview]
Message-ID: <4854518.jvbplH0SM0@wuerfel> (raw)
In-Reply-To: <874m9eoetu.fsf@gmail.com>
On Tuesday, May 31, 2016 9:40:29 AM CEST Holger Schurig wrote:
> I chased a bug in the recent weeks that seems to be related to spinlocks.
>
>
>
> Hardware & Kernel config
> ------------------------
> I have an i.MX6Q device. I don't use "make imx_v6_v7_defconfig", but
> selected only what I need. As such, I only have CONFIG_ARCH_MXC and
> CONFIG_SOC_IMX6Q enabled.
>
> As a result, in my kernel CONFIG_UNINLINE_SPIN_UNLOCK was *not* defined.
>
> In a kernel configured with "make imx_v6_v7_defconfig" this is
> configured. And so people (e.g. the Freescale/NPX people) that normally
> use this defconfig will never see the issue.
Have you tried multi_v7_defconfig? That also does not set
CONFIG_UNINLINE_SPIN_UNLOCK, but it is generally assumed to work.
> Cure
> ----
> When I turned on CONFIG_PROVE_RCU the issue stopped. This option does
> "select UNINLINE_SPIN_UNLOCK", and this uninline option is also selected
> with the imx_v6_v7_defconfig. I actually don't care if RCUs are proven
> or not, this just turns on the uninlining as a side-effect.
Just to be sure: If you just enable UNINLINE_SPIN_UNLOCK (e.g. using
a 'select' from arch/arm/mach-imx/Kconfig) without selecting PROVE_RCU,
you say the bug is gone too?
> Question
> --------
> I don't have the slightest idea what produces the error and why
> uninlining helps (I'm not deep in such internals), so I wonder how to
> proceed.
>
> Should I simply send in a patch that "select UNINLINE_SPIN_UNLOCK" on
> i.MX6Q ???
I think we really need to get to the bottom of this, as there are tons
of possible reasons for the behavior, and selecting it for i.MX6Q.
Please provide a few more details about your environment:
- Specific kernel version, and full list of patches applied (if any).
Have you reproduced this with a plain unpatched linux-4.6 kernel?
- Specific gcc version you used for building the kernel. Does this
happen with both old and new compilers, e.g. 4.7 and 6.1?
- If it happens with an unpatched linux-4.6 and all gcc versions
with multi_v7_defconfig, we should try reproducing it on some
other quad-core Cortex-A9 (non-imx) platform with the same kernel
binary.
Arnd
next prev parent reply other threads:[~2016-05-31 9:35 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-31 7:40 [BUG] CONFIG_UNINLINE_SPIN_UNLOCK important for Cortex-A9 Holger Schurig
2016-05-31 9:35 ` Arnd Bergmann [this message]
2016-05-31 10:51 ` Holger Schurig
2016-05-31 11:43 ` Arnd Bergmann
2016-05-31 12:16 ` Russell King - ARM Linux
2016-05-31 13:12 ` Arnd Bergmann
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=4854518.jvbplH0SM0@wuerfel \
--to=arnd@arndb.de \
--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.