refactoring testsuite whitelist

This commit is contained in:
liqingqing_1229 2022-08-15 10:17:38 +08:00 committed by liqingqing
parent 187e9a9dca
commit 14beed93c9
3 changed files with 37 additions and 128 deletions

View File

@ -65,7 +65,7 @@
############################################################################## ##############################################################################
Name: glibc Name: glibc
Version: 2.36 Version: 2.36
Release: 2 Release: 3
Summary: The GNU libc libraries Summary: The GNU libc libraries
License: %{all_license} License: %{all_license}
URL: http://www.gnu.org/software/glibc/ URL: http://www.gnu.org/software/glibc/
@ -80,7 +80,7 @@ Source6: LicenseList
Source7: replace_same_file_to_hard_link.py Source7: replace_same_file_to_hard_link.py
%if %{with testsuite} %if %{with testsuite}
Source8: testsuite_whitelist.%{_target_cpu} Source8: testsuite_whitelist
%endif %endif
Patch0: glibc-1070416.patch Patch0: glibc-1070416.patch
@ -908,14 +908,11 @@ set -e
%if %{with testsuite} %if %{with testsuite}
omit_testsuite() { omit_testsuite() {
whitelist=$1
sed -i '/^#/d' $whitelist
sed -i '/^[\s]*$/d' $whitelist
while read testsuite; do while read testsuite; do
testsuite_escape=$(echo "$testsuite" | \ testsuite_escape=$(echo "$testsuite" | \
sed 's/\([.+?^$\/\\|()\[]\|\]\)/\\\0/g') sed 's/\([.+?^$\/\\|()\[]\|\]\)/\\\0/g')
sed -i "/${testsuite_escape}/d" rpmbuild.tests.sum.not-passing sed -i "/${testsuite_escape}/d" rpmbuild.tests.sum.not-passing
done < "$whitelist" done
} }
# Increase timeouts # Increase timeouts
@ -938,9 +935,10 @@ fi
grep -v ^PASS: tests.sum | grep -v ^UNSUPPORTED > rpmbuild.tests.sum.not-passing || true grep -v ^PASS: tests.sum | grep -v ^UNSUPPORTED > rpmbuild.tests.sum.not-passing || true
# Delete the testsuite from the whitelist # Delete the testsuite from the whitelist
#cp %{SOURCE8} testsuite_whitelist cat %{SOURCE8} | \
#omit_testsuite testsuite_whitelist grep -v "^$\|^#" | \
#rm -rf testsuite_whitelist awk -F':' '{if($2 == "" || $2 ~ /'%{_target_cpu}'/ ) {print $1}}' |\
omit_testsuite
set +x set +x
if test -s rpmbuild.tests.sum.not-passing ; then if test -s rpmbuild.tests.sum.not-passing ; then
@ -957,7 +955,9 @@ if test -s rpmbuild.tests.sum.not-passing ; then
fi fi
done done
done <rpmbuild.tests.sum.not-passing done <rpmbuild.tests.sum.not-passing
%if 0%{?glibc_abort_after_test_fail}
#exit 1 #exit 1
%endif
fi fi
# Unconditonally dump differences in the system call list. # Unconditonally dump differences in the system call list.
@ -1258,6 +1258,9 @@ fi
%endif %endif
%changelog %changelog
* Mon Aug 15 2022 Qingqing Li <liqingqing3@huawei.com> - 2.36-3
- refactoring testsuite whitelist
* Wed Aug 10 2022 Qingqing Li <liqingqing3@huawei.com> - 2.36-2 * Wed Aug 10 2022 Qingqing Li <liqingqing3@huawei.com> - 2.36-2
- aarch64: strcmp delete align for better unixbench performance - aarch64: strcmp delete align for better unixbench performance

View File

@ -1,3 +1,9 @@
# USAGE:
# If it's a generic error:
# testsuite
# If the test case fails on part of the architecture:
# testsuite:arch1,arch2
# These test cases failed due to gcc_secure # These test cases failed due to gcc_secure
conform/ISO/setjmp.h/conform conform/ISO/setjmp.h/conform
conform/ISO/stdlib.h/conform conform/ISO/stdlib.h/conform
@ -57,7 +63,7 @@ elf/circleload1
elf/constload1 elf/constload1
elf/dblload elf/dblload
elf/dblunload elf/dblunload
elf/ifuncmain6pie elf/ifuncmain6pie:x86_64
elf/lateglobal elf/lateglobal
elf/reldep6 elf/reldep6
elf/resolvfail elf/resolvfail
@ -83,30 +89,41 @@ conform/XOPEN2K8/ndbm.h/linknamespace
conform/XPG42/ndbm.h/conform conform/XPG42/ndbm.h/conform
conform/XPG42/ndbm.h/linknamespace conform/XPG42/ndbm.h/linknamespace
# Test whether the date/time is correct under different # Test whether the date/time is correct under different
# language libraries, use case problems, and see that # language libraries, use case problems, and see that
# the compiled language library itself has no errors # the compiled language library itself has no errors
# https://sourceware.org/bugzilla/show_bug.cgi?id=23164 # https://sourceware.org/bugzilla/show_bug.cgi?id=23164
localedata/tst-langinfo-newlocale-static localedata/tst-langinfo-newlocale-static
# The use case itself passed but because # The use case itself passed but because
# test-xfail-tst-protected1a/test-xfail-tst-protected1b was added # test-xfail-tst-protected1a/test-xfail-tst-protected1b was added
elf/tst-protected1a elf/tst-protected1a
elf/tst-protected1b elf/tst-protected1b
# the test case is due to check whether a macro is defined # the test case is due to check whether a macro is defined
# in the header files. As GLIBC evolves, the position of the # in the header files. As GLIBC evolves, the position of the
# macro changes, causing the use case to fail # macro changes, causing the use case to fail
posix/annexc posix/annexc
# Check whether sys/mman.h is consistent with linux/mman.h. # Check whether sys/mman.h is consistent with linux/mman.h.
# kernel has a self-developed macro that does not require glibc adaptation # kernel has a self-developed macro that does not require glibc adaptation
# https://gitee.com/src-openeuler/kernel/issues/I4BZ9T?from=project-issue # https://gitee.com/src-openeuler/kernel/issues/I4BZ9T?from=project-issue
misc/tst-mman-consts misc/tst-mman-consts
# It need to build GliBC on a platform that supports CET # It need to build GliBC on a platform that supports CET
elf/check-cet elf/check-cet:x86_64
# Add the tst-nss-files-hosts-long.root/etc/hosts of glibc to # Add the tst-nss-files-hosts-long.root/etc/hosts of glibc to
# the /etc/hosts directory of the system, and then run sucess # the /etc/hosts directory of the system, and then run sucess
nss/tst-nss-files-hosts-long nss/tst-nss-files-hosts-long
# The test case fails due to OBS machine restrictions which can be passed locally.
elf/tst-debug1:aarch64
# This test case often fails in CI which is the high-pressure environment.
# No better solution is available. This test case is shielded.
rt/tst-cpuclock2
# These testcase fails because rseq is disabled by default
misc/tst-rseq-nptl
misc/tst-rseq

View File

@ -1,111 +0,0 @@
# These test cases failed due to gcc_secure
conform/ISO/setjmp.h/conform
conform/ISO/stdlib.h/conform
conform/ISO/stdlib.h/linknamespace
conform/ISO/string.h/conform
conform/ISO11/setjmp.h/conform
conform/ISO11/stdio.h/conform
conform/ISO11/stdlib.h/conform
conform/ISO11/stdlib.h/linknamespace
conform/ISO11/string.h/conform
conform/ISO11/wchar.h/conform
conform/ISO99/setjmp.h/conform
conform/ISO99/stdio.h/conform
conform/ISO99/stdlib.h/conform
conform/ISO99/stdlib.h/linknamespace
conform/ISO99/string.h/conform
conform/ISO99/wchar.h/conform
conform/POSIX/stdlib.h/conform
conform/POSIX/stdlib.h/linknamespace
conform/POSIX/string.h/conform
conform/POSIX2008/fcntl.h/conform
conform/POSIX2008/mqueue.h/conform
conform/POSIX2008/stdio.h/conform
conform/POSIX2008/stdlib.h/conform
conform/POSIX2008/stdlib.h/linknamespace
conform/POSIX2008/wchar.h/conform
conform/UNIX98/stdlib.h/conform
conform/UNIX98/string.h/conform
conform/UNIX98/unistd.h/conform
conform/UNIX98/unistd.h/linknamespace
conform/UNIX98/wchar.h/conform
conform/XOPEN2K/fcntl.h/conform
conform/XOPEN2K/mqueue.h/conform
conform/XOPEN2K/stdio.h/conform
conform/XOPEN2K/stdlib.h/conform
conform/XOPEN2K/string.h/conform
conform/XOPEN2K/syslog.h/conform
conform/XOPEN2K/unistd.h/conform
conform/XOPEN2K/unistd.h/linknamespace
conform/XOPEN2K/wchar.h/conform
conform/XOPEN2K8/fcntl.h/conform
conform/XOPEN2K8/mqueue.h/conform
conform/XOPEN2K8/stdio.h/conform
conform/XOPEN2K8/stdlib.h/conform
conform/XOPEN2K8/syslog.h/conform
conform/XOPEN2K8/unistd.h/conform
conform/XOPEN2K8/unistd.h/linknamespace
conform/XOPEN2K8/wchar.h/conform
conform/XPG4/stdlib.h/conform
conform/XPG4/stdlib.h/linknamespace
conform/XPG4/string.h/conform
conform/XPG4/unistd.h/conform
conform/XPG42/stdlib.h/conform
conform/XPG42/string.h/conform
conform/XPG42/unistd.h/conform
elf/circleload1
elf/constload1
elf/dblload
elf/dblunload
elf/lateglobal
elf/reldep6
elf/resolvfail
elf/tst-global1
elf/tst-tls20
nptl/tst-execstack
# GCC no longer implements <varargs.h>
conform/UNIX98/varargs.h/conform
conform/UNIX98/varargs.h/linknamespace
conform/XPG4/varargs.h/conform
conform/XPG4/varargs.h/linknamespace
conform/XPG42/varargs.h/conform
conform/XPG42/varargs.h/linknamespace
# These cases depend on gdbm-devel
conform/UNIX98/ndbm.h/conform
conform/UNIX98/ndbm.h/linknamespace
conform/XOPEN2K/ndbm.h/conform
conform/XOPEN2K/ndbm.h/linknamespace
conform/XOPEN2K8/ndbm.h/conform
conform/XOPEN2K8/ndbm.h/linknamespace
conform/XPG42/ndbm.h/conform
conform/XPG42/ndbm.h/linknamespace
# Test whether the date/time is correct under different
# language libraries, use case problems, and see that
# the compiled language library itself has no errors
# https://sourceware.org/bugzilla/show_bug.cgi?id=23164
localedata/tst-langinfo-newlocale-static
# The use case itself passed but because
# test-xfail-tst-protected1a/test-xfail-tst-protected1b was added
elf/tst-protected1a
elf/tst-protected1b
# the test case is due to check whether a macro is defined
# in the header files. As GLIBC evolves, the position of the
# macro changes, causing the use case to fail
posix/annexc
# Check whether sys/mman.h is consistent with linux/mman.h.
# kernel has a self-developed macro that does not require glibc adaptation
# https://gitee.com/src-openeuler/kernel/issues/I4BZ9T?from=project-issue
misc/tst-mman-consts
# Add the tst-nss-files-hosts-long.root/etc/hosts of glibc to
# the /etc/hosts directory of the system, and then run sucess
nss/tst-nss-files-hosts-long
# The test case fails due to OBS machine restrictions which can be passed locally.
elf/tst-debug1