[PATCH] arm64: Work around broken GCC handling of "S" constraint

Marc Zyngier maz at kernel.org
Mon Dec 7 14:04:44 EST 2020


Hi Robin,

On Mon, 07 Dec 2020 18:42:23 +0000,
Robin Murphy <robin.murphy at arm.com> wrote:
> 
> On 2020-12-07 17:47, Ard Biesheuvel wrote:
> > On Mon, 7 Dec 2020 at 18:41, Marc Zyngier <maz at kernel.org> wrote:
> >> 
> >> On 2020-12-07 17:19, Ard Biesheuvel wrote:
> >>> (resend with David's email address fixed)
> >> 
> >> Irk. Thanks for that.
> >> 
> >>>>> +#ifdef CONFIG_CC_HAS_BROKEN_S_CONSTRAINT
> >>>>> +#define SYM_CONSTRAINT "i"
> >>>>> +#else
> >>>>> +#define SYM_CONSTRAINT "S"
> >>>>> +#endif
> >>>>> +
> >>>> 
> >>>> Could we just check GCC_VERSION here?
> >> 
> >> I guess we could. But I haven't investigated which exact range of
> >> compiler is broken (GCC 6.3 seems fixed, but that's the oldest
> >> I have apart from the offending 4.9).
> >> 
> > 
> > I tried 5.4 on godbolt, and it seems happy. And the failure will be
> > obvious, so we can afford to get it slightly wrong and refine it
> > later.
> 
> FWIW the Linaro 14.11, 15.02 and 15.05 releases of GCC 4.9.3 seem to
> build rc7 without complaint. The only thing older that I have to hand
> is Ubuntu's GCC 4.8.4, which Kbuild chokes on entirely now.

Can you try kvmarm/next? David's PSCI relay is breaking badly here.

Thanks,

	M.

-- 
Without deviation from the norm, progress is not possible.



More information about the linux-arm-kernel mailing list