ARC testsuite regressions (was Re: [PATCH v7.2 07/13] ARC: Linux Syscall Interface)

Florian Weimer fweimer@redhat.com
Fri Jul 10 17:02:12 GMT 2020


* Vineet Gupta via Libc-alpha:

> From scratch meaning glibc alone or the whole toolchain. I used
> buildroot and glibc-dirclean to nuke entire glibc but gcc was not
> rebuilt. I can try that too.

No, rebuilding glibc from scratch should be fine.

> Some of the failed tests have prints about static TLS block ... so I'm
> wondering if they could be related ?
>
> | $ cat dlfcn/tststatic.out
> | .../build/libc.so.6: cannot allocate memory in static TLS block

This suggests to me that the static initialization code does not produce
sufficient alignment for the TCB, given the 32-byte alignment required
by the rseq area.

You could try and see what happens if you change
sysdeps/arc/nptl/pthreaddef.h to this:

/* Alignment requirement for TCB.  */
#define TCB_ALIGNMENT           32

If that helps, we have more of a generic issue here. 8-/

The problem is that the TLS memory allocator does not add alignment
padding on its own.  This could meet additional alignment requirements
if there is just one thread yet when higher-aligned TLS is loaded.

> Also while we figure this out, does this prevent ARC port from being
> committed.

I don't think so.  We just have to make sure that it does not block the
release, i.e. resolve this during the next week or two.  Do you think
that would that be possible?

Thanks,
Florian



More information about the Libc-alpha mailing list