Re: ILP32 for ARM64: testing with glibc testsuite
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
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
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
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 Norovwrote: 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
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
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
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
> On Nov 9, 2016, at 1:56 PM, Yury Norovwrote: > > 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
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
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