On Wed, May 27, 2020 at 11:12:23AM +0200, Laszlo Ersek wrote:
> On 05/26/20 16:37, Leif Lindholm wrote:
> > On Sat, May 23, 2020 at 00:09:52 +0200, Ard Biesheuvel wrote:
> >>>>> diff --git a/MdePkg/Include/AArch64/ProcessorBind.h 
> >>>>> b/MdePkg/Include/AArch64/ProcessorBind.h
> >>>>> index 896bf273ac7a..a3ca8f09e51c 100644
> >>>>> --- a/MdePkg/Include/AArch64/ProcessorBind.h
> >>>>> +++ b/MdePkg/Include/AArch64/ProcessorBind.h
> >>>>> @@ -24,6 +24,17 @@
> >>>>>   #pragma pack()
> >>>>>   #endif
> >>>>> +#if defined(__GNUC__) && !defined(__clang__)
> >>>>> +
> >>>>> +//
> >>>>> +// Disable GCC outline atomics
> >>>>> +// Link: https://bugzilla.tianocore.org/show_bug.cgi?id=2723
> >>>>> +//
> >>>>> +#if __GNUC__ > 10 || (__GNUC__ == 10 && __GNUC_MINOR__ >= 2)
> >>>>> +#pragma GCC target "no-outline-atomics"
> >>>>> +#endif
> >>>>> +#endif
> >>>>> +
> >>>>>   #if defined(_MSC_EXTENSIONS)
> >>>>>   //
> >>>>
> >>>> Reviewed-by: Laszlo Ersek <ler...@redhat.com>
> >>>>
> >>>> But I think it should be merged later, after GCC 10.2 is out.
> >>>>
> >>>> (Obviously I don't "insist" that we follow this approach, I'm just OK
> >>>> with it.)
> >>>
> >>> Oh and I think both this patch and the assembly language implementation
> >>> for the atomics should be delayed after the stable tag. gcc-10 is a new
> >>> toolchain; so even if we don't introduce a new toolchain tag such as
> >>> GCC10 for it, whatever we do in order to make it work, that's feature
> >>> enablement in my book.
> >>
> >> Works for me. By the time the next stable tag comes around, early adopters
> >> that are now on GCC 10.1 will likely have moved to 10.2 by that time, and 
> >> so
> >> we may not need the assembly patch at all.
> > 
> > I'm not ecstatic that we'll be releasing the first stable tag known to
> > break with current toolchains.
> 
> If this breakage affects "current toolchains", then why was
> <https://bugzilla.tianocore.org/show_bug.cgi?id=2723> only reported on
> 2020-May-19, four days into the soft feature freeze?
> 
> > This isn't just affecting random crazies pulling latest toolchains
> > down, but people using their distro defaults (native or cross).
> 
> ... "people using their distro defaults" to *not* build upstream edk2
> until 2020-May-19, apparently.
> 
openSUSE Tumbleweed is going to change the default gcc version to 10.
I actually wrote a workaround patch to add "-mno-outline-atomics" and
apply it conditionally in the rpm spec file. Anyway, we can live with
the workaround, so it's not intolerant to me if the intrinsics patch is
not included.

> > I don't recall if 10.1 ended up being default in F32, but it was
> > definitely included. In Arch, it does appear default.
> > 
> > Debian/Ubuntu are unaffected in their stable releases.
> > 
> > I agree it's a transitional issue, but I would really prefer to have
> > the intrinsics included in the release.
> 
> OK, let's delay the release then, by a few days. I agree the present
> patch may qualify as a bugfix, but the other patch with the assembly
> language intrinsics doesn't. If it's really that important to have in
> the upcoming stable tag, then it's worth delaying the tag for. I'm fine
> delaying the release for it; it wouldn't be without precedent.
> 
> Also, I think Ard's assembly language patch needs a Tested-by from Gary
> at the least (reporter of TianoCore#2723). Please reach out to him in
> that thread.
> 
> ... More precisely, please *ping* Gary for a Tested-by in that thread,
> because Ard CC'd him from the start, and even credited Gary in the
> commit message.
> 
I thought the patch would be abondoned so didn't try it. Will test it soon.

Cheers,

Gary Lin

> Thanks,
> Laszlo
> 
> 
> 
> 

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#60332): https://edk2.groups.io/g/devel/message/60332
Mute This Topic: https://groups.io/mt/74396053/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to