AtomicCounter::is_always_lock_free on armel

Rene Engelhard rene at debian.org
Thu Nov 7 16:56:15 UTC 2019


Hi,

On Thu, Nov 07, 2019 at 10:18:06AM +0100, Stephan Bergmann wrote:
> On 06/11/2019 18:39, Rene Engelhard wrote:
> > Given the introduced AtomicCounter is used later, too I tried the simplified
> > 
> > diff --git a/vcl/inc/opengl/zone.hxx b/vcl/inc/opengl/zone.hxx
> > index 3210186c3096..13ac3bf6793e 100644
> > --- a/vcl/inc/opengl/zone.hxx
> > +++ b/vcl/inc/opengl/zone.hxx
> > @@ -36,7 +36,9 @@ class VCL_DLLPUBLIC OpenGLZone {
> >       // increasing, so will eventually overflow, so the underlying type better be unsigned, which
> >       // sig_atomic_t is not guaranteed to be:
> >       using AtomicCounter = std::atomic<std::make_unsigned_t<std::sig_atomic_t>>;
> > +#if !defined ARM32 && !defined __ARM_PCS_VFP
> >       static_assert(AtomicCounter::is_always_lock_free);
> > +#endif
> >       /// how many times have we entered a GL zone
> >       static AtomicCounter gnEnterCount;
> > 
> > (atking that define from bridges...)
> > 
> > and that builds...
> > 
> > -> https://gerrit.libreoffice.org/#/c/82165/
> 
> I don't understand your "Given the introduced AtomicCounter is used
> later..." reasoning above, but commented at

Obviously I meant 

static AtomicCounter gnEnterCount;

which comes later (and wasn't there before)
and uses the using AtomicCounter = [...] definition, so
#ifdef'ing the whole block out would have been more invasive.

> <https://gerrit.libreoffice.org/#/c/82165/> "disable static_assert on
> AtomicCounter::is_always_lock_free on armel ..." now.

I don't care either way, if it trades some flakiness with some other
flakiness this is (as you would too based on the comment) somethinbg I'd
trade on for this "obsolete" architecture.

The patch is already in the current Debian upload ;-)

Regards,

Rene


More information about the LibreOffice mailing list