Re: ILP32 for ARM64: testing with glibc testsuite

2016-12-06 Thread Yury Norov
On Mon, Dec 05, 2016 at 06:24:11PM +0800, Zhangjian (Bamvor) wrote:
> 
> 
> On 2016/12/5 18:07, Andreas Schwab wrote:
> >On Dez 05 2016, "Zhangjian (Bamvor)"  wrote:
> >
> >>Is there some progresses on it? We could collabrate to fix those issues.
> >
> >All the elf/nptl/rt fails should be fixed by the recent binutils fixes.
> Cool. How about the conform and other failures?

I think conform is only my local problem. I use pretty non-standard
environment for build and testing - cross-compilation + qemu. Steve
builds and runs tests natively, and he doesn't see that regressions.

Yury
--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: ILP32 for ARM64: testing with glibc testsuite

2016-12-05 Thread Steve Ellcey
On Mon, 2016-12-05 at 11:07 +0100, Andreas Schwab wrote:
> On Dez 05 2016, "Zhangjian (Bamvor)" 
> wrote:
> 
> > 
> > Is there some progresses on it? We could collabrate to fix those
> > issues.
> All the elf/nptl/rt fails should be fixed by the recent binutils
> fixes.
> 
> Andreas.

I am using binutils ToT and Yury's latest patch (https://sourceware.org
/ml/binutils/2016-12/msg00039.html) and I am still seeing some nptl and
rt failures in the glibc testsuite, specifically:

FAIL: nptl/tst-cancel26
FAIL: nptl/tst-cancel27
FAIL: nptl/tst-stack4
FAIL: rt/tst-mqueue1
FAIL: rt/tst-mqueue2
FAIL: rt/tst-mqueue4
FAIL: rt/tst-mqueue7

Steve Ellcey
sell...@caviumnetworks.com
--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: ILP32 for ARM64: testing with glibc testsuite

2016-12-05 Thread Zhangjian (Bamvor)



On 2016/12/5 18:07, Andreas Schwab wrote:

On Dez 05 2016, "Zhangjian (Bamvor)"  wrote:


Is there some progresses on it? We could collabrate to fix those issues.


All the elf/nptl/rt fails should be fixed by the recent binutils fixes.

Cool. How about the conform and other failures?

Regards

Bamvor


Andreas.



--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: ILP32 for ARM64: testing with glibc testsuite

2016-12-05 Thread Zhangjian (Bamvor)

Hi, Steve

On 2016/11/18 5:45, Steve Ellcey wrote:

On Wed, 2016-11-16 at 15:22 +0400, Maxim Kuvyrkov wrote:


On Nov 9, 2016, at 1:56 PM, Yury Norov 
wrote:



Below is the results of glibc testsuite run for aarch64/lp64


I have been running the glibc testsuite as well.  I have only run it on
an ILP32 enabled kernel.  Using that kernel, top-of-tree glibc, and the
ILP32 glibc patches I have no LP64 regressions.  There are 5 failures
in LP64 mode but I get them with vanilla top-of-tree glibc sources too.
They are:
nptl/eintr1 (I actually don't run this because it kills the 'make 
check')
debug/tst-backtrace5
debug/tst-backtrace6
nptl/tst-stack4
nptl/tst-thread_local1

In ILP32 mode I get 33 failures, they include the above failures (minus
nptl/tst-thread_local1) plus:

c++-types-check
conform/ISO11/inttypes.h/conform
conform/ISO11/stdint.h/conform
conform/ISO99/inttypes.h/conform
conform/ISO99/stdint.h/conform
conform/POSIX2008/inttypes.h/conform
conform/POSIX2008/stdint.h/conform
conform/XOPEN2K/inttypes.h/conform
conform/XOPEN2K/stdint.h/conform
conform/XOPEN2K8/inttypes.h/conform
conform/XOPEN2K8/stdint.h/conform
elf/tst-tls1
elf/tst-tls1-static
elf/tst-tls2
elf/tst-tls2-static
elf/tst-tls3
math/check-abi-libm
math/test-double
math/test-double-finite
math/test-float
math/test-float-finite
misc/tst-sync_file_range
nptl/tst-cancel26
nptl/tst-cancel27
nptl/tst-sem3
rt/tst-mqueue1
rt/tst-mqueue2
rt/tst-mqueue4
rt/tst-mqueue7
stdlib/tst-makecontext3

I am currently looking at these ILP32 regressions (starting with the
tls failures) to see if I can figure out what is happening with them.

Is there some progresses on it? We could collabrate to fix those issues.

Regards

Bamvor


Steve Ellcey
sell...@caviumnetworks.com



--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: ILP32 for ARM64: testing with glibc testsuite

2016-12-05 Thread Andreas Schwab
On Dez 05 2016, "Zhangjian (Bamvor)"  wrote:

> Is there some progresses on it? We could collabrate to fix those issues.

All the elf/nptl/rt fails should be fixed by the recent binutils fixes.

Andreas.

-- 
Andreas Schwab, SUSE Labs, sch...@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."
--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: ILP32 for ARM64: testing with glibc testsuite

2016-11-17 Thread Steve Ellcey
On Wed, 2016-11-16 at 15:22 +0400, Maxim Kuvyrkov wrote:
> > 
> > On Nov 9, 2016, at 1:56 PM, Yury Norov 
> > wrote:
> > 
> > > 
> > > Below is the results of glibc testsuite run for aarch64/lp64

I have been running the glibc testsuite as well.  I have only run it on
an ILP32 enabled kernel.  Using that kernel, top-of-tree glibc, and the
ILP32 glibc patches I have no LP64 regressions.  There are 5 failures
in LP64 mode but I get them with vanilla top-of-tree glibc sources too.
They are:
nptl/eintr1 (I actually don't run this because it kills the 'make 
check')
debug/tst-backtrace5
debug/tst-backtrace6
nptl/tst-stack4
nptl/tst-thread_local1

In ILP32 mode I get 33 failures, they include the above failures (minus
nptl/tst-thread_local1) plus:

c++-types-check
conform/ISO11/inttypes.h/conform
conform/ISO11/stdint.h/conform
conform/ISO99/inttypes.h/conform
conform/ISO99/stdint.h/conform
conform/POSIX2008/inttypes.h/conform
conform/POSIX2008/stdint.h/conform
conform/XOPEN2K/inttypes.h/conform
conform/XOPEN2K/stdint.h/conform
conform/XOPEN2K8/inttypes.h/conform
conform/XOPEN2K8/stdint.h/conform
elf/tst-tls1
elf/tst-tls1-static
elf/tst-tls2
elf/tst-tls2-static
elf/tst-tls3
math/check-abi-libm
math/test-double
math/test-double-finite
math/test-float
math/test-float-finite
misc/tst-sync_file_range
nptl/tst-cancel26
nptl/tst-cancel27
nptl/tst-sem3
rt/tst-mqueue1
rt/tst-mqueue2
rt/tst-mqueue4
rt/tst-mqueue7
stdlib/tst-makecontext3

I am currently looking at these ILP32 regressions (starting with the
tls failures) to see if I can figure out what is happening with them.

Steve Ellcey
sell...@caviumnetworks.com
--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: ILP32 for ARM64: testing with glibc testsuite

2016-11-17 Thread Catalin Marinas
On Wed, Nov 16, 2016 at 03:22:26PM +0400, Maxim Kuvyrkov wrote:
> Regarding ILP32 runtime, my opinion is that it is acceptable for ILP32
> to have extra failures compared to LP64, since these are not
> regressions, but, rather, failures of a new configuration.

I disagree with this. We definitely need to understand why they fail,
otherwise we run the risk of potential glibc or kernel implementation
bugs becoming ABI.

-- 
Catalin
--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: ILP32 for ARM64: testing with glibc testsuite

2016-11-16 Thread Maxim Kuvyrkov
> On Nov 9, 2016, at 1:56 PM, Yury Norov  wrote:
> 
> On Mon, Nov 07, 2016 at 01:53:59PM +0530, Yury Norov wrote:
>> Hi all,
>> 
>> [add libc-alpha mail list]
>> 
>> For libc-alpha: this is the part of LKML submission with latest
>> patches for aarch64/ilp32.
>> https://www.spinics.net/lists/arm-kernel/msg537846.html
>> 
>> Glibc that I use has also included consolidation patches from Adhemerval
>> Zanella and me that are still not in the glibc master. The full series is:
>> https://github.com/norov/glibc/tree/ilp32-2.24-dev2
>> 
>> Below is the results of glibc testsuite run for aarch64/lp64
>> in different configurations. Column names meaning:
>> kvgv: kernel is vanilla, glibc is vanilla;
>> kdgv: kernel has ilp32 patches applied, but ilp32 is disabled in config; 
>>  glibc is vanilla;
>> kegv: kernel has ilp32 patches applied and ilp32 is enabled, glibc is 
>> vanilla;
>> kege: kernel patches are applied and enabled, glibc patches are applied.
>> 
>> Only different lines are shown. Full results are in attached archive. 

Hi Yury,

The general requirement merging ILP32 glibc patches is that LP64 does not 
regress in any reasonable configuration.  This means that there should be 0 
regressions between kvgv and kvge -- i.e., glibc in LP64 mode with and without 
ILP32 patches does not regress on the vanilla kernel.  The kvge configuration 
is not in your testing matrix, and I suggest you make sure it has no 
regressions before fixing the more "advanced" configuration of kege.

Ideally, there should be no regressions between kvgv and kege configurations, 
but I don't consider this to a requirement for glibc acceptance of ILP32 
patches, since any regressions between kvge and kege configurations are likely 
to be on the kernel side.

Speculating on the kernel requirements for ILP32 kernel patchset, I think there 
should be 0 regressions between kvgv and kdgv configurations, where you have 
only 3 tests to investigate and fix.

[I do appreciate that there are progressions in your results as well, but the 
glibc policy is that they do not offset regressions.]

The above only concerns LP64 support in kernel and glibc.

Regarding ILP32 runtime, my opinion is that it is acceptable for ILP32 to have 
extra failures compared to LP64, since these are not regressions, but, rather, 
failures of a new configuration.  From a superficial glance is seems that ILP32 
linknamespace support requires attention, as well as stack unwinding (judging 
from NPTL failures).


--
Maxim Kuvyrkov
www.linaro.org



> 
> The same, plus ILP32 regressions:
> 
> Test  kvgvkdgvkegvkegeilp32
> conform/ISO/stdio.h/linknamespace PASSPASSPASSFAILFAIL
> conform/ISO11/stdio.h/linknamespace   PASSPASSPASSFAILFAIL
> conform/ISO99/stdio.h/linknamespace   PASSPASSPASSFAILFAIL
> conform/POSIX/stdio.h/linknamespace   PASSPASSPASSFAILFAIL
> conform/POSIX/sys/stat.h/linknamespacePASSPASSPASSFAIL
> FAIL
> conform/UNIX98/stdio.h/linknamespace  PASSPASSPASSFAILFAIL
> conform/XOPEN2K/stdio.h/linknamespace PASSPASSPASSFAILFAIL
> conform/XPG3/stdio.h/linknamespacePASSPASSPASSFAILFAIL
> conform/XPG4/stdio.h/linknamespacePASSPASSPASSFAILFAIL
> csu/tst-atomicPASSPASSPASSFAIL
> PASS
> elf/check-localpltPASSPASSPASSFAILFAIL
> iconvdata/mtrace-tst-loading  PASSFAILPASSPASSFAIL
> iconvdata/tst-loading PASSFAILPASSPASSPASS
> io/check-installed-headers-c  PASSPASSPASSFAILFAIL
> io/check-installed-headers-cxxPASSPASSPASSFAIL
> FAIL
> malloc/tst-malloc-backtrace   FAILPASSPASSPASSPASS
> malloc/tst-malloc-thread-exit FAILPASSPASSPASSPASS
> malloc/tst-malloc-usable  FAILPASSPASSPASSPASS
> malloc/tst-mallocfork FAILPASSPASSPASSPASS
> malloc/tst-mallocstateFAILPASSPASSPASS
> PASS
> malloc/tst-malloptFAILPASSPASSPASSPASS
> malloc/tst-mcheck FAILPASSPASSPASSPASS
> malloc/tst-memalign   FAILPASSPASSPASSPASS
> malloc/tst-obstackFAILPASSPASSPASSPASS
> malloc/tst-posix_memalign FAILPASSPASSPASSPASS
> malloc/tst-pvallocFAILPASSPASSPASSPASS
> malloc/tst-reallocFAILPASSPASSPASSPASS
> malloc/tst-scratch_buffer FAILPASSPASSPASSPASS
> malloc/tst-trim1  FAILPASSPASSPASSPASS
> nptl/tst-eintr4

Re: ILP32 for ARM64: testing with glibc testsuite

2016-11-09 Thread Yury Norov
On Mon, Nov 07, 2016 at 01:53:59PM +0530, Yury Norov wrote:
> Hi all,
> 
> [add libc-alpha mail list]
> 
> For libc-alpha: this is the part of LKML submission with latest
> patches for aarch64/ilp32.
> https://www.spinics.net/lists/arm-kernel/msg537846.html
> 
> Glibc that I use has also included consolidation patches from Adhemerval
> Zanella and me that are still not in the glibc master. The full series is:
> https://github.com/norov/glibc/tree/ilp32-2.24-dev2
> 
> Below is the results of glibc testsuite run for aarch64/lp64
> in different configurations. Column names meaning:
> kvgv: kernel is vanilla, glibc is vanilla;
> kdgv: kernel has ilp32 patches applied, but ilp32 is disabled in config; 
>   glibc is vanilla;
> kegv: kernel has ilp32 patches applied and ilp32 is enabled, glibc is vanilla;
> kege: kernel patches are applied and enabled, glibc patches are applied.
> 
> Only different lines are shown. Full results are in attached archive. 
 
The same, plus ILP32 regressions:

Testkvgvkdgvkegvkegeilp32
conform/ISO/stdio.h/linknamespace   PASSPASSPASSFAILFAIL
conform/ISO11/stdio.h/linknamespace PASSPASSPASSFAILFAIL
conform/ISO99/stdio.h/linknamespace PASSPASSPASSFAILFAIL
conform/POSIX/stdio.h/linknamespace PASSPASSPASSFAILFAIL
conform/POSIX/sys/stat.h/linknamespace  PASSPASSPASSFAILFAIL
conform/UNIX98/stdio.h/linknamespacePASSPASSPASSFAILFAIL
conform/XOPEN2K/stdio.h/linknamespace   PASSPASSPASSFAILFAIL
conform/XPG3/stdio.h/linknamespace  PASSPASSPASSFAILFAIL
conform/XPG4/stdio.h/linknamespace  PASSPASSPASSFAILFAIL
csu/tst-atomic  PASSPASSPASSFAILPASS
elf/check-localplt  PASSPASSPASSFAILFAIL
iconvdata/mtrace-tst-loadingPASSFAILPASSPASSFAIL
iconvdata/tst-loading   PASSFAILPASSPASSPASS
io/check-installed-headers-cPASSPASSPASSFAILFAIL
io/check-installed-headers-cxx  PASSPASSPASSFAILFAIL
malloc/tst-malloc-backtrace FAILPASSPASSPASSPASS
malloc/tst-malloc-thread-exit   FAILPASSPASSPASSPASS
malloc/tst-malloc-usableFAILPASSPASSPASSPASS
malloc/tst-mallocfork   FAILPASSPASSPASSPASS
malloc/tst-mallocstate  FAILPASSPASSPASSPASS
malloc/tst-mallopt  FAILPASSPASSPASSPASS
malloc/tst-mcheck   FAILPASSPASSPASSPASS
malloc/tst-memalign FAILPASSPASSPASSPASS
malloc/tst-obstack  FAILPASSPASSPASSPASS
malloc/tst-posix_memalign   FAILPASSPASSPASSPASS
malloc/tst-pvalloc  FAILPASSPASSPASSPASS
malloc/tst-realloc  FAILPASSPASSPASSPASS
malloc/tst-scratch_buffer   FAILPASSPASSPASSPASS
malloc/tst-trim1FAILPASSPASSPASSPASS
nptl/tst-eintr4 PASSPASSPASSNA  NA
posix/tst-regex2PASSFAILFAILFAILFAIL
posix/tst-getaddrinfo4  PASSPASSFAILFAILPASS
posix/tst-getaddrinfo5  PASSPASSFAILFAILPASS
sysvipc/test-sysvmsgNA  NA  NA  FAILPASS
sysvipc/test-sysvsemNA  NA  NA  FAILPASS
sysvipc/test-sysvshmNA  NA  NA  FAILPASS

c++-types-check PASSPASSPASSPASSFAIL
debug/tst-backtrace4PASSPASSPASSPASSFAIL
elf/check-abi-libc  PASSPASSPASSPASSFAIL
elf/tst-tls1PASSPASSPASSPASSFAIL
elf/tst-tls1-static PASSPASSPASSPASSFAIL
elf/tst-tls2PASSPASSPASSPASSFAIL
elf/tst-tls2-static PASSPASSPASSPASSFAIL
elf/tst-tls3PASSPASSPASSPASSFAIL
math/check-abi-libm PASSPASSPASSPASSFAIL
misc/tst-writev PASSPASSPASSPASSNA  
nptl/tst-cancel-self-canceltype PASSPASSPASSPASSFAIL
nptl/tst-cancel1PASSPASSPASSPASSFAIL
nptl/tst-cancel10   PASSPASSPASSPASSFAIL
nptl/tst-cancel11   PASSPASSPASSPASSFAIL
nptl/tst-cancel13   PASSPASSPASSPASS  

Re: ILP32 for ARM64: testing with glibc testsuite

2016-11-07 Thread Yury Norov
Hi all,

[add libc-alpha mail list]

For libc-alpha: this is the part of LKML submission with latest
patches for aarch64/ilp32.
https://www.spinics.net/lists/arm-kernel/msg537846.html

Glibc that I use has also included consolidation patches from Adhemerval
Zanella and me that are still not in the glibc master. The full series is:
https://github.com/norov/glibc/tree/ilp32-2.24-dev2

Below is the results of glibc testsuite run for aarch64/lp64
in different configurations. Column names meaning:
kvgv: kernel is vanilla, glibc is vanilla;
kdgv: kernel has ilp32 patches applied, but ilp32 is disabled in config; 
  glibc is vanilla;
kegv: kernel has ilp32 patches applied and ilp32 is enabled, glibc is vanilla;
kege: kernel patches are applied and enabled, glibc patches are applied.

Only different lines are shown. Full results are in attached archive. 

I didn't analyze regressions deep yet, so any ideas/suggestions are appreciated.

Yury.

Testkvgvkdgvkegvkege
conform/ISO/stdio.h/linknamespace   PASSPASSPASSFAIL
conform/ISO11/stdio.h/linknamespace PASSPASSPASSFAIL
conform/ISO99/stdio.h/linknamespace PASSPASSPASSFAIL
conform/POSIX/stdio.h/linknamespace PASSPASSPASSFAIL
conform/POSIX/sys/stat.h/linknamespace  PASSPASSPASSFAIL
conform/UNIX98/stdio.h/linknamespacePASSPASSPASSFAIL
conform/XOPEN2K/stdio.h/linknamespace   PASSPASSPASSFAIL
conform/XPG3/stdio.h/linknamespace  PASSPASSPASSFAIL
conform/XPG4/stdio.h/linknamespace  PASSPASSPASSFAIL
csu/tst-atomic  PASSPASSPASSFAIL
elf/check-localplt  PASSPASSPASSFAIL
iconvdata/mtrace-tst-loadingPASSFAILPASSPASS
iconvdata/tst-loading   PASSFAILPASSPASS
io/check-installed-headers-cPASSPASSPASSFAIL
io/check-installed-headers-cxx  PASSPASSPASSFAIL
malloc/tst-malloc-backtrace FAILPASSPASSPASS
malloc/tst-malloc-thread-exit   FAILPASSPASSPASS
malloc/tst-malloc-usableFAILPASSPASSPASS
malloc/tst-mallocfork   FAILPASSPASSPASS
malloc/tst-mallocstate  FAILPASSPASSPASS
malloc/tst-mallopt  FAILPASSPASSPASS
malloc/tst-mcheck   FAILPASSPASSPASS
malloc/tst-memalign FAILPASSPASSPASS
malloc/tst-obstack  FAILPASSPASSPASS
malloc/tst-posix_memalign   FAILPASSPASSPASS
malloc/tst-pvalloc  FAILPASSPASSPASS
malloc/tst-realloc  FAILPASSPASSPASS
malloc/tst-scratch_buffer   FAILPASSPASSPASS
malloc/tst-trim1FAILPASSPASSPASS
nptl/tst-eintr4 PASSPASSPASSNA
posix/tst-regex2PASSFAILFAILFAIL
posix/tst-getaddrinfo4  PASSPASSFAILFAIL
posix/tst-getaddrinfo5  PASSPASSFAILFAIL
sysvipc/test-sysvmsgNA  NA  NA  FAIL
sysvipc/test-sysvsemNA  NA  NA  FAIL
sysvipc/test-sysvshmNA  NA  NA  FAIL


lp64.sum.tar.gz
Description: application/gzip