Compare commits

...

222 Commits

Author SHA1 Message Date
Sergey Kolosov 8944a27aaf CI Tests: removes Regression/bz2141685-glibc-Restore-IPC-64-support-in-sysvipc-ctl and Sanity/bz1915330-glibc-Implement-find-debuginfo-sh-changes-to tests 2023-04-04 23:07:18 +02:00
Sergey Kolosov ffce034896 CI Tests: changes recommend to require for several tests 2023-04-04 15:55:00 +02:00
Sergey Kolosov af3beceadc CI Tests: removes unnecessary library dependencies 2023-04-04 13:25:22 +02:00
Sergey Kolosov 642430bf83 CI Tests: test coverage improvement 2023-04-04 01:55:48 +02:00
Arjun Shankar 6fd5c5a43b Auto-sync with upstream branch master
Apply glibc-disable-werror-tst-realloc.patch to disable spurious GCC
warning, and auto-sync with upstream branch master.

Upstream commit: 885d3cda907d0dee54b13cbbf61b040c9951d5a2

- Allow building with --disable-nscd again
- system: Add "--" after "-c" for sh (BZ #28519)
- posix: Fix some crashes in wordexp [BZ #18096]
- LoongArch: ldconfig: Add comments for using EF_LARCH_OBJABI_V1
- elf: Take into account ${sysconfdir} in elf/tst-ldconfig-p.sh
- Fix tst-glibc-hwcaps-prepend-cache with custom configure prefix value
- Fix tst-ldconfig-ld_so_conf-update with custom configure prefix value
- support: introduce support_sysconfdir_prefix
- Remove set-hooks.h from generic includes
- Remove --with-default-link configure option
- libio: Remove the usage of __libc_IO_vtables
- libio: Do not autogenerate stdio_lim.h
- Move libc_freeres_ptrs and libc_subfreeres to hidden/weak functions
- benchtests: Move libmvec benchtest inputs to benchtests directory
- stdio-common: tests: don't double-define _FORTIFY_SOURCE
- LoongArch: ldconfig: Ignore EF_LARCH_OBJABI_V1 in shared objects
- _dl_map_object_from_fd: Remove unnecessary debugger notification in error path
- hppa: Drop 16-byte pthread lock alignment
- Minor: don't call _dl_debug_update (which can have side effects) inside assert
- x86: Don't check PREFETCHWT1 in tst-cpu-features-cpuinfo.c
- Declare wcstofN, wcstofNx for C2x
- Update printf %b/%B C2x support
- ARC: run child from the separate start block in __clone
- ARC: Add the clone3 wrapper
2023-03-31 14:23:15 +02:00
Martin Cermak 472dcebe5e CI Testing: Ensure smooth installation od the build under test
Make sure the build under test installs smoothly including the
multilib subpackages needed for the CI tests.  Use a setup task
prepare.sh to accomplish that.

The "standard" CI installer installs whole the x86_64 build
minus glibc-headers-s390, which is a noarch package having
file conflicts with glibc-headers-x86 (which is another
noarch subrpm).  The prepare.sh then installs needed i686
packages.
2023-03-23 20:33:30 +01:00
Florian Weimer 3a98e957b0 Auto-sync with upstream branch master
Upstream commit: 90233f113cc941ef88ce03b7f73221a964dcaca8

- LoongArch: Add get_rounding_mode.
- LoongArch: Add support for ldconfig.
- linux: fix ntp_gettime abi break (BZ# 30156)
- elf: Add missing dependency between resolvfail and testobj1.so
- elf: Add -z lazy to some more tests
- Benchtests: Remove simple_str(r)chr
- Benchtests: Remove simple_str(n)casecmp
- Benchtests: Remove simple_memcmp
- Benchtests: Remove simple_strcspn/strpbrk/strsep
- Benchtests: Remove memchr_strnlen
- Benchtests: Remove simple_mem(r)chr
- Benchtests: Remove simple_strcpy_chk
- Benchtests: Remove simple_str(n)cmp
- malloc: Fix transposed arguments in sysmalloc_mmap_fallback call
- rt: fix shm_open not set ENAMETOOLONG when name exceeds {_POSIX_PATH_MAX}
- posix: Ensure the initial signal disposition for tst-spawn7
- hurd: fix build of tst-system.c
- x86: Fix bug about glibc.cpu.hwcaps.
- posix: Fix system blocks SIGCHLD erroneously [BZ #30163]
- gshadow: Matching sgetsgent, sgetsgent_r ERANGE handling (bug 30151)
2023-03-13 15:56:12 +01:00
DJ Delorie c58b5b31be Auto-sync with upstream branch master
Upstream commit: 8390014c2320f94ffd8a8f6088c10c1f64567954

- Update kernel version to 6.2 in header constant tests
- arm: Remove __builtin_arm_uqsub8 usage on string-fza.h
- alpha: Remove strncmp optimization
- powerpc: Remove powerpc64 strncmp variants
- powerpc: Remove strncmp variants
- C2x scanf binary constant handling
- Fix stringop-overflow warning in test-strncat.
- nis: Fix stringop-truncation warning with -O3 in nis_local_host.
- support: use 64-bit time_t (bug 30111)
- LoongArch: Update libm-test-ulps.
- LoongArch: Further refine the condition to enable static PIE
- hurd: Fix some broken indentation
- hurd: Remove the ecx kludge
2023-03-06 17:24:09 -05:00
Carlos O'Donell ae2a2c23ba Auto-sync with upstream branch master
Upstream commit: 59a6d5e9477695c41d6feef7ef8636f8f744f3c5

- Add AArch64 HWCAP2 values from Linux 6.2 to bits/hwcap.h
- crypt: Remove invalid end of page test badsalttest
- S390: Fix _FPU_SETCW/GETCW when compiling with Clang [BZ #30130]
- s390x: Regenerate ULPs.
- Add Arm HWCAP values from Linux 6.2 to bits/hwcap.h
- htl: Add pthreadtypes-arch.h for x86_64
- hurd: Implement TLS for x86_64
- htl: Make pthread_mutex_t pointer-aligned
- x86_64: Update libm test ulps
- localedata: de_DE should not use Fräulein
- LoongArch: Add math-barriers.h
- cdefs.h: fix "__clang_major" typo
- hppa: Drop old parisc-specific MADV_* constants
- hurd: Generalize init-first.c to support x86_64
- hurd: Simplify init-first.c further
- hurd: Mark some audit tests as unsupported
- htl: Mark select loop test as unsupported
- hurd: Mark RLIMIT_AS tests as unsupported
- aarch64: update libm test ulps
- powerpc:Regenerate ulps for hypot
- Update syscall lists for Linux 6.2
- tunables.texi: Change \code{1} to @code{1}
- x86-64: Add glibc.cpu.prefer_map_32bit_exec [BZ #28656]
- gmon: fix memory corruption issues [BZ# 30101]
- gmon: improve mcount overflow handling [BZ# 27576]
- gmon: Fix allocated buffer overflow (bug 29444)
- malloc: remove redundant check of unsorted bin corruption
- Use Linux 6.2 in build-many-glibcs.py
- Ignore MAP_VARIABLE in tst-mman-consts.py
- AArch64: Fix HP_TIMING_DIFF computation [BZ# 29329]
2023-03-01 17:24:10 -05:00
Arjun Shankar d9759bc576 Auto-sync with upstream branch master
Upstream commit: 8b014a1b1f7aee1e3348db108aeea396359d481e

- Drop glibc-printf-grouping-swbz30068.patch; fix applied upstream

- s390: Fix build for -march=z13
- arm: Support gcc older than 10 for find_zero_all
- Linux: Remove generic Implies
- Linux: Remove unused generic Makefile
- Linux: Assume and consolidate getpeername wire-up syscall
- Linux: Assume and consolidate getsockname wire-up syscall
- Linux: Move wordsize-32 Version to default
- __glob64_time64: Fix typo for stub_warning call (BZ #30146)
- elf: Restore ldconfig libc6 implicit soname logic [BZ #30125]
- stdlib: Undo post review change to 16adc58e73f3 [BZ #27749]
- Define PC, SP and SYSRETURN for hurd x86_64
- mach: Use PAGE_SIZE
- hurd: Simplify init-first.c a bit
- hurd: Make timer_t pointer-sized
- hurd: Fix xattr function return type
- hurd: Use proper integer types
- hurd: Move thread state manipulation into _hurd_tls_new ()
- glob64_time64: Fix typo for stub_warning call (BZ #30146)
- Use uintptr_t instead of performing pointer subtraction with a null pointer
- ARC:fpu: add extra capability check before use of sqrt and fma builtins
- ARC: align child stack in clone
- string: Remove string_private.h
- iconv: Remove _STRING_ARCH_unaligned usage
- iconv: Remove _STRING_ARCH_unaligned usage for get/set macros
- resolv: Remove _STRING_ARCH_unaligned usage
- nscd: Remove _STRING_ARCH_unaligned usage
- stdlib: Simplify getenv
- crypto: Remove _STRING_ARCH_unaligned usage
- Fix ifunc-impl-list.c build for s390
- [hurd] Fix i686 build breakage caused by 4fedebc91108
- C2x strtol binary constant handling
- [hurd] Add MTU_DISCOVER values
- hurd: Fix unwinding over INTR_MSG_TRAP in shared too
- mach: undef ENTRY2
- hurd: i386 TLS tweaks
- stdio: Do not ignore posix_spawn error on popen (BZ #29016)
- update auto-libm-test-out-hypot
- added pair of inputs for hypotf in binary32
- Naming the parameter of dummy_sa_handler
- hurd: Fix tcflag_t and speed_t types on 64-bit
- htl: Remove ./sysdeps/htl/bits/types/struct___pthread_mutex.h
- hurd, htl: Add some x86_64-specific code
- Fix typos in comments
- htl: Generalize i386 pt-machdep.h to x86
- hurd: Set up the basic tree for x86_64-gnu
- mach: Look for mach_i386.defs on x86_64 too
- htl: Fix semaphore reference
- hurd: Fix xattr error value
- mach, hurd: Cast through uintptr_t
- hurd: Use mach_msg_type_number_t where appropriate
- hurd: Refactor readlinkat()
- Use __builtin_FILE instead of __FILE__ in assert in C++.
- hurd: Fix unwinding over INTR_MSG_TRAP
- powerpc64: Add the clone3 wrapper
- string: Disable stack protector in early static initialization
- string: Add libc_hidden_proto for memrchr
- string: Add libc_hidden_proto for strchrnul
- elf: Smoke-test ldconfig -p against system /etc/ld.so.cache
- NEWS: Document CVE-2023-25139.
- Use 64-bit time_t interfaces in strftime and strptime (bug 30053)
- C-SKY: Strip hard float abi from hard float feature.
- S390: Influence hwcaps/stfle via GLIBC_TUNABLES.
- string: Hook up the default implementation on test-strrchr
- string: Hook up the default implementation on test-memrchr
- string: Hook up the default implementation on test-memchr
- string: Hook up the default implementation on test-strcpy
- string: Hook up the default implementation on test-stpcpy
- string: Hook up the default implementation on test-strncmp
- string: Hook up the default implementation on test-strcmp
- string: Hook up the default implementation on test-strchr
- string: Hook up the default implementation on test-strnlen
- string: Hook up the default implementation on test-strlen
- riscv: Add string-fza.h and string-fzi.h
- sh: Add string-fzb.h
- powerpc: Add string-fza.h
- arm: Add string-fza.h
- alpha: Add string-fza, string-fzb.h, string-fzi.h, and string-shift.h
- hppa: Add string-fza.h, string-fzc.h, and string-fzi.h
- hppa: Add memcopy.h
- string: Improve generic strrchr with memrchr and strlen
- string: Improve generic memrchr
- string: Improve generic strnlen with memchr
- string: Improve generic memchr
- string: Improve generic strcpy
- string: Improve generic stpcpy
- string: Improve generic strncmp
- string: Improve generic strcmp
- string: Improve generic strchr
- string: Improve generic strchrnul
- string: Improve generic strlen
- Add string vectorized find and detection functions
- Parameterize OP_T_THRES from memcopy.h
- Parameterize op_t from memcopy.h
- Replace rawmemchr (s, '\0') with strchr
- AArch64: Improve SVE memcpy and memmove
- Account for grouping in printf width (bug 30068)
- Move RETURN_TO to x86/sysdep.h and implement x86_64 version.
- Remove pthread-pi-defines.sym
- stdlib: tests: don't double-define _FORTIFY_SOURCE
- LoongArch: Add new relocation types.
- Remove sysdeps/mach/i386/machine-sp.h
- cdefs: Limit definition of fortification macros
- hurd: Move some i386 bits to x86
- Remove support setting custom demuxers during signal handling.
- hurd: Implement SHM_ANON
- hurd: Implement O_TMPFILE
- hurd: Consolidate file_name_lookup implementation
- Linux: optimize clone3 internal usage
- aarch64: Add the clone3 wrapper
- linux: Add clone3 CLONE_CLEAR_SIGHAND optimization to posix_spawn
- Linux: Do not align the stack for __clone3
- linux: Extend internal clone3 documentation
- linux: Do not reset signal handler in posix_spawn if it is already SIG_DFL
- Open master branch for glibc 2.38 development
2023-02-20 21:34:56 +01:00
Carlos O'Donell 97c044f99a Auto-sync with upstream branch release/2.37/master
Upstream commit: a704fd9a133bfb10510e18702f48a6a9c88dbbd5:

- Create ChangeLog.old/ChangeLog.26. (tag: glibc-2.37)
- Prepare for glibc 2.37 release.
- x86: Fix strncat-avx2.S reading past length [BZ #30065]
- Update install.texi, and regenerate INSTALL.
- Update manual/contrib.texi.
- Update NEWS file with bug fixes.
- Regenerate configure.
- Update all PO files in preparation for release.
- doc: correct _FORTIFY_SOURCE doc in features.h
- libio: Update number of written bytes in dprintf implementation

- Drop already included glibc-dprintf-length.patch patch.
- Apply glibc-printf-grouping-swbz30068.patch to fix swbz#30068.
2023-02-04 14:23:17 -05:00
Florian Weimer f87342d79f Upload sources 2023-01-31 18:16:37 +01:00
Florian Weimer 5583ed7061 Auto-sync with upstream branch master
Upstream commit: 2f39e44a8417b4186a7f15bfeac5d0b557e63e03

- Account for octal marker in %#o format (rhbz#2165869)
- Use binutils 2.40 branch in build-many-glibcs.py
- Use MPFR 4.2.0, MPC 1.3.1 in build-many-glibcs.py

- Apply glibc-dprintf-length.patch to fix dprintf return value
  regression.
2023-01-31 17:00:06 +01:00
Florian Weimer 009042dd24 Auto-sync with upstream branch master
Upstream commit: 0d50f477f47ba637b54fb03ac48d769ec4543e8d

- stdio-common: Handle -1 buffer size in __sprintf_chk & co (bug 30039)
- Document '%F' format specifier
- sparc (64bit): Regenerate ulps
- ia64: Regenerate ulps
- Update libc.pot for 2.37 release.
- x86: Cache computation for AMD architecture.
- manual: Fix typo
- Add STATX_DIOALIGN from Linux 6.1 to bits/statx-generic.h
- Add IPPROTO_L2TP from Linux 6.1 to netinet/in.h
- AArch64: Improve strrchr
- AArch64: Optimize strnlen
- AArch64: Optimize strlen
- AArch64: Optimize strcpy
- AArch64: Improve strchrnul
- AArch64: Optimize strchr
- AArch64: Improve strlen_asimd
- AArch64: Optimize memrchr
- AArch64: Optimize memchr
2023-01-25 09:14:47 +01:00
Fedora Release Engineering a37e67f1e1 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-19 05:05:08 +00:00
Martin Cermak 64c7d00676 Merge #67 `CI Tests: updates old test cases to use actual beakerlib functions` 2023-01-18 16:46:03 +00:00
Florian Weimer 8a01f7cacb Auto-sync with upstream branch master
Upstream commit: 569cfcc6bf35c28112ca8d7112e9eb4a22bed5b8

- hurd: Fix _NOFLSH value
- elf: Fix GL(dl_phdr) and GL(dl_phnum) for static builds [BZ #29864]
- string: Suppress -Wmaybe-unitialized for wordcopy [BZ #19444]
- scripts/build-many-glibcs.py: Remove unused RANLIB and STRIP option
- configure: Move nm, objdump, and readelf to LIBC_PROG_BINUTILS
2023-01-17 10:01:24 +01:00
Sergey Kolosov 7d661951ea CI Tests: updates Regression/bz455360-RHEL4-vfprintf-call-goes-into-recursive to use actual beakerlib functions 2023-01-13 22:20:45 +01:00
Sergey Kolosov 353c8e0d93 CI Tests: updates Regression/bz464146-sp-corruption to use actual beakerlib functions 2023-01-13 22:20:25 +01:00
Sergey Kolosov 87390fd480 CI Tests: updates Regression/bz471298-pthread_cond to use actual beakerlib functions 2023-01-13 22:20:10 +01:00
Sergey Kolosov 6d3d89d0ca CI Tests: switches remaining test cases to beakerlib framework 2023-01-13 21:15:35 +01:00
Patsy Griffin d000e6b3e6 Auto-sync with upstream branch master
Upstream commit: 2d2d7e1a8f2e62b442ae8978f0a6c17f385575c4

- configure: Allow user override LD, AR, OBJCOPY, and GPROF
- math: Suppress -O0 warnings for soft-fp fsqrt [BZ #19444]
- sunrpc: Suppress GCC -O1 warning on user2netname [BZ #19444]
- locale: Use correct buffer size for utf8_sequence_error [BZ #19444]
- Add HWCAP2_SVE_EBF16 from Linux 6.1 to AArch64 bits/hwcap.h
- Add _FORTIFY_SOURCE implementation documentation [BZ #28998]
- Update copyright dates not handled by scripts/update-copyrights
- Update copyright dates with scripts/update-copyrights
- Remove trailing whitespace in gmp.h
- Remove trailing whitespace
- C2x semantics for <tgmath.h>
- time: Set daylight to 1 for matching DST/offset change (bug 29951)
- Fix ldbl-128 built-in function use
- x86: Check minimum/maximum of non_temporal_threshold [BZ #29953]
- i686: Regenerate ulps
2023-01-11 22:26:53 -05:00
Arjun Shankar 2ceebf21f1 Auto-sync with upstream branch master
Upstream commit: 5f55b22f4b3ea14c777a60f239d25dc4555eb804

- Drop glibc-rh2155825.patch; fix applied upstream

- hurd getcwd: Fix memory leak on error
- hurd fcntl: Make LOCKED macro more robust
- hurd: Make dl-sysdep __sbrk check __vm_allocate call
- htl: Drop duplicate check in __pthread_stack_alloc
- hurd hurdstartup: Initialize remaining fields of hurd_startup_data
- hurd _S_msg_add_auth: Initialize new arrays to 0
- htl: Check error returned by __getrlimit
- getdelim: ensure error indicator is set on error (bug 29917)
- htl: Fix sem_wait race between read and gsync_wait
- Avoid use of atoi in malloc
- Linux: Pass size argument of epoll_create to the kernel
- Simplify scripts/cross-test-ssh.sh configuration.
- Define MADV_COLLAPSE from Linux 6.1
- powerpc64: Increase SIGSTKSZ and MINSIGSTKSZ
- Update all PO files in preparation for release.
- Update kernel version to 6.1 in header constant tests
- Update syscall lists for Linux 6.1
- libio: Convert __vswprintf_internal to buffers (bug 27857)
- libio: Convert __obstack_vprintf_internal to buffers (bug 27124)
- libio: Convert __vdprintf_internal to buffers
- libio: Convert __vasprintf_internal to buffers
- libio: Convert __vsprintf_internal to buffers
- stdio-common: Add lock optimization to vfprintf and vfwprintf
- stdio-common: Convert vfprintf and related functions to buffers
- stdio-common: Add __translated_number_width
- stdio-common: Add __printf_function_invoke
- stdio-common: Introduce buffers for implementing printf
- locale: Implement struct grouping_iterator
- Use Linux 6.1 in build-many-glibcs.py
- Avoid use of atoi in some places in libc
2023-01-02 14:17:02 +01:00
Martin Cermak b12aa3c1f1 tests: FMF - fix deprecated beakerlib attribute 2022-12-22 20:53:44 +01:00
Florian Weimer c3dda3d423 Fix epoll_create regression (#2155825) 2022-12-22 17:23:51 +01:00
Florian Weimer 4024998b40 Auto-sync with upstream branch master
Upstream commit c1c0dea38833751f36a145c322ce53c9a08332e1

- Linux: Remove epoll_create, inotify_init from syscalls.list (#2154747)
- Linux: Reflow and sort some Makefile variables
- mach: Drop remnants of old_CFLAGS
- mach: Fix passing -ffreestanding when checking for gnumach headers
- Force use of -ffreestanding when checking for gnumach headers
- elf: Fix tst-relro-symbols.py argument passing
- x86: Prevent SIGSEGV in memcmp-sse2 when data is concurrently modified [BZ #29863]
- Allow _Qp_fgt in sparc64 localplt.data
2022-12-19 13:32:55 +01:00
DJ Delorie 36c95d06a5 Auto-sync with upstream branch master
Upstream commit: 5dcd2d0ad02ff12c76355ef4f40947c1857ac482

- stdlib: Move _IO_cleanup to call_function_static_weak
- elf: Do not assume symbol order on tst-audit25{a,b}
- time: Use 64 bit time on tzfile
- nscd: Use 64 bit time_t on libc nscd routines (BZ# 29402)
- nis: Build libnsl with 64 bit time_t
- realloc: Return unchanged if request is within usable size
- Linux: Consolidate typesizes.h
- Linux: Make generic fcntl.h the default one
- Linux: make generic xstatver.h the default one
- Linux: Remove generic sysdep
- Linux: Assume and consolidate shutdown wire-up syscall
- Linux: Assume and consolidate listen wire-up syscall
- Linux: Assume and consolidate socketpair wire-up syscall
- Linux: Assume and consolidate socket wire-up syscall
- Linux: Assume and consolidate bind wire-up syscall
- Linux: consolidate ____longjmp_chk
- Linux: consolidate sendfile implementation
- Linux: consolidate unlink implementation
- Linux: consolidate symlink implementation
- Linux: consolidate rmdir implementation
- Linux: consolidate readlink implementation
- Linux: consolidate mkdir implementation
- Linux: consolidate link implementation
- Linux: consolidate lchown implementation
- Linux: consolidate inotify_init implementation
- Lninux: consolidate epoll_create implementation
- Linux: consolidate dup2 implementation
- Linux: consolidate chown implementation
- Linux: consolidate chmod implementation
- linux: Consolidate dl-origin.c
- linux: Use long int for syscall return value
- LoongArch: Use medium cmodel build libc_nonshared.a.
- x86_64: State assembler is being tested on sysdeps/x86/configure
- configure: Remove AS check
- configure: Remove check if ld is GNU
- configure: Remove check if as is GNU
- configure: Move locale tools early
2022-12-12 23:54:54 -05:00
Arjun Shankar 1e3db499d6 Auto-sync with upstream branch master
Upstream commit: 8fb923ddc38dd5f4bfac4869d70fd80483fdb87a

- hurd: Make getrandom cache the server port
- powerpc64: Remove old strncmp optimization
- x86-64 strncpy: Properly handle the length parameter [BZ# 29839]
- x86-64 strncat: Properly handle the length parameter [BZ# 24097]
- ARC: update definitions in elf/elf.h
- scripts: Add "|" operator support to glibcpp's parsing
- Apply asm redirections in syslog.h before first use [BZ #27087]
- LoongArch: Add support for ilogb[f]
- LoongArch: Add support for scalb[f]
- LoongArch: Add support for scalbn[f]
- LoongArch: Use __builtin_logb{,f} with GCC >= 13
- Use GCC builtins for logb functions if desired.
- LoongArch: Use __builtin_llrint{,f} with GCC >= 13
- Use GCC builtins for llrint functions if desired.
- LoongArch: Use __builtin_lrint{,f} with GCC >= 13
- Use GCC builtins for lrint functions if desired.
- LoongArch: Use __builtin_rint{,f} with GCC >= 13
2022-12-05 17:09:03 +01:00
Florian Weimer bbbda714f9 Auto-sync with upstream branch master
Upstream commit: f704192911c6c7b65a54beab3ab369fca7609a5d

- x86/fpu: Factor out shared avx2/avx512 code in svml_{s|d}_wrapper_impl.h
- x86/fpu: Cleanup code in svml_{s|d}_wrapper_impl.h
- x86/fpu: Reformat svml_{s|d}_wrapper_impl.h
- x86/fpu: Fix misspelled evex512 section in variety of svml files
- x86/fpu: Add missing ISA sections to variety of svml files
- stdio-common: Add missing dependencies (bug 29780)
- i386: Avoid rely on linker optimization to avoid relocation
- elf: Fix rtld-audit trampoline for aarch64
- Define in_int32_t_range to check if the 64 bit time_t syscall should be used
2022-11-28 08:11:24 +01:00
Arjun Shankar 7a70647c21 Auto-sync with upstream branch master
Upstream commit: 94628de77888c3292fc103840731ff85f283368e

- elf/tst-tlsopt-powerpc fails when compiled with -mcpu=power10 (BZ# 29776)
- LoongArch: Hard Float Support for fmaximum_mag_num{f/ }, fminimum_mag_num{f/ }.
- LoongArch: Hard Float Support for fmaximum_mag{f/ }, fminimum_mag{f/ }.
- LoongArch: Hard Float Support for fmaxmag{f/ }, fminmag{f/ }.
- LoongArch: Hard Float Support for fmaximum_num{f/ }, fminimum_num{f/ }.
- LoongArch: Hard Float Support for fmaximum{f/ }, fminimum{f/ }.
- LoongArch: Hard Float Support for float-point classification functions.
- LoongArch: Use __builtin_{fma, fmaf} to implement function {fma, fmaf}.
2022-11-14 15:56:37 +01:00
Florian Weimer c22dc5e2f0 Auto-sync with upstream branch master
Upstream commit: 22a46dee24351fd5f4f188ad80554cad79c82524

- Linux: Support __IPC_64 in sysvctl *ctl command arguments (bug 29771)
- riscv: Get level 3 cache's information
- debug: Fix typo in tests-unsupported rule
- iconvdata/tst-table-charmap.sh: remove handling of old, borrowed format
- Makerules: Generate shlib.lds with -fuse-ld=bfd
- x86: Add avx2 optimized functions for the wchar_t strcpy family
- x86: Add evex optimized functions for the wchar_t strcpy family
- x86: Optimize and shrink st{r|p}{n}{cat|cpy}-avx2 functions
- x86: Optimize and shrink st{r|p}{n}{cat|cpy}-evex functions
- benchtests: Make str{n}{cat|cpy} benchmarks output json
- x86: Use VMM API in memcmpeq-evex.S and minor changes
- x86: Use VMM API in memcmp-evex-movbe.S and minor changes
- string: Add len=0 to {w}memcmp{eq} tests and benchtests
- Linux: Add ppoll fortify symbol for 64 bit time_t (BZ# 29746)
- hurd: Add sigtimedwait and sigwaitinfo support
2022-11-10 21:43:41 +01:00
DJ Delorie 1f9fbacd82 Auto-sync with upstream branch master
Upstream commit: 8d291eabd541029d7ac705cc1ea112c58dfbb05f

- Apply asm redirection in gmp.h before first use
- Rewrite find_cxx_header config configure.ac
- elf/tlsdeschtab.h: Add the Malloc return value check in _dl_make_tlsdesc_dynamic()
- elf: Disable some subtests of ifuncmain1, ifuncmain5 for !PIE
- posix: Make posix_spawn extensions available by default
- x86_64: Implement evex512 version of strrchr and wcsrchr
- elf: Introduce <dl-call_tls_init_tp.h> and call_tls_init_tp (bug 29249)
- LoongArch: Fix ABI related macros in elf.h to keep consistent with binutils[1].
- scripts/glibcelf.py: Properly report <elf.h> parsing failures
- elf: Rework exception handling in the dynamic loader [BZ #25486]
- linux: Drop useless include from fstatat.c
- Fix OOB read in stdlib thousand grouping parsing [BZ #29727]
- linux: Fix fstatat on MIPSn64 (BZ #29730)
- elf: Remove allocate use on _dl_debug_printf
- nptl: Fix pthread_create.c build with clang
- allocate_once: Apply asm redirection before first use
- alloc_buffer: Apply asm redirection before first use
- configure: Use -Wno-ignored-attributes if compiler warns about multiple aliases
- Disable use of -fsignaling-nans if compiler does not support it
- intl: Fix clang -Wunused-but-set-variable on plural.c
- Apply asm redirection in not-cancel before first use
- malloc: Use uintptr_t for pointer alignment
- Use uintptr_t in fts for pointer alignment
- Fix build with GCC 13 _FloatN, _FloatNx built-in functions
- elf: Build tst-relr-mod[34]a.so with $(LDFLAGS-rpath-ORIGIN)
- x86-64: Improve evex512 version of strlen functions
- Correctly determine libc.so 'OUTPUT_FORMAT' when cross-compiling.
- Remove unused scratch_buffer_dupfree
- Fix elf/tst-dlmopen-twice not to exhaust static TLS
- Use uintptr_t in string/tester for pointer alignment
- stdlib/strfrom: Add copysign to fix NAN issue on riscv (BZ #29501)
- Fix resource/bug-ulimit1 test
- Fix missing NUL terminator in stdio-common/scanf13 test
- Fix off-by-one OOB read in elf/tst-tls20
- elf: Fix alloca size in _dl_debug_vdprintf
- malloc: Use uintptr_t in alloc_buffer
- Fix invalid pointer dereference in wcpcpy_chk
- Fix invalid pointer dereference in wcscpy_chk
- aarch64: Fix the extension header write in getcontext and swapcontext
- aarch64: Don't build wordcopy
- scripts: Use bool in tunables initializer
- longlong.h: update from GCC for LoongArch clz/ctz support
2022-11-07 16:46:05 -05:00
Patsy Griffin 84cb4d0635 Auto-sync with upstream branch master
Upstream commit: 6f360366f7f76b158a0f4bf20d42f2854ad56264

- elf: Introduce to _dl_call_fini
- ld.so: Export tls_init_tp_called as __rtld_tls_init_tp_called
- scripts/localplt.awk: Handle DT_JMPREL with empty PLT (for C-SKY)
- Remove lingering libSegfault Makefile entries
- aarch64: Use memcpy_simd as the default memcpy
- aarch64: Cleanup memset ifunc
- elf: Reinstate on DL_DEBUG_BINDINGS _dl_lookup_symbol_x
- x86_64: Implement evex512 version of strchrnul, strchr and wcschr
- linux: Fix generic struct_stat for 64 bit time (BZ# 29657)
- manual: Add missing % in int conversion list
- Avoid undefined behaviour in ibm128 implementation of llroundl (BZ #29488)
- Remove all assembly optimizations for htonl and htons
- Remove htonl.S for i386/x86_64
- Fix BZ #29463 in the ibm128 implementation of y1l too
- Add ADDRB from Linux 6.0 to bits/termios-c_cflag.h
- x86: Use `testb` for FSRM check in memmove-vec-unaligned-erms
- x86: Use `testb` for case-locale check in str{n}casecmp-sse42
- x86: Use `testb` for case-locale check in str{n}casecmp-sse2
- x86: Use `testb` for case-locale check in str{n}casecmp-avx2
- x86: Add support for VEC_SIZE == 64 in strcmp-evex.S impl
- x86: Remove AVX512-BVMI2 instruction from strrchr-evex.S
- sysdeps: arm: Fix preconfigure script for ARMv8/v9 targets [BZ #29698]
- nis: Fix nis_print_directory
- linux: Avoid shifting a negative signed on POSIX timer interface
- Bench: Improve benchtests for memchr, strchr, strnlen, strrchr
- x86: Optimize strrchr-evex.S and implement with VMM headers
- x86: Optimize memrchr-evex.S
- x86: Optimize strnlen-evex.S and implement with VMM headers
- x86: Shrink / minorly optimize strchr-evex and implement with VMM headers
- x86: Optimize memchr-evex.S and implement with VMM headers
- x86_64: Implement evex512 version of memchr, rawmemchr and wmemchr
- String: Improve test coverage for memchr
- Use PTR_MANGLE and PTR_DEMANGLE unconditionally in C sources
- Introduce <pointer_guard.h>, extracted from <sysdep.h>
- x86-64: Move LP_SIZE definition to its own header
- math: Fix asin and acos invalid exception with old gcc
- x86: Update strlen-evex-base to use new reg/vec macros.
- x86: Remove now unused vec header macros.
- x86: Update memset to use new VEC macros
- x86: Update memmove to use new VEC macros
- x86: Update memrchr to use new VEC macros
- x86: Update VEC macros to complete API for evex/evex512 impls
- elf: Do not completely clear reused namespace in dlmopen (bug 29600)
- malloc: Switch global_max_fast to uint8_t
- Add NT_S390_PV_CPU_DATA from Linux 6.0 to elf.h
- Add AArch64 HWCAP2_EBF16 from Linux 6.0 to bits/hwcap.h
- String: Improve test coverage for memchr
- elf: Remove -fno-tree-loop-distribute-patterns usage on dl-support
- socket: Use offsetof in SUN_LEN (bug 29578)
- Expose all MAP_ constants in <sys/mman.h> unconditionally (bug 29375)
- LoongArch: Fix the condition to use PC-relative addressing in start.S
- arm: Enable USE_ATOMIC_COMPILER_BUILTINS (BZ #24774)
- csu: Disable stack protector for static-reloc for static-pie
- NEWS: Fix grammar
- elf: Simplify output of hwcap subdirectories in ld.so help
- elf: Remove _dl_string_hwcap
- Add NEWS entry for legacy hwcaps removal
- elf: Remove hwcap and bits_hwcap fields from struct cache_entry
- elf: Remove hwcap parameter from add_to_cache signature
- elf: Remove legacy hwcaps support from ldconfig
- elf: Remove legacy hwcaps support from the dynamic loader
- x86_64: Remove platform directory library loading test
- Update to Unicode 15.0.0 [BZ #29604]
- Update kernel version to 6.0 in header constant tests
- x86: Fix -Os build (BZ #29576)
- sunrpc: Suppress GCC -Os warning on user2netname
- rt: Initialize mq_send input on tst-mqueue{5,6}
- posix: Suppress -Os may be used uninitialized warnings on regexec
- posix: Suppress -Os warnings on fnmatch
- locale: prevent maybe-uninitialized errors with -Os [BZ #19444]
- Regenerate sysdeps/mach/hurd/bits/errno.h
- Update syscall lists for Linux 6.0
- nscd: Drop local address tuple variable [BZ #29607]
- Use Linux 6.0 in build-many-glibcs.py
- x86-64: Require BMI1/BMI2 for AVX2 strrchr and wcsrchr implementations
- x86-64: Require BMI2 and LZCNT for AVX2 memrchr implementation
- x86-64: Require BMI2 for AVX2 (raw|w)memchr implementations
- x86-64: Require BMI2 for AVX2 wcs(n)cmp implementations
- x86-64: Require BMI2 for AVX2 strncmp implementation
- x86-64: Require BMI2 for AVX2 strcmp implementation
- x86-64: Require BMI2 for AVX2 str(n)casecmp implementations
- x86: include BMI1 and BMI2 in x86-64-v3 level
- x86: Cleanup pthread_spin_{try}lock.S
- Benchtests: Add bench for pthread_spin_{try}lock and mutex_trylock
2022-10-27 15:03:13 -04:00
Carlos O'Donell 1cd731cf29 Enable ELF DT_HASH for shared objects and the dynamic loader (#2129358)
Resolves: #2129358
2022-10-17 15:13:38 -04:00
DJ Delorie d4efcab16d Auto-sync with upstream branch master
Upstream commit: 114e299ca66353fa7be1ee45bb4e1307d3de1fa2

- x86: Remove .tfloat usage
- nptl: Convert tst-setuid2 to test-driver
- support: Add xpthread_cond_signal wrapper
- hppa: Fix initialization of dp register [BZ 29635]
- Fix iseqsig for _FloatN and _FloatNx in C++ with GCC 13
- malloc: Do not clobber errno on __getrandom_nocancel (BZ #29624)
- stdlib: Fix __getrandom_nocancel type and arc4random usage (BZ #29638)
- LoongArch: Add static PIE support
- Benchtest: Add additional benchmarks for strlen and strnlen
- x86: Fix wcsnlen-avx2 page cross length comparison [BZ #29591]
- Update _FloatN header support for C++ in GCC 13
- hurd: Fix typo
- get_nscd_addresses: Fix subscript typos [BZ #29605]
- hurd: Increase SOMAXCONN to 4096
- Use atomic_exchange_release/acquire
2022-10-03 14:40:27 -04:00
Patsy Griffin 464d5f14a2 Auto-sync with upstream branch master
Upstream commit: c02e29a0ba47d636281e1a026444a1a0a254aa12

- nss: Use shared prefix in IPv4 address in tst-reload1
- nss: Enhance tst-reload1 coverage and logging
- Use C11 atomics instead of atomic_decrement_and_test
- Use C11 atomics instead of atomic_increment(_val)
- Use C11 atomics instead of atomic_and/or
- malloc: Print error when oldsize is not equal to the current size.
- Use '%z' instead of '%Z' on printf functions
- elf: Extract glibcelf constants from <elf.h>
- scripts: Enhance glibcpp to do basic macro processing
- scripts: Extract glibcpp.py from check-obsolete-constructs.py
- riscv: Remove RV32 floating point functions
- riscv: Consolidate the libm-test-ulps
- hurd: Fix SIOCADD/DELRT ioctls
- hurd: Drop struct rtentry and in6_rtmsg
- hurd: Add _IOT_ifrtreq to <net/route.h>
- elf: Use C11 atomics on _dl_mcount
- hurd: Use IF_NAMESIZE rather than IFNAMSIZ
- hurd: Add ifrtreq structure to net/route.h
- hppa: undef __ASSUME_SET_ROBUST_LIST
- linux: Use same type for MMAP2_PAGE_UNIT
- m68k: Enforce 4-byte alignment on internal locks (BZ #29537)
- nss: Fix tst-nss-files-hosts-long on single-stack hosts (bug 24816)
- nss: Implement --no-addrconfig option for getent
- gconv: Use 64-bit interfaces in gconv_parseconfdir (bug 29583)
- elf: Implement force_first handling in _dl_sort_maps_dfs (bug 28937)
- Linux: Do not skip d_ino == 0 entries in readdir, readdir64 (bug 12165)
- hurd: Factorize at/non-at functions
- tst-sprintf-errno: Update Hurd message length
- RISC-V: Allow long jumps to __syscall_error
- hurd: Make readlink* just reopen the file used for stat
- hurd: Fix readlink() hanging on fifo
- Fix BRE typos in check-safety.sh
- Makerules: fix MAKEFLAGS assignment for upcoming make-4.4 [BZ# 29564]
- Use relaxed atomics since there is no MO dependence
2022-09-24 23:14:57 -04:00
Florian Weimer 4c6fa526bf Do not require .annobin symbols in wrap-find-debuginfo.sh 2022-09-23 10:01:43 +02:00
Florian Weimer aa0d1b7d9f Bump release 2022-09-14 14:00:17 +02:00
Florian Weimer b400cead41 Remove .annobin* symbols from ld.so (#2126477) 2022-09-14 13:59:13 +02:00
Florian Weimer 6c17684392 Use a temporary directory in wrap-find-debuginfo.sh
This avoids the need for separate variables for all files.
2022-09-14 12:25:33 +02:00
Florian Weimer 885b520a6d Auto-sync with upstream branch master
Upstream commit: f278835f594740f5913001430641cf1da4878670

- Drop glibc-deprecated-selinux-makedb.patch.  Upstream has been ported
  to new libselinux.

- makedb: fix build with libselinux >= 3.1 (Bug 26233)
- tst-sprintf-errno: Update Hurd message output
- Use C11 atomics instead of atomic_decrement(_val)
- Use C11 atomics instead atomic_add(_zero)
- mktime: improve heuristic for ca-1986 Indiana DST
- Assume HAVE_TZSET in time/mktime.c
- elf: Fix hwcaps string size overestimation
- errlist: add missing entry for EDEADLOCK (bug 29545)
- Do not define static_assert or thread_local in headers for C2x
- malloc: Use C11 atomics rather than atomic_exchange_and_add
- Add NEWS entry for CVE-2022-39046
- elf: Rename _dl_sort_maps parameter from skip to force_first
- scripts/dso-ordering-test.py: Generate program run-time dependencies
- math: x86: Use prefix for FP_INIT_ROUNDMODE
- scripts/build-many-glibcs.py: Use https:// for sourceware.org Git clones
- debug: test for more required cacellation points (BZ# 29274)
- elf.h: Remove duplicate definition of VER_FLG_WEAK
- syslog: Remove extra whitespace between timestamp and message (BZ#29544)
- LoongArch: Add soft float support.
- elf: Restore how vDSO dependency is printed with LD_TRACE_LOADED_OBJECTS (BZ #29539)
- nptl: x86_64: Use same code for CURRENT_STACK_FRAME and stackinfo_get_sp
2022-09-13 13:20:15 +02:00
Arjun Shankar 8e2d77f734 Retain libc.so.6 debuglink section, remove ld.so debuginfo file (#2090744)
This commit fixes wrap-find-debuginfo.sh so that:
* the .gnu_debuglink section of libc.so.6 is retained, and
* the redundant debuginfo file generated for ld.so is removed

Co-Authored-By: Benjamin Herrenschmidt <benh@amazon.com>
Reviewed-by: Florian Weimer <fweimer@redhat.com>
2022-09-05 16:24:44 +02:00
DJ Delorie cfb2790658 Auto-sync with upstream branch master
Upstream commit: c7509d49c4e8fa494120c5ead21338559dad16f5

- Apply asm redirections in wchar.h before first use
- resolv: Fix building tst-resolv-invalid-cname for earlier C standards
- syslog: Fix large messages (BZ#29536)
- posix: Fix macro expansion producing 'defined' has undefined behavior
- stdlib: Fix macro expansion producing 'defined' has undefined behavior
- S390: Always use svc 0
- nss_dns: Rewrite _nss_dns_gethostbyname4_r using current interfaces
- resolv: Add new tst-resolv-invalid-cname
- nss_dns: In gaih_getanswer_slice, skip strange aliases (bug 12154)
- nss_dns: Rewrite getanswer_r to match getanswer_ptr (bug 12154, bug 29305)
- nss_dns: Remove remnants of IPv6 address mapping
- nss_dns: Rewrite _nss_dns_gethostbyaddr2_r and getanswer_ptr
- nss_dns: Split getanswer_ptr from getanswer_r
- resolv: Add DNS packet parsing helpers geared towards wire format
- resolv: Add internal __ns_name_length_uncompressed function
- resolv: Add the __ns_samebinaryname function
- resolv: Add internal __res_binary_hnok function
- resolv: Add tst-resolv-aliases
- resolv: Add tst-resolv-byaddr for testing reverse lookup
- LoongArch: Use __builtin_{fmax,fmaxf,fmin,fminf} with GCC >= 13
- LoongArch: Fix ptr mangling/demangling features.
- nscd: Fix netlink cache invalidation if epoll is used [BZ #29415]
- Add test for bug 29530
- Makeconfig: Set pie-ccflag to -fPIE by default [BZ# 29514]
- hurd: Fix vm_size_t incoherencies
- mach: Make xpg_strerror_r set a message on error
- mach: Fix incoherency between perror and strerror
- elf: Call __libc_early_init for reused namespaces (bug 29528)
- csu: Change start code license to have link exception
- s390: Move hwcaps/platform names out of _rtld_global_ro
- Revert "Detect ld.so and libc.so version inconsistency during startup"
- Add NT_LOONGARCH_* from Linux 5.19 to elf.h
- Detect ld.so and libc.so version inconsistency during startup
- Merge getopt patch from Gnulib
- Merge _GL_UNUSED C23 patch from Gnulib
- LoongArch: Fix dl-machine.h code formatting.
- scripts/glibcelf.py: Add hashing support
- hurd: Fix starting static binaries with stack protection enabled
- htl: Make pthread*_cond_timedwait register wref before releasing mutex
- htl: make __pthread_hurd_cond_timedwait_internal check mutex is held
- Add AArch64 HWCAP2_* constants from Linux 5.19
2022-08-30 17:21:40 -04:00
Arjun Shankar 318ee02db8 Auto-sync with upstream branch master
Upstream commit: a727220b37efc9d4d558a77c5fc57f3af99a4829

- Add AGROUP from Linux 5.19 to sys/acct.h, remove Alpha version (bug 29502)
- alpha: Fix generic brk system call emulation in __brk_call (bug 29490)
- hurd: Assume non-suid during bootstrap
2022-08-22 16:28:04 +02:00
Patsy Griffin c6f93d2f6d Auto-sync with upstream branch master
Upstream commit: 9125e43daf92e3d4e69044a54b9fe9ed88c861ad

- Use binutils 2.39 branch in build-many-glibcs.py
- S390: Fix werror=unused-variable in ifunc-impl-list.c.
- Ensure calculations happen with desired rounding mode in y1lf128
- localedata: Convert French language locales (fr_*) to UTF-8
- Linux: Fix enum fsconfig_command detection in <sys/mount.h>
- elf: Run tst-audit-tlsdesc, tst-audit-tlsdesc-dlopen everywhere
- Move ip_mreqn structure from Linux to generic
- malloc: Do not use MAP_NORESERVE to allocate heap segments
- Linux: Terminate subprocess on late failure in tst-pidfd (bug 29485)
- non-linux: bits/in.h: Add more RFC options
2022-08-18 15:19:38 -04:00
Florian Weimer 6c465d0ed7 Rotate changelog 2022-08-15 07:24:44 +02:00
Florian Weimer ae30d62333 Auto-sync with upstream branch master
Upstream commit: 453b88efe6fa79f5c7c6fccc3a520c75fdd43074

- arm: Remove nested functionf rom relocate_pc24
- linux: Fix sys/mount.h usage with kernel headers
- linux: Use compile_c_snippet to check linux/mount.h availability
- linux: Mimic kernel defition for BLOCK_SIZE
- linux: Use compile_c_snippet to check linux/pidfd.h availability
- glibcextract.py: Add compile_c_snippet
- LoongArch: Add pointer mangling support.
- AArch64: Fix typo in sve configure check (BZ# 29394)
- libio: Improve performance of IO locks
- tst-process_madvise: Check process_madvise-syscall support.
- elf.h: Add ELFCOMPRESS_ZSTD
- inet: Turn __ivaliduser into a compatibility symbol
- x86: Fix `#define STRCPY` guard in strcpy-sse2.S
- elf: Replace `strcpy` call with `memcpy` [BZ #29454]
- soft-fp: Add fixhf[uns][di|si] and float[uns][di|si]hf
- i386: Use cmpl instead of cmp
- i386: Use fldt instead of fld on e_logl.S
- i386: Replace movzx with movzbl
- dlfcn: Pass caller pointer to static dlopen implementation (bug 29446)
- malloc: Correct the documentation of the top_pad default
- i386: Remove RELA support
- arm: Remove RELA support
- Remove ldd libc4 support
- Assume only FLAG_ELF_LIBC6 suport
- Remove left over LD_LIBRARY_VERSION usages
- Linux: Remove exit system call from _exit
- LoongArch: Add vdso support for gettimeofday.
- Update kernel version to 5.19 in header constant tests
- assert: Do not use stderr in libc-internal assert
- nptl: Remove uses of assert_perror
- stdio: Clean up __libc_message after unconditional abort
- Update syscall lists for Linux 5.19
- Use Linux 5.19 in build-many-glibcs.py
- socket: Check lengths before advancing pointer in CMSG_NXTHDR
- Don't use unsupported format string in ld.so (bug 29427)
- htl: Let pthread_self and cancellability called early
- stdlib: Simplify arc4random_uniform
- malloc: Use __getrandom_nocancel during tcache initiailization
- Remove spurious references to _dl_open_hook
- Open master branch for glibc 2.37 development
2022-08-15 07:24:29 +02:00
Carlos O'Donell f6ffd58424 Auto-sync with upstream branch release/2.36/master
Upstream commit: 33f1b4c1452b33991e670f636ebe98b90a405e10

- wcsmbs: Add missing test-c8rtomb/test-mbrtoc8 dependency
- stdlib: Suppress gcc diagnostic that char8_t is a keyword in C++20 in uchar.h.
- Create ChangeLog.old/ChangeLog.25. (tag: glibc-2.36)
- Prepare for glibc 2.36 release.
- Update install.texi, and regenerate INSTALL.
- Update NEWS bug list.
- Update libc.pot for 2.36 release.
- tst-pidfd.c: UNSUPPORTED if we get EPERM on valid pidfd_getfd call
- stdlib: Tuned down tst-arc4random-thread internal parameters
- LoongArch: Add greg_t and gregset_t.
- LoongArch: Fix VDSO_HASH and VDSO_NAME.
- riscv: Update rv64 libm test ulps
- riscv: Update nofpu libm test ulps

No regressions seen in mass-prebuild of critical-path-base packages.
2022-08-05 10:24:15 -04:00
Arjun Shankar 78f6644069 Auto-sync with upstream branch master
Upstream commit: eaad4f9e8f07fc43618f6c8635a7e82831a423dd

- arc4random: simplify design for better safety
- LoongArch: Update NEWS and README for the LoongArch port.
- LoongArch: Update build-many-glibcs.py for the LoongArch Port.
- LoongArch: Hard Float Support
- LoongArch: Build Infrastructure
- LoongArch: Add ABI Lists
- LoongArch: Linux ABI
- LoongArch: Linux Syscall Interface
- LoongArch: Atomic and Locking Routines
- LoongArch: Generic <math.h> and soft-fp Routines
- LoongArch: Thread-Local Storage Support
- LoongArch: ABI Implementation
- LoongArch: Add relocations and ELF flags to elf.h and scripts/glibcelf.py
- LoongArch: Add LoongArch entries to config.h.in
- struct stat is not posix conformant on microblaze with __USE_FILE_OFFSET64
- Linux: dirent/tst-readdir64-compat needs to use TEST_COMPAT (bug 27654)
- manual: Add documentation for arc4random functions
- s390x: Add optimized chacha20
- powerpc64: Add optimized chacha20
- x86: Add AVX2 optimized chacha20
- x86: Add SSE2 optimized chacha20
- aarch64: Add optimized chacha20
- benchtests: Add arc4random benchtest
- stdlib: Add arc4random tests
- stdlib: Add arc4random, arc4random_buf, and arc4random_uniform (BZ #4417)
- locale: Optimize tst-localedef-path-norm
- malloc: Simplify implementation of __malloc_assert
- Update scripts/config.* files from upstream GNU config version
- linux: return UNSUPPORTED from tst-mount if entering mount namespace fails
2022-07-27 15:50:14 +02:00
Arjun Shankar 7573b35683 Drop unused patch: glibc-swbz27087.patch 2022-07-25 10:49:18 +02:00
Fedora Release Engineering 6501ce7544 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-21 06:26:14 +00:00
Patsy Griffin 8cafb3e464 Auto-sync with upstream branch master
Upstream commit: 49889fb256a7f9b894b2d16fea23de1ac25b65e2

- x86: Add support to build st{p|r}{n}{cpy|cat} with explicit ISA level
- x86: Add support to build wcscpy with explicit ISA level
- x86: Add support to build strcmp/strlen/strchr with explicit ISA level
- elf: Fix wrong fscanf usage on tst-pldd
- Apply asm redirections in stdio.h before first use [BZ #27087]
- S390: Define SINGLE_THREAD_BY_GLOBAL only on s390x
- x86: Add missing rtm tests for strcmp family
- x86: Remove unneeded rtld-wmemcmp
- x86: Move wcslen SSE2 implementation to multiarch/wcslen-sse2.S
- x86: Move wcschr SSE2 implementation to multiarch/wcschr-sse2.S
- x86: Move strcat SSE2 implementation to multiarch/strcat-sse2.S
- x86: Move strchr SSE2 implementation to multiarch/strchr-sse2.S
- x86: Move strrchr SSE2 implementation to multiarch/strrchr-sse2.S
- x86: Move memrchr SSE2 implementation to multiarch/memrchr-sse2.S
- x86: Move strcpy SSE2 implementation to multiarch/strcpy-sse2.S
- x86: Move strlen SSE2 implementation to multiarch/strlen-sse2.S
- x86: Move strcmp SSE42 implementation to multiarch/strcmp-sse4_2.S
- x86: Move wcscmp SSE2 implementation to multiarch/wcscmp-sse2.S
- x86: Move strcmp SSE2 implementation to multiarch/strcmp-sse2.S
- x86: Rename STRCASECMP_NONASCII macro to STRCASECMP_L_NONASCII
- nptl: Fix ___pthread_unregister_cancel_restore asynchronous restore
- x86: Remove __mmask intrinsics in strstr-avx512.c
- x86: Remove generic strncat, strncpy, and stpncpy implementations
- i386: Remove -Wa,-mtune=i686
- x86-64: Remove redundant strcspn-generic/strpbrk-generic/strspn-generic
- elf: Rename tst-audit26 to tst-audit28
- x86-64: Don't mark symbols as hidden in strcmp-XXX.S
- stdlib: Tests for mbrtoc8, c8rtomb, and the char8_t typedef.
- stdlib: Implement mbrtoc8, c8rtomb, and the char8_t typedef.
- gconv: Correct Big5-HKSCS conversion to preserve all state bits. [BZ #25744]
- aarch64: Optimize string functions with shrn instruction
- test-container: return UNSUPPORTED for ENOSPC on clone()
- x86: Add support for building {w}memcmp{eq} with explicit ISA level
- x86: Add support for building {w}memset{_chk} with explicit ISA level
- x86: Add support for building {w}memmove{_chk} with explicit ISA level
- x86: Add support for building str{c|p}{brk|spn} with explicit ISA level
- x86: Add comment explaining no Slow_SSE4_2 check in ifunc-sse4_2
- Replace __libc_multiple_threads with __libc_single_threaded
- linux: Add mount_setattr
- linux: Add tst-mount to check for Linux new mount API
- linux: Add open_tree
- linux: Add fspick
- linux: Add fsconfig
- AArch64: Reset HWCAP2_AFP bits in FPCR for default fenv
- elf: Fix direction of NODELETE log messages during symbol lookup
2022-07-17 23:02:38 -04:00
Florian Weimer 6d80152087 Merge #61 `Added tags to main.fmf files as described in tcms` 2022-07-15 07:11:46 +00:00
Sergey Kolosov bcd58c23a3 CI Tests: removes redundant check for libstdc++.i686 in bz1882466-RHEL8-2-LD-PRELOAD-of-some-lib-that-has testcase 2022-07-12 21:19:22 +02:00
Sergey Kolosov 8859e9a9be CI Tests: adds check for i686 packages in bz1882466-RHEL8-2-LD-PRELOAD-of-some-lib-that-has testcase 2022-07-12 20:57:52 +02:00
Stephen Gallagher 1bfc6912f1 Modify glibc autorequires to exclude %dist
We'll use baserelease here for two reasons:
- It is known to rpmdev-bumpspec, so it will be properly handled for mass-
  rebuilds
- It allows using the Release number without the %%dist tag in the dependency
  generator to make the generated requires interchangeable between Rawhide
  and ELN (.elnYY < .fcXX).

Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
2022-07-08 13:48:36 +02:00
Luigi Pellecchia 3c29e122df Added tags to main.fmf files as described in tcms 2022-07-08 10:41:28 +00:00
Florian Weimer 70cb41fd34 ppc64le: Increase Clang compatibility of float128 redirects (#2100546) 2022-07-05 12:17:25 +02:00
Florian Weimer 5d92a61711 Auto-sync with upstream branch master
Upstream commit: 7519dee356a0ab21c8990e59ed05dd48a4e573a0

- malloc: Simplify checked_request2size interface
- stdlib: Simplify buffer management in canonicalize
- localedef: Support building for older C standards
- de_DE: Convert to UTF-8
- locale: localdef input files are now encoded in UTF-8
- locale: Introduce translate_unicode_codepoint into linereader.c
- locale: Fix signed char bug in lr_getc
- locale: Turn ADDC and ADDS into functions in linereader.c
- libc-symbols.h: remove unused macros
2022-07-05 11:07:58 +02:00
Florian Weimer 5c27a7014b Remove egrep uses that have crept back in
egrep will start to warn in the next coreutils release.
2022-07-05 11:03:37 +02:00
Florian Weimer 9d11138b6b Inherit -fno-omit-frame-pointer, -mno-omit-leaf-frame-pointer flags
This is in support of a potential performance experiment.
2022-07-05 11:03:37 +02:00
Carlos O'Donell f83c4f6ffc Auto-sync with upstream branch master
Upstream commit: 8ee2c043cfb35c48b45c7c5aed4022a8a7352bdc

- Fix hurd namespace issues for internal signal functions
- argp: Remove old includes in !_LIBC case
- Use GCC 12 branch in build-many-glibcs.py
- Refactor internal-signals.h
- riscv: Use memcpy to handle unaligned access when fixing R_RISCV_RELATIVE
- AArch64: Add asymmetric faulting mode for tag violations in mem.tagging tunable
- linux: Fix mq_timereceive check for 32 bit fallback code (BZ 29304)
- x86: Add missing IS_IN (libc) check to strncmp-sse4_2.S
- x86: Add missing IS_IN (libc) check to strcspn-sse4.c
- x86: Add missing IS_IN (libc) check to memmove-ssse3.S
- x86-64: Properly indent X86_IFUNC_IMPL_ADD_VN arguments
- x86-64: Small improvements to dl-trampoline.S
- x86: Move mem{p}{mov|cpy}_{chk_}erms to its own file
- x86: Move and slightly improve memset_erms
- x86: Add definition for __wmemset_chk AVX2 RTM in ifunc impl list
- linux: Remove unnecessary nice.c and signal.c
- nptl: Remove unused members from struct pthread
- Linux: Forward declaration of struct iovec for process_madvise
- x86: Add more feature definitions to isa-level.h
2022-07-04 15:08:51 -04:00
DJ Delorie 0ce8105155 Rebuild for fixed CI test for bz699724
Bumped NVR to rerun CI/CD against fixed regression test.
2022-06-29 16:59:29 -04:00
Sergey Kolosov 856fa5a570 CI Tests: Fix python syntax in bz699724 testcase 2022-06-29 15:47:28 +02:00
DJ Delorie d760d0071f Auto-sync with upstream branch master
Upstream commit: a3563f3f369878467dd74aeb360448119a7a4b41

- elf: Fix -DNDEBUG warning in _dl_start_args_adjust
- elf: Fix compile error with -Werror and -DNDEBUG
- x86-64: Only define used SSE/AVX/AVX512 run-time resolvers
- x86: Move CPU_FEATURE{S}_{USABLE|ARCH}_P to isa-level.h
- x86: Fix backwards Prefer_No_VZEROUPPER check in ifunc-evex.h
- x86: Rename strstr_sse2 to strstr_generic as it uses string/strstr.c
- x86: Remove unused file wmemcmp-sse4
- x86: Put wcs{n}len-sse4.1 in the sse4.1 text section
- x86: Align entry for memrchr to 64-bytes.
- Makerules: Remove no-op -Wl,-d when linking libc_pic.os
- m68k: optimize RTLD_START
- misc: Optimize internal usage of __libc_single_threaded
- linux: Add move_mount
- linux: Add fsmount
- linux: Add fsopen
- resolv/tst-resolv-noaaaa: Support building for older C standards
- resolv: Implement no-aaaa stub resolver option
- support: Change non-address output format of support_format_dns_packet
- riscv: Use elf_machine_rela_relative to handle R_RISCV_RELATIVE
- x86: Remove faulty sanity tests for RTLD build with no multiarch
- stdlib: Fixup mbstowcs NULL __dst handling. [BZ #29279]
- x86: Replace all sse instructions with vex equivilent in avx+ files
- x86: Add support for compiling {raw|w}memchr with high ISA level
- x86: Add defines / utilities for making ISA specific x86 builds
- stdlib: Remove attr_write from mbstows if dst is NULL [BZ: 29265]
- stdlib: Remove trailing whitespace from Makefile
- debug: make __read_chk a cancellation point (bug 29274)
- s390: use LC_ALL=C for readelf call
- s390: use $READELF
2022-06-28 17:30:04 -04:00
Arjun Shankar 4dd3af9227 Auto-sync with upstream branch master
Upstream commit: e5446dfea11e969212939197b606424a718d9b65

- i386: Fix include paths for strspn, strcspn, and strpbrk
- elf: Silence GCC 11/12 false positive warning
- x86: Rename generic functions with unique postfix for clarity
- x86: Add BMI1/BMI2 checks for ISA_V3 check
- x86-64: Handle fewer relocation types for RTLD_BOOTSTRAP
- aarch64: Handle fewer relocations for RTLD_BOOTSTRAP
- riscv: Change the relocations handled for RTLD_BOOTSTRAP
- x86: Cleanup bounds checking in large memcpy case
- x86: Add bounds `x86_non_temporal_threshold`
- Remove remnant reference to ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA
- elf: Remove ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA
- x86: Add sse42 implementation to strcmp's ifunc
- x86: Fix misordered logic for setting `rep_movsb_stop_threshold`
- elf: Refine direct extern access diagnostics to protected symbol
- Avoid -Wstringop-overflow= warning in iconv module.
- Add bounds check to __libc_ifunc_impl_list
- libio: Avoid RMW of flags2 outside lock (BZ #27842)
- x86: Optimize svml_s_tanhf4_core_sse4.S
- x86: Optimize svml_s_tanhf8_core_avx2.S
- x86: Add data file that can be shared by tanhf-avx2 and tanhf-sse4
- x86: Optimize svml_s_tanhf16_core_avx512.S
- x86: Improve svml_s_atanhf4_core_sse4.S
- x86: Improve svml_s_atanhf8_core_avx2.S
- x86: Improve svml_s_atanhf16_core_avx512.S
- x86: Align varshift table to 32-bytes
- x86: Add copyright to strpbrk-c.c
2022-06-20 17:20:35 +02:00
Luigi Pellecchia f07781018c CI tests: Fix testcase requirements 2022-06-13 15:43:02 +02:00
Florian Weimer c048a40645 Auto-sync with upstream branch master
Upstream commit: ace9e3edbca62d978b1e8f392d8a5d78500272d9

- nss: handle stat failure in check_reload_and_get (BZ #28752)
- nss: add assert to DB_LOOKUP_FCT (BZ #28752)
- x86: Fix page cross case in rawmemchr-avx2 [BZ #29234]
- nptl_db: disable DT_RELR on libthread_db.so
- elf: add missing newlines in lateglobal test
- nptl: Fix __libc_cleanup_pop_restore asynchronous restore (BZ#29214)
- x86: ZERO_UPPER_VEC_REGISTERS_RETURN_XTEST expect no transactions
- x86: Shrink code size of memchr-evex.S
- x86: Shrink code size of memchr-avx2.S
- x86: Optimize memrchr-avx2.S
- x86: Optimize memrchr-evex.S
- x86: Optimize memrchr-sse2.S
- Benchtests: Improve memrchr benchmarks
- x86: Add COND_VZEROUPPER that can replace vzeroupper if no `ret`
- x86: Create header for VEC classes in x86 strings library
- powerpc: Fix VSX register number on __strncpy_power9 [BZ #29197]
- AArch64: Sort makefile entries
- AArch64: Add SVE memcpy
- x86_64: Add strstr function with 512-bit EVEX
- scripts/glibcelf.py: Add PT_AARCH64_MEMTAG_MTE constant
2022-06-09 09:46:58 +02:00
Carlos O'Donell 6dd1d1f29e Auto-sync with upstream branch master
Upstream commit: 999835533bc60fbd0b0b65d2412a6742e5a54b9d

- socket: Fix mistyped define statement in socket/sys/socket.h (BZ #29225)
- Declare timegm for ISO C2X
- Add PT_AARCH64_MEMTAG_MTE from Linux 5.18 to elf.h
- grep: egrep -> grep -E, fgrep -> grep -F
- string.h: Fix boolean spelling in comments
- elf: Add #include <errno.h> for use of E* constants.
- elf: Add #include <sys/param.h> for MAX usage.
- linux: Add process_mrelease
- linux: Add process_madvise
- linux: Set tst-pidfd-consts unsupported for kernels headers older than 5.10
- testrun.sh: Support passing strace and valgrind arguments
- Linux: Adjust struct rseq definition to current kernel version
- iconv: Use 64 bit stat for gconv_parseconfdir (BZ# 29213)
- catgets: Use 64 bit stat for __open_catalog (BZ# 29211)
- inet: Use 64 bit stat for ruserpass (BZ# 29210)
- socket: Use 64 bit stat for isfdtype (BZ# 29209)
- posix: Use 64 bit stat for fpathconf (_PC_ASYNC_IO) (BZ# 29208)
- posix: Use 64 bit stat for posix_fallocate fallback (BZ# 29207)
- misc: Use 64 bit stat for getusershell (BZ# 29203)
- misc: Use 64 bit stat for daemon (BZ# 29203)
- linux: use statx for fstat if neither newfstatat nor fstatat64 is present
- Add MADV_DONTNEED_LOCKED from Linux 5.18 to bits/mman-linux.h
- Add HWCAP2_MTE3 from Linux 5.18 to AArch64 bits/hwcap.h
- i686: Use generic sincosf implementation for SSE2 version
- benchtests: Add workload name for sincosf
- i686: Use generic sinf implementation for SSE2 version
- i686: Use generic cosf implementation for SSE2 version
- benchtests: Add workload name for cosf
- x86_64: Optimize sincos where sin/cos is optimized (bug 29193)
- manual: fix reference to source file
- Add SOL_SMC from Linux 5.18 to bits/socket.h
- elf: Remove _dl_skip_args
- x86_64: Remove _dl_skip_args usage
- sparc: Remove _dl_skip_args usage
- sh: Remove _dl_skip_args usage
- s390: Remove _dl_skip_args usage
- riscv: Remove _dl_skip_args usage
- nios2: Remove _dl_skip_args usage (BZ# 29187)
- mips: Remove _dl_skip_args usage
- microblaze: Remove _dl_skip_args usage
- m68k: Remove _dl_skip_args usage
- ia64: Remove _dl_skip_args usage
- i686: Remove _dl_skip_args usage
- hppa: Remove _dl_skip_args usage (BZ# 29165)
- csky: Remove _dl_skip_args usage
- arc: Remove _dl_skip_args usage
- arm: Remove _dl_skip_args usage
- alpha: Remove _dl_skip_args usage
- benchtests: Improve benchtests for strstr, memmem, and memchr
- dlsym: Make RTLD_NEXT prefer default version definition [BZ #14932]
- x86-64: Ignore r_addend for R_X86_64_GLOB_DAT/R_X86_64_JUMP_SLOT
- x86_64: Implement evex512 version of strlen, strnlen, wcslen and wcsnlen
- Update kernel version to 5.18 in header constant tests
- String: Improve overflow test coverage for strnlen
2022-06-06 12:29:45 -04:00
Sergey Kolosov ab4bc8a24e Extend the test coverage
Move some of the RHEL QE testcases upstream to Fedora.
2022-05-31 09:29:27 +02:00
Arjun Shankar 221d1d8371 Auto-sync with upstream branch master
Upstream commit: 3d9926663cba19f40d26d8a8ab3b2a7cc09ffb13

- Update syscall-names.list for Linux 5.18
- Fix deadlock when pthread_atfork handler calls pthread_atfork or dlclose
- Use Linux 5.18 in build-many-glibcs.py
- stdio-common: Simplify printf_unknown interface in vfprintf-internal.c
- stdio-common: Move union printf_arg int <printf.h>
- stdio-common: Add printf specifier registry to <printf.h>
- elf/dl-reloc.c: Copyright The GNU Toolchain Authors
- benchtests: Improve bench-strnlen.c
- math: Add math-use-builtins-fabs (BZ#29027)
- linux: Add CLONE_NEWTIME from Linux 5.6 to bits/sched.h
- Revert "[ARM][BZ #17711] Fix extern protected data handling"
- Revert "[AArch64][BZ #17711] Fix extern protected data handling"
- elf: Rewrite long RESOLVE_MAP macro to an always_inline static function
2022-05-26 00:15:13 +02:00
DJ Delorie 1d46c32e74 Auto-sync with upstream branch master II
Forgot the source tarball...
2022-05-23 18:02:48 -04:00
DJ Delorie 9a389a777e Auto-sync with upstream branch master
Upstream commit 748df8126ac69e68e0b94e236ea3c2e11b1176cb

- dlfcn: Move RTLD_DEFAULT/RTLD_NEXT outside __USE_GNU
- elf: Optimize _dl_new_hash in dl-new-hash.h
- nss: Optimize nss_hash in nss_hash.c
- benchtests: Add benchtests for dl_elf_hash, dl_new_hash and nss_hash
- nss: Add tests for the nss_hash in nss_hash.h
- elf: Add tests for the dl hash funcs (_dl_new_hash and _dl_elf_hash)
- elf: Refactor dl_new_hash so it can be tested / benchmarked
- locale: Add more cached data to LC_CTYPE
- locale: Remove private union from struct __locale_data
- locale: Remove cleanup function pointer from struct __localedata
- locale: Call _nl_unload_locale from _nl_archive_subfreeres
- stdio-common: Add tst-memstream-string for open_memstream overflow
- __printf_fphex always uses LC_NUMERIC
- vfprintf: Consolidate some multibyte/wide character processing
- vfprintf: Move argument processing into vfprintf-process-arg.c
- stdio-common: Add tst-vfprintf-width-i18n to cover numeric field width
- string.h: fix __fortified_attr_access macro call [BZ #29162]
- Enable DT_RELR in glibc shared libraries and PIEs automatically
- S390: Enable static PIE
- linux: Add tst-pidfd.c
- linux: Add P_PIDFD
- linux: Add pidfd_send_signal
- linux: Add pidfd_getfd
- linux: Add pidfd_open
- aarch64: Move ld.so _start to separate file and drop _dl_skip_args
- linux: Add a getauxval test [BZ #23293]
- rtld: Remove DL_ARGV_NOT_RELRO and make _dl_skip_args const
- rtld: Use generic argv adjustment in ld.so [BZ #23293]
- scripts/glibcelf.py: Add *T_RISCV_* constants
- Remove dl-librecon.h header.
- elf: Remove ldconfig kernel version check
- Remove kernel version check
- linux: Use /sys/devices/system/cpu on __get_nprocs_conf (BZ#28991)
- csu: Implement and use _dl_early_allocate during static startup
- Linux: Introduce __brk_call for invoking the brk system call
- sys/cdefs.h: Do not require C++ compilers to define __STDC__
- fortify: Ensure that __glibc_fortify condition is a constant [BZ #29141]
- Update RISC-V specific ELF definitions
2022-05-23 14:48:40 -04:00
Arjun Shankar eb33d47394 Auto-sync with upstream branch master
Upstream commit: 9403b71ae97e3f1a91c796ddcbb4e6f044434734

- x86_64: Remove bzero optimization
- RISC-V: Use an autoconf template to produce `preconfigure'
- MIPS: Use an autoconf template to produce `preconfigure'
- m68k: Use an autoconf template to produce `preconfigure'
- C-SKY: Use an autoconf template to produce `preconfigure'
- Remove configure fno_unit_at_a_time
- stdio: Remove the usage of $(fno-unit-at-a-time) for siglist.c
- stdio: Remove the usage of $(fno-unit-at-a-time) for errlist.c
- Add declare_object_symbol_alias for assembly codes (BZ #28128)
- wcrtomb: Make behavior POSIX compliant
2022-05-16 15:16:02 +02:00
Patsy Griffin deac763a04 Auto-sync with upstream branch master
Upstream commit: 8162147872491bb5b48e91543b19c49a29ae6b6d

- nptl: Add backoff mechanism to spinlock loop
- Linux: Implement a useful version of _startup_fatal
- ia64: Always define IA64_USE_NEW_STUB as a flag macro
- linux: Fix posix_spawn return code if clone fails (BZ#29109)
- benchtests: Add wcrtomb microbenchmark
- clock_settime/clock_gettime: Use __nonnull to avoid null pointer
- clock_adjtime: Use __nonnull to avoid null pointer
- ntp_xxxtimex: Use __nonnull to avoid null pointer
- adjtimex/adjtimex64: Use __nonnull to avoid null pointer
- hurd spawni: Fix reauthenticating closed fds
- Linux: Define MMAP_CALL_INTERNAL
- i386: Honor I386_USE_SYSENTER for 6-argument Linux system calls
- i386: Remove OPTIMIZE_FOR_GCC_5 from Linux libc-do-syscall.S
- manual: Clarify that abbreviations of long options are allowed
2022-05-10 17:42:01 -04:00
Florian Weimer e07803b911 Auto-sync with upstream branch master
Upstream commit: 8e28aa3a51bf0ef3683f2aed4b5b448744897b66

- elf: Remove fallback to the start of DT_STRTAB for dladdr
- powerpc32: Remove unused HAVE_PPC_SECURE_PLT
- dlfcn: Implement the RTLD_DI_PHDR request type for dlinfo
- manual: Document the dlinfo function
- Do not use --hash-style=both for building glibc shared objects
- benchtests: Better libmvec integration
- benchtests: Add UNSUPPORTED benchmark status
- linux: Fix fchmodat with AT_SYMLINK_NOFOLLOW for 64 bit time_t (BZ#29097)
- Use __ehdr_start rather than _begin in _dl_start_final
- sysdeps: Add 'get_fast_jitter' interace in fast-jitter.h
- posix/glob.c: update from gnulib
- benchtests: Add pthread-mutex-locks bench
- linux: Fix missing internal 64 bit time_t stat usage
- elf: Fix DFS sorting algorithm for LD_TRACE_LOADED_OBJECTS with missing libraries (BZ #28868)
- posix: Remove unused definition on _Fork
- NEWS: Mention DT_RELR support
- elf: Add more DT_RELR tests
- elf: Properly handle zero DT_RELA/DT_REL values
- elf: Support DT_RELR relative relocation format [BZ #27924]
- Add GLIBC_ABI_DT_RELR for DT_RELR support
- elf: Define DT_RELR related macros and types
- elf: Replace PI_STATIC_AND_HIDDEN with opposite HIDDEN_VAR_NEEDS_DYNAMIC_RELOC
- i386: Regenerate ulps
- dlfcn: Do not use rtld_active () to determine ld.so state (bug 29078)
- INSTALL: Rephrase -with-default-link documentation
2022-05-03 09:27:11 +02:00
Carlos O'Donell 1be721e225 Auto-sync with upstream branch master
Upstream commit: 1305edd42c44fee6f8660734d2dfa4911ec755d6

- elf: Move post-relocation code of _dl_start into _dl_start_final
- misc: Fix rare fortify crash on wchar funcs. [BZ 29030]
- elf: Remove unused enum allowmask
- scripts/glibcelf.py: Mark as UNSUPPORTED on Python 3.5 and earlier
- x86: Optimize {str|wcs}rchr-evex
- x86: Optimize {str|wcs}rchr-avx2
- x86: Optimize {str|wcs}rchr-sse2
- benchtests: Improve bench-strrchr
- x86-64: Fix SSE2 memcmp and SSSE3 memmove for x32
- Default to --with-default-link=no (bug 25812)
- scripts: Add glibcelf.py module
- Add locale for syr_SY
- elf: Move elf_dynamic_do_Rel RTLD_BOOTSTRAP branches outside
- m68k: Handle fewer relocations for RTLD_BOOTSTRAP (#BZ29071)
- nptl: Fix pthread_cancel cancelhandling atomic operations
- x86: Fix missing __wmemcmp def for disable-multiarch build
- elf: Remove __libc_init_secure
2022-04-26 09:21:36 -04:00
DJ Delorie b72082ecfb Auto-sync with upstream branch master
Upstream commit: 78fb88827362fbd2cc8aa32892ae5b015106e25c

- mips: Fix mips64n32 64 bit time_t stat support (BZ#29069)
- x86: Cleanup page cross code in memcmp-avx2-movbe.S
- x86: Remove memcmp-sse4.S
- x86: Optimize memcmp SSE2 in memcmp.S
- misc: Use 64 bit time_t interfaces on syslog
- misc: syslog: Move SYSLOG_NAME to USE_MISC (BZ #16355)
- misc: syslog: Use fixed-sized buffer and remove memstream
- misc: syslog: Simplify implementation
- misc: syslog: Fix indentation and style
- misc: Add syslog test
- support: Add xmkfifo
- stdio: Split __get_errname definition from errlist.c
- x86: Reduce code size of mem{move|pcpy|cpy}-ssse3
- x86: Remove mem{move|cpy}-ssse3-back
- x86: Remove str{p}{n}cpy-ssse3
- x86: Remove str{n}cat-ssse3
- x86: Remove str{n}{case}cmp-ssse3
- x86: Remove {w}memcmp-ssse3
- nptl: Handle spurious EINTR when thread cancellation is disabled (BZ#29029)
- S390: Add new s390 platform z16.
- Replace {u}int_fast{16|32} with {u}int32_t
- stdlib: Reflow and sort most variable assignments
- elf: Fix memory leak in _dl_find_object_update (bug 29062)
- hurd: Define ELIBEXEC
- hurd: Fix arbitrary error code
- NEWS: Move PLT tracking slowdown to glibc 2.35.
- Remove _dl_skip_args_internal declaration
- test-container: Fix "unused code" warnings on HURD
- Add .clang-format style file
- manual: Avoid name collision in libm ULP table [BZ #28956]
2022-04-19 17:40:07 -04:00
Sergey Kolosov 12a09a5e16 Regression/locale-archive-test: removes glibc-minimal-langpack 2022-04-14 13:33:52 +00:00
Sergey Kolosov 157efe36a2 adds Regression/locale-archive-test(glibc-all-langpacks) test 2022-04-14 13:33:52 +00:00
Arjun Shankar fc64649722 Auto-sync with upstream branch master
Upstream commit: 1a85970f41ea1e5abe6da2298a5e8fedcea26b70

- powerpc: Relocate stinfo->main
- powerpc64: Set up thread register for _dl_relocate_static_pie
- powerpc64: Use medium model toc accesses throughout
- linux: Constify rfv variable in dl_vdso_vsym
- string: Replace outdated comments in strlen().
- S390: Fix elf/tst-audit25[ab]
- sparc64: Remove fcopysign{f} implementation
- alpha: Remove fcopysign{f} implementation
- math: Use builtin for ldbl-96 copysign
- ia64: Remove fcopysign{f} implementation
- x86: Remove fcopysign{f} implementation
- powerpc: Remove fcopysign{f} implementation
- Add rif_MA locale [BZ #27781]
- tests/string: Drop simple/stupid/builtin tests
- test-memcpy: Actually reverse source and destination
- benchtests: Only build libmvec benchmarks iff $(build-mathvec) is set
2022-04-12 02:02:11 +02:00
Florian Weimer 880449658c Add missing newline to %changelog 2022-04-05 17:41:52 +02:00
Florian Weimer e900cd3e77 Auto-sync with upstream branch master
Upstream commit: 053fe273434056f551ed8f81daf750db9dab5931

- linux: Fix __closefrom_fallback iterates until max int (BZ#28993)
- Remove -z combreloc and HAVE_Z_COMBRELOC
- sparc: Remove s_abs implementations
- ia64: Remove fabs implementations
- x86: Remove fabs{f} implementation
- alpha: Remove s_abs implementations
- Allow for unpriviledged nested containers
- Increase the test timeout of some string tests
- realpath: Bring back GNU extension on ENOENT and EACCES [BZ #28996]
- stdlib: Fix tst-getrandom memcmp call
- stdlib: Fix tst-rand48.c printf types
- elf: Remove unused functions from tst-audit25(a,b)
- nptl: Use libc-diag.h with tst-thread-setspecific
- crypt: Remove unused variable on cert test
- elf: Remove unused variables in tests
- elf: Fix wrong fscanf usage on tst-pldd
- posix: Remove unused variable on tst-_Fork.c
- resolv: Initialize loop variable on tst-resolv-trailing
- locale: Remove set but unused variable on ld-collate.c
- localedate: Fix printf type on tst_mbrtowc
- localedata: Remove unused variables in tests
- x86: Small improvements for wcslen
- x86: Small improvements for wcscpy-ssse3
- debug: Improve fdelt_chk error message
- Add HWCAP2_AFP, HWCAP2_RPRES from Linux 5.17 to AArch64 bits/hwcap.h
- x86: Remove AVX str{n}casecmp
- x86: Add EVEX optimized str{n}casecmp
- x86: Add AVX2 optimized str{n}casecmp
- string: Expand page cross test cases in test-strncmp.c
- string: Expand page cross test cases in test-strcmp.c
- x86: Optimize str{n}casecmp TOLOWER logic in strcmp-sse42.S
- x86: Optimize str{n}casecmp TOLOWER logic in strcmp.S
- string: Expand page cross tests in test-strncasecmp.c
- string: Expand page cross tests in test-strcasecmp.c
- benchtests: Use json-lib in bench-strncasecmp.c
- benchtests: Use json-lib in bench-strcasecmp.c
- x86: Fix fallback for wcsncmp_avx2 in strcmp-avx2.S [BZ #28896]
- x86: Remove strspn-sse2.S and use the generic implementation
- x86: Remove strpbrk-sse2.S and use the generic implementation
- x86: Remove strcspn-sse2.S and use the generic implementation
- x86: Optimize strspn in strspn-c.c
- x86: Optimize strcspn and strpbrk in strcspn-c.c
- benchtests: Use json-lib in bench-strspn.c
- benchtests: Use json-lib in bench-strpbrk.c
- x86: Code cleanup in strchr-evex and comment justifying branch
- x86: Code cleanup in strchr-avx2 and comment justifying branch
- benchtests: Add random benchmark in bench-strchr.c
- benchtests: Use json-lib in bench-strchr.c
- Update kernel version to 5.17 in tst-mman-consts.py
- iconvdata: Fix enum type on UTF-7
- nscd: Remove unused variable
- support: Fix support_process_state_wait path size calculation
- support: Remove unused extract_8 function
- locale: Remove ununsed wctype_table_get function
- gmon: Remove unused sprofil.c functions
- Update syscall lists for Linux 5.17
- Fix ununsed fstatat64_time64_statx
- malloc: Fix duplicate inline for do_set_mxfast
- elf: Remove inline _dl_dprintf
- configure.ac: fix bashisms in configure.ac
- getaddrinfo: Refactor code for readability
- Use Linux 5.17 in build-many-glibcs.py
- resolv: Fix unaligned accesses to fields in HEADER struct
- gai_init: Avoid jumping from if condition to its else counterpart
- gaiconf_init: Refactor some bits for readability
- gethosts: Return EAI_MEMORY on allocation failure
- gaih_inet: Split result generation into its own function
- gaih_inet: split loopback lookup into its own function
- gaih_inet: make gethosts into a function
- gaih_inet: separate nss lookup loop into its own function
- gaih_inet: Split nscd lookup code into its own function.
- gaih_inet: Split simple gethostbyname into its own function
- gaih_inet: make numeric lookup a separate routine
- gaih_inet: Simplify service resolution
- getaddrinfo: Fix leak with AI_ALL [BZ #28852]
- gaih_inet: Simplify canon name resolution
- Simplify allocations and fix merge and continue actions [BZ #28931]
- iconv: Add UTF-7-IMAP variant in utf-7.c
- iconv: make utf-7.c able to use variants
- iconv: Better mapping to RFC for UTF-7
- iconv: Always encode "optional direct" UTF-7 characters
- stdio-common: Add wide stream coverage to tst-vfprintf-user-type
- libio: Flush-only _IO_str_overflow must not return EOF (bug 28949)
- libio: Convert tst_swprintf to the test framework
- scripts/dso-ordering-test.py: Fix C&P error in * callrefs processing
- stdio-common: Generate ja_JP.EUC-JP locale
- stdio-common: Re-flow and sort Makefile variables
- nss: Sort tests and tests-container and put one test per line
- benchtests: Use "=" instead of ":=" [BZ #28970]
- hppa: Use END instead of PSEUDO_END in swapcontext.S
* Tue Mar 15 2022 DJ Delorie <dj@redhat.com> - 2.35.9000-11
- Auto-sync with upstream branch master,
  commit d05e6dc8d1032e1732542a48e0fb895432008b6e.
- hppa: Implement swapcontext in assembler (bug 28960)
- associate a deallocator for iconv_open
- associate a deallocation for opendir
- Add access function attributes to epoll_wait
- Add access function attributes to grp and shadow headers
- Define ISO 639-3 "tok" [BZ #28950]
- nss: Protect against errno changes in function lookup (bug 28953)
- nss: Do not mention NSS test modules in <gnu/lib-names.h>
- malloc: Exit early on test failure in tst-realloc
- Add some missing access function attributes
- libio: Ensure output buffer for wchars (bug #28828)
- inet: Return EAI_MEMORY when nrl_domainname() fails to allocate memory
- inet: Remove strdupa from nrl_domainname()
- inet: Fix getnameinfo (NI_NOFQDN) race condition (BZ#28566)
- benchtests: make compare_strings.py accept string as attribute value
2022-04-05 17:32:38 +02:00
DJ Delorie 98fe3887bc Auto-sync with upstream branch master
Upstream commit: d05e6dc8d1032e1732542a48e0fb895432008b6e

- hppa: Implement swapcontext in assembler (bug 28960)
- associate a deallocator for iconv_open
- associate a deallocation for opendir
- Add access function attributes to epoll_wait
- Add access function attributes to grp and shadow headers
- Define ISO 639-3 "tok" [BZ #28950]
- nss: Protect against errno changes in function lookup (bug 28953)
- nss: Do not mention NSS test modules in <gnu/lib-names.h>
- malloc: Exit early on test failure in tst-realloc
- Add some missing access function attributes
- libio: Ensure output buffer for wchars (bug #28828)
- inet: Return EAI_MEMORY when nrl_domainname() fails to allocate memory
- inet: Remove strdupa from nrl_domainname()
- inet: Fix getnameinfo (NI_NOFQDN) race condition (BZ#28566)
- benchtests: make compare_strings.py accept string as attribute value
2022-03-15 15:32:25 -04:00
Florian Weimer 18a434fccf Trim changelog 2022-03-15 08:57:44 +01:00
Florian Weimer 9050623a8c Remove downstream-only workaround patches for ppc64le, gettext 2022-03-10 10:33:17 +01:00
Arjun Shankar 37b89add0a Drop glibc-rh1070416.patch
It was an nscd related patch and no longer relevant since we don't
provide nscd any more.
2022-03-09 14:47:49 +01:00
Arjun Shankar ca8ff78a60 Auto-sync with upstream branch master
Upstream commit: 6de743a4e31a94e3d022e64a90c9082290a5a573

- x86_64: Fix code formatting of vectorized math functions
- pthread: Do not overwrite tests-time64
- x86_64: Fix svml_s_acosf16_core_avx512.S code formatting
- i386: Remove libc-do-syscall from sysdep-dl-routines [BZ #28936]
- linux/i386: remove dead assignment of sysdep-dl-routines
2022-03-08 17:21:01 +01:00
Siddhesh Poyarekar 93272df772 Fix gettext version check to accommodate snapshot builds in rawhide
If the gettext snapshots are deemed official upstream,
glibc-gettext-snapshot-versioncheck.patch will be posted upstream.
2022-03-08 20:24:19 +05:30
Carlos O'Donell 2b9524042d Auto-sync with upstream branch master
Upstream commit: 2bbc694df279020a6620096d31c1e05c93966f9b

- nptl: Fix cleanups for stack grows up [BZ# 28899]
- manual: SA_ONSTACK is ignored without alternate stack
- io: Add fsync call in tst-stat
- Linux: Consolidate auxiliary vector parsing (redo)
2022-03-01 23:56:46 -05:00
Arjun Shankar 199391c59d Auto-sync with upstream branch master
Upstream commit: 1fe00d3eb602a0754873b536dc92fb6226759ee4

- build: Properly generate .d dependency files [BZ #28922]
- benchtests: Generate .d dependency files [BZ #28922]
- benchtests: Remove duplicated loop in bench-bzero-walk.c
- localedata: Do not generate output if warnings were present.
- localedef: Update LC_MONETARY handling (Bug 28845)
- localedef: Handle symbolic links when generating locale-archive
- benchtests: Add small sizes (<= 64) to bench-bzero-walk.c
- math: Add more input to atanh accuracy tests
- resolv: Fix tst-resolv tests for 2.35 ABIs and later
- x86_64: Disable libmvec tests if multiarch not enabled [BZ# 28869]
- benchtests: Add benches for memset with 0 value
- i686: Remove bzero optimizations
- s390: Remove bzero optimizations
- powerpc: Remove powerpc64 bzero optimizations
- powerpc: Remove powerpc32 bzero optimizations
- sparc: Remove bzero optimization
- ia64: Remove bzero optimization
- alpha: Remove bzero optimization
- x86_64: Remove bcopy optimizations
- i386: Remove bcopy optimizations
- powerpc: Remove bcopy optimizations
- ia64: Remove bcopy
- hppa: Fix warnings from _dl_lookup_address
- hppa: Revise gettext trampoline design

This auto-sync includes the actual localedef fix for bug 2057697.
That bug was worked around in commit e2ef526535.  The comment
relating to the workaround is also removed.

Related: #2057697
2022-02-26 01:32:37 +01:00
Carlos O'Donell e2ef526535 Fix locale-archive generation (#2057697)
Resolves: #2057697
2022-02-23 23:12:00 -05:00
Carlos O'Donell 6079b05db6 Do not assert if systemctl fails to execute.
It should be a soft failure if systemctl fails to execute
and we cannot restart all the daemons.
2022-02-22 15:39:33 -05:00
Carlos O'Donell da2736300e Auto-sync with upstream branch master
Upstream commit: fdc1ae67fef27eea1445bab4bdfe2f0fb3bc7aa1

- Add SOL_MPTCP, SOL_MCTP from Linux 5.16 to bits/socket.h
- elf: Check invalid hole in PT_LOAD segments [BZ #28838]
- realpath: Do not copy result on failure (BZ #28815)
- x86: Fix TEST_NAME to make it a string in tst-strncmp-rtm.c
- x86: Test wcscmp RTM in the wcsncmp overflow case [BZ #28896]
- hppa: Fix swapcontext
- x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #28896]
- string: Add a testcase for wcsncmp with SIZE_MAX [BZ #28755]
- microblaze: Use the correct select syscall (BZ #28883)
- Update kernel version to 5.16 in tst-mman-consts.py
- pthread: Use 64 bit time_t stat internally for sem_open (BZ #28880)
- x86: Fix bug in strncmp-evex and strncmp-avx2 [BZ #28895]
- String: Strength memset tests in test-memset.c
- x86-64: Define __memcmpeq in ld.so
- htl: Destroy thread-specific data before releasing joins
- htl: Fix initializing the key lock
- mach: Fix LLL_SHARED value
- htl: Make pthread_[gs]etspecific not check for key validity
- x86-64: Remove bzero weak alias in SS2 memset
- hppa: Fix typo
- linux: Use socket-constants-time64.h on tst-socket-timestamp-compat
- x86/configure.ac: Define PI_STATIC_AND_HIDDEN/SUPPORT_STATIC_PIE
- Fix elf/tst-audit2 on hppa
- x86: Use CHECK_FEATURE_PRESENT on PCONFIG
- x86: Don't check PTWRITE in tst-cpu-features-cpuinfo.c
- x86: Set .text section in memset-vec-unaligned-erms
- Linux: Include <dl-auxv.h> in dl-sysdep.c only for SHARED
- Revert "Linux: Consolidate auxiliary vector parsing"
- String: Ensure 'MIN_PAGE_SIZE' is multiple of 'getpagesize'
- Use binutils 2.38 branch in build-many-glibcs.py
- elf: Remove LD_USE_LOAD_BIAS
- malloc: Remove LD_TRACE_PRELINKING usage from mtrace
- elf: Remove prelink support
- Linux: Consolidate auxiliary vector parsing
- Linux: Assume that NEED_DL_SYSINFO_DSO is always defined
- Linux: Remove DL_FIND_ARG_COMPONENTS
- Linux: Remove HAVE_AUX_SECURE, HAVE_AUX_XID, HAVE_AUX_PAGESIZE
- elf: Merge dl-sysdep.c into the Linux version
- hppa: Fix bind-now audit (BZ #28857)
2022-02-22 15:29:33 -05:00
Zbigniew Jędrzejewski-Szmek 08e0ad8f78 Rewrite scriptlets to call /sbin/ldconfig in lua
The scriptlet in glibc adds a dependency on bash to glibc-common,
which is required by glibc, so effectively the whole world depends on
bash. By rewriting the script in lua we drop this dependency, and also
to avoid a (bogus?) warning from rpm about a dependency loop.

If the call fails, an error is printed but the transaction is not failed.
(The original script didn't have "|| :", so the return value from
/sbin/ldconfig would be the return value from the script, causing
the transaction to fail.)

Quoting https://bugzilla.redhat.com/show_bug.cgi?id=2018913#c34:

warning: SCC #1: 5 members (5 external dependencies)
warning:        glibc-2.35-2.fc37.x86_64
warning:                -> glibc-minimal-langpack-2.35-2.fc37.x86_64
warning:                -> glibc-common-2.35-2.fc37.x86_64
warning:        ncurses-libs-6.2-9.20210508.fc36.x86_64
warning:                -> glibc-2.35-2.fc37.x86_64
warning:        bash-5.1.16-2.fc36.x86_64
warning:                -> ncurses-libs-6.2-9.20210508.fc36.x86_64
warning:                -> glibc-2.35-2.fc37.x86_64
warning:        glibc-common-2.35-2.fc37.x86_64
warning:                -> glibc-2.35-2.fc37.x86_64
warning:                -> bash-5.1.16-2.fc36.x86_64
warning:        glibc-minimal-langpack-2.35-2.fc37.x86_64
warning:                -> glibc-common-2.35-2.fc37.x86_64
warning:                -> glibc-2.35-2.fc37.x86_64

If we look into SCC #1, bash obviously requires glibc because it links
to it. The loop is created by glibc → glibc-common → bash, because
glibc-common has %transfiletriggerin and %transfiletriggerpostun using
bash to call /sbin/ldconfig.

https://github.com/coreos/rpm-ostree/pull/3453 provides a workaround
so that rpm-ostree doesn't choke on this.
2022-02-22 20:38:30 +01:00
Zbigniew Jędrzejewski-Szmek f6ed6cf018 Use rpm.execute() instead of an open-coded variant
See https://rpm-software-management.github.io/rpm/manual/lua.html and
298bb60a9f/rpmio/rpmlua.c (L806-L829)

assert() is not used because it seems better to ignore the error.  The
old code would assert on exec(), but not on fork(), and it would not
check the return value either. But if the call fails (for any reason),
an error is printed. At least iconvconfig just seems to fail quietly
in case of a problem.
2022-02-22 20:37:07 +01:00
Zbigniew Jędrzejewski-Szmek 4f7d89c5d3 Use %{expand} and %global
Our packaging guidelines say that %global is preferred, and
with %{expand} the line continuations can be removed.
2022-02-22 19:55:39 +01:00
Arjun Shankar a0bdca4f3f locale: symlink identical langpack LC_CTYPEs to the C.utf8 version
Almost half the LC_CTYPE files in langpacks are identical to the C.utf8
variant which is installed by default.  This commit converts these to
symbolic links instead, saving ~350K of installed size per langpack.

Reviewed-by: Florian Weimer <fweimer@redhat.com>
2022-02-15 12:11:07 +01:00
Arjun Shankar cf979ff812 locale: make install-locale-files instead of install-locales
glibc-fedora-localedef.patch was altering the install-locales target so
that it does not generate a locale-archive.

This commit drops the patch and uses the install-locale-files target
instead of install-locales.  install-locale-files does not generate
locale-archive, and does not group identical locale files via hardlinks.

hardlink is also passed a -c flag so that it actually compares file
contents and hardlinks identical ones.
2022-02-10 12:00:48 +01:00
Arjun Shankar 12d74d739e Correct NVR in changelog entry 2022-02-10 11:47:40 +01:00
Sergey Kolosov 4df8fd5b19 tests: removes uneeded PURPOSE files 2022-02-09 20:39:42 +01:00
Sergey Kolosov 7b4342f3e8 tests/Regression/bz2007417-glibc-ldd-segfaults-when-inspecting: fixes multiple vdso64.so files procession 2022-02-09 20:38:49 +01:00
Florian Weimer 17eea2064a Auto-sync with upstream branch master
Upstream commit: 3d9f171bfb5325bd5f427e9fc386453358c6e840

- x86-64: Optimize bzero
- benchtests: Add benches for bzero
- linux: fix accuracy of get_nprocs and get_nprocs_conf [BZ #28865]
- x86: Remove SSSE3 instruction for broadcast in memset.S (SSE2 Only)
- benchtests: Sort benches in Makefile
- Benchtests: Add length zero benchmark for memset in bench-memset.c
- x86: Improve vec generation in memset-vec-unaligned-erms.S
- x86-64: Add vector tan/tanf to libmvec microbenchmark
- x86-64: Add vector erfc/erfcf to libmvec microbenchmark
- x86-64: Add vector asinh/asinhf to libmvec microbenchmark
- x86-64: Add vector tanh/tanhf to libmvec microbenchmark
- x86-64: Add vector erf/erff to libmvec microbenchmark
- x86-64: Add vector acosh/acoshf to libmvec microbenchmark
- x86-64: Add vector atanh/atanhf to libmvec microbenchmark
- x86-64: Add vector log1p/log1pf to libmvec microbenchmark
- x86-64: Add vector log2/log2f to libmvec microbenchmark
- x86-64: Add vector log10/log10f to libmvec microbenchmark
- x86-64: Add vector atan2/atan2f to libmvec microbenchmark
- x86-64: Add vector cbrt/cbrtf to libmvec microbenchmark
- x86-64: Add vector sinh/sinhf to libmvec microbenchmark
- x86-64: Add vector expm1/expm1f to libmvec microbenchmark
- x86-64: Add vector cosh/coshf to libmvec microbenchmark
- x86-64: Add vector exp10/exp10f to libmvec microbenchmark
- x86-64: Add vector exp2/exp2f to libmvec microbenchmark
- x86-64: Add vector hypot/hypotf to libmvec microbenchmark
- x86-64: Add vector asin/asinf to libmvec microbenchmark
- x86-64: Add vector atan/atanf to libmvec microbenchmark
- elf: Replace tst-audit24bmod2.so with tst-audit24bmod2
- x86_64/multiarch: Sort sysdep_routines and put one entry per line
- string: Sort headers, routines, tests and tests-translation
- x86: Improve L to support L(XXX_SYMBOL (YYY, ZZZ))
- Benchtests: move 'alloc_bufs' from loop in bench-memset.c
- x86-64: Fix strcmp-evex.S
- x86-64: Fix strcmp-avx2.S
- x86-64: Add vector acos/acosf to libmvec microbenchmark
- benchtests: Add more coverage for strcmp and strncmp benchmarks
- x86: Optimize strcmp-evex.S
- x86: Optimize strcmp-avx2.S
- string: Improve coverage in test-strcmp.c and test-strncmp.c
- string/test-str*cmp: remove stupid_[strcmp, strncmp, wcscmp, wcsncmp].
- Open master branch for glibc 2.36 development
2022-02-09 13:17:44 +01:00
Florian Weimer 6d97bdd7b3 Mention GCC bug in glibc-temp-ibmldbl64.patch 2022-02-08 16:37:47 +01:00
Florian Weimer a7b71f9f73 Auto-sync with upstream branch release/2.35/master
Upstream commit: 24962427071fa532c3c48c918e9d64d719cc8a6c

- Add BZ#28860 reference on NEWS
- linux: Fix missing __convert_scm_timestamps (BZ #28860)
2022-02-08 15:53:22 +01:00
Florian Weimer f155668f01 Auto-sync with upstream branch release/2.35/master
Upstream commit: a2f1675634b3513c09c38e55e6766e8c05768b1f

- linux: __get_nprocs_sched: do not feed CPU_COUNT_S with garbage [BZ #28850]
- posix: Fix tst-spawn6 terminal handling (BZ #28853)
- Regenerate configure
- Create ChangeLog.old/ChangeLog.24.
- Prepare for glibc 2.35 release.
- Regenerate configure.
- Update install.texi, and regenerate INSTALL.
- Update NEWS bug list.
- Update NEWS.
- Update translations.
- Linux: Use ptrdiff_t for __rseq_offset
- Fix elf/tst-audit25a with default bind now toolchains
- posix: Replace posix_spawnattr_tc{get,set}pgrp_np with posix_spawn_file_actions_addtcsetpgrp_np
- or1k: Define PI_STATIC_AND_HIDDEN
- SET_RELHOOK: merge i386 and x86_64, and move to sysdeps/mach/hurd/x86
- elf: Fix runtime linker auditing on aarch64 (BZ #26643)
- elf: Issue la_symbind for bind-now (BZ #23734)
- elf: Fix initial-exec TLS access on audit modules (BZ #28096)
- elf: Add la_activity during application exit
- localedata: Adjust C.UTF-8 to align with C/POSIX.
- localedef: Fix handling of empty mon_decimal_point (Bug 28847)
- malloc: Fix tst-mallocalign1 macro spacing.
2022-02-03 15:53:04 +01:00
Florian Weimer 53b2ec4663 Auto-sync with upstream branch master
Upstream commit: 3fb18fd80c5900cc82748f3320b30516c57d24da

- elf: Add <dl-r_debug.h>
- Mention _FORTIFY_SOURCE=3 for gcc12 in NEWS
- malloc: Fix -Wuse-after-free warning in tst-mallocalign1 [BZ #26779]
- Update libc.pot for 2.35 release.
- tst-socket-timestamp-compat.c: Check __TIMESIZE [BZ #28837]
- Add prelink removal plan on NEWS
- Linux: Only generate 64 bit timestamps for 64 bit time_t recvmsg/recvmmsg
- linux: Fix ancillary 64-bit time timestamp conversion (BZ #28349, BZ#28350)
- support: Add support_socket_so_timestamp_time64
- Fix elf/loadfail test build dependencies
- Fix glibc 2.34 ABI omission (missing GLIBC_2.34 in dynamic loader)
- x86: Use CHECK_FEATURE_PRESENT to check HLE [BZ #27398]
- Guard tst-valgrind-smoke.out with run-built-tests
- hurd: Add posix_spawnattr_tc{get,set}pgrp_np on libc.abilist
- Avoid -Wuse-after-free in tests [BZ #26779].
- elf: Replace tst-p_alignmod1-editX with a python script
- stdlib: Avoid -Wuse-after-free in __add_to_environ [BZ #26779]
- io: Fix use-after-free in ftw [BZ #26779]
- intl: Avoid -Wuse-after-free [BZ #26779]
- elf: Fix use-after-free in ldconfig [BZ #26779]
- posix: Add terminal control setting support for posix_spawn
2022-02-01 14:48:58 +01:00
Sergey Kolosov cdf31c9c27 adds Regression/bz2007417-glibc-ldd-segfaults-when-inspecting test case 2022-01-26 14:02:40 +00:00
DJ Delorie 1fd4834f59 Auto-sync with upstream branch master
Temporary patches to work around gcc 12 vs glibc warning
and ppc64le long double conflicts.

Upstream commit: 5b8e7980c5dabd9aaefeba4f0208baa8cf7653ee

- Linux: Detect user namespace support in io/tst-getcwd-smallbuff
- Fix handling of unterminated bracket expressions in fnmatch (bug 28792)
- realpath: Avoid overwriting preexisting error (CVE-2021-3998)
- elf: Add a test for PT_LOAD segments with invalid p_align [BZ #28688]
- elf: Add a test for PT_LOAD segments with p_align == 1 [BZ #28688]
- elf: Add a test for PT_LOAD segments with mixed p_align [BZ #28676]
- Add and use link-test-modules-rpath-link [BZ #28455]
- tst-realpath-toolong: Fix hurd build
- getcwd: Set errno to ERANGE for size == 1 (CVE-2021-3999)
- Add valgrind smoke test
- htl: Fix cleaning the reply port
- elf: Properly align all PT_LOAD segments [BZ #28676]
- realpath: Set errno to ENAMETOOLONG for result larger than PATH_MAX [BZ #28770]
- support: Add helpers to create paths longer than PATH_MAX
- nptl: Effectively skip CAS in spinlock loop
- mips: Move DT_MIPS into <ldsodefs.h>
- x86_64: Document libmvec vector functions accuracy [BZ #28766]
- x86: Black list more Intel CPUs for TSX [BZ #27398]
- elf: Fix tst-align3
- elf: Move _dl_setup_hash to its own file
- htl: Fix build error in annexc
- elf: Reinstate tst-audit17
- x86: use default cache size if it cannot be determined [BZ #28784]
- rt/tst-mqueue*: Return UNSUPPORTED when mq_open fails with ENOSYS
- Linux: Add epoll_pwait2 (BZ #27359)
- Properly handle --disable-default-pie [BZ #28780]
- elf: Fix 64 time_t support for installed statically binaries
- Revert "elf: Fix 64 time_t support for installed statically binaries"
- CVE-2022-23218: Buffer overflow in sunrpc svcunix_create (bug 28768)
- sunrpc: Test case for clnt_create "unix" buffer overflow (bug 22542)
- CVE-2022-23219: Buffer overflow in sunrpc clnt_create for "unix" (bug 22542)
- socket: Add the __sockaddr_un_set function
- elf/tst-dl_find_object: Disable subtests for non-contiguous maps (bug 28732)
- elf: Set l_contiguous to 1 for the main map in more cases
- elf: Introduce rtld_setup_main_map
- hurd: Make RPC input array parameters const
- hurd: optimize exec cleanup
- hurd: Add __rtld_execve
- hurd: Fix exec() leak on proc_task2proc failure
- htl: Hide __pthread_attr's __schedparam type [BZ #23088]
- htl: Clear kernel_thread field before releasing the thread structure
- hurd: drop SA_SIGINFO availability xfail
- hurd: Fix timer/clock_getres crash on NULL res parameter
- hurd: Fix pthread_kill on exiting/ted thread
- [hurd] Drop spurious #ifdef SHARED
- [hurd] Call _dl_sort_maps_init in _dl_sysdep_start
- elf tst-dl_find_object: Fix typo
- s390x: Use <gcc-macros.h> in early HWCAP check
- x86: Add x86-64-vN check to early startup
- powerpc64le: Use <gcc-macros.h> in early HWCAP check
- Add --with-rtld-early-cflags configure option
- elf: Split dl-printf.c from dl-misc.c
- elf/Makefile: Reflow and sort most variable assignments
- Generate gcc-macros.h
- x86: HAVE_X86_LAHF_SAHF, HAVE_X86_MOVBE and -march=x86-64-vN (bug 28782)
- math: Add more inputs to atan2 accuracy tests [BZ #28765]
- Disable debuginfod in printer tests [BZ #28757]
- Update syscall lists for Linux 5.16
- i386: Remove broken CAN_USE_REGISTER_ASM_EBP (bug 28771)
- stdlib: Fix formatting of tests list in Makefile
- stdlib: Sort tests in Makefile
- x86_64: Fix SSE4.2 libmvec atan2 function accuracy [BZ #28765]
- debug: Synchronize feature guards in fortified functions [BZ #28746]
- debug: Autogenerate _FORTIFY_SOURCE tests
- Do not build libresolv module with 64 bit time_t flags
- Revert "linux: Fix ancillary 64-bit time timestamp conversion (BZ #28349, BZ #28350)"
- Revert "support: Add support_socket_so_timestamp_time64"
- timezone: Fix tst-bz28707 Makefile rule
- linux: Fix ancillary 64-bit time timestamp conversion (BZ #28349, BZ #28350)
- support: Add support_socket_so_timestamp_time64
- elf: Fix 64 time_t support for installed statically binaries
- Enable _FORTIFY_SOURCE=3 for gcc 12 and above
- manual: Drop obsolete @refill
- aarch64: Add HWCAP2_ECV from Linux 5.16
- Use Linux 5.16 in build-many-glibcs.py
- x86: Fix __wcsncmp_evex in strcmp-evex.S [BZ# 28755]
- x86: Fix __wcsncmp_avx2 in strcmp-avx2.S [BZ# 28755]
- math: Fix float conversion regressions with gcc-12 [BZ #28713]
- elf: Simplify software TM implementation in _dl_find_object
- Restore ENTRY_POINT definition on hppa, ia64 (bug 28749)
- elf: Fix fences in _dl_find_object_update (bug 28745)
- ttydefaults.h: Fix CSTATUS to control-t
- AArch64: Check for SVE in ifuncs [BZ #28744]
- debug: Remove catchsegv and libSegfault (BZ #14913)
- Documentation for OpenRISC port
- build-many-glibcs.py: add OpenRISC support
- or1k: Build Infrastructure
- or1k: ABI lists
- or1k: Linux ABI
- or1k: Linux Syscall Interface
- or1k: math soft float support
- or1k: Atomics and Locking primitives
- or1k: Thread Local Storage support
- or1k: startup and dynamic linking code
- or1k: ABI Implementation
- linux/syscalls: Add or1k_atomic syscall for OpenRISC
- elf: Add reloc for OpenRISC
- elf: Add a comment after trailing backslashes
- elf: Also try DT_RUNPATH for LD_AUDIT dlopen [BZ #28455]
- elf: Fix tst-linkall-static link when pthread is not in libc
2022-01-25 10:25:45 -05:00
Fedora Release Engineering 4cc446aac1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-20 06:12:00 +00:00
Florian Weimer 514d6266eb Auto-sync with upstream branch master
Upstream commit: 28713c06129f8f64f88c423266e6ff2880216509

- elf: Sort tests and modules-names
- hurd: nuke all unknown ports on exec
- hurd: Fix auth port leak
- Remove stale reference to libanl.a
- elf: Add <dl-debug.h>
- Properly check linker option in LIBC_LINKER_FEATURE [BZ #28738]
- hurd: Implement _S_msg_get_dtable
- Update automatically-generated copyright dates
- Sync move-if-change from Gnulib, updating copyright
- Update copyright dates not handled by scripts/update-copyrights.
- Update copyright dates with scripts/update-copyrights
- hurd: Use __trivfs_server_name instead of trivfs_server_name
- hurd: Bump BRK_START to 0x20000000
- hurd: Avoid overzealous shared objects constraints
- time: Refactor timesize.h for some ABIs
- hurd: Make getrandom a stub inside the random translator
- open64: Force O_LARGEFILE on all architectures
- x86-64: Add vector tan/tanf implementation to libmvec
- x86-64: Add vector erfc/erfcf implementation to libmvec
- resolv: Do not install libanl.so symbolic link
- resolv: Do not build libanl.so for ABIs starting at 2.35
- timezone: test-case for BZ #28707
- timezone: handle truncated timezones from tzcode-2021d and later (BZ #28707)
- x86-64: Add vector asinh/asinhf implementation to libmvec
- x86-64: Add vector tanh/tanhf implementation to libmvec
- x86-64: Add vector erf/erff implementation to libmvec
- x86-64: Add vector acosh/acoshf implementation to libmvec
- x86-64: Add vector atanh/atanhf implementation to libmvec
- x86-64: Add vector log1p/log1pf implementation to libmvec
- x86-64: Add vector log2/log2f implementation to libmvec
- x86-64: Add vector log10/log10f implementation to libmvec
- x86-64: Add vector atan2/atan2f implementation to libmvec
- x86-64: Add vector cbrt/cbrtf implementation to libmvec
- x86-64: Add vector sinh/sinhf implementation to libmvec
- x86-64: Add vector expm1/expm1f implementation to libmvec
- x86-64: Add vector cosh/coshf implementation to libmvec
- x86-64: Add vector exp10/exp10f implementation to libmvec
- x86-64: Add vector exp2/exp2f implementation to libmvec
- x86-64: Add vector hypot/hypotf implementation to libmvec
- x86-64: Add vector asin/asinf implementation to libmvec
- x86-64: Add vector atan/atanf implementation to libmvec
2022-01-04 15:54:08 +01:00
Florian Weimer 8d17a555f4 Auto-sync with upstream branch master
Upstream commit: 5d28a8962dcb6ec056b81d730e3c6fb57185a210

- elf: Add _dl_find_object function
- malloc: Remove memusage.h
- malloc: Use hp-timing on libmemusage
- Remove atomic-machine.h atomic typedefs
- malloc: Remove atomic_* usage
- microblaze: Add missing implementation when !__ASSUME_TIME64_SYSCALLS
- elf: Do not fail for failed dlmopen on audit modules (BZ #28061)
- elf: Issue audit la_objopen for vDSO
- elf: Add audit tests for modules with TLSDESC
- elf: Avoid unnecessary slowdown from profiling with audit (BZ#15533)
- elf: Add _dl_audit_pltexit
- elf: Add _dl_audit_pltenter
- elf: Add _dl_audit_preinit
- elf: Add _dl_audit_symbind_alt and _dl_audit_symbind
- elf: Add _dl_audit_objclose
- elf: Add _dl_audit_objsearch
- elf: Add _dl_audit_activity_map and _dl_audit_activity_nsid
- elf: Add _dl_audit_objopen
- hurd: Fix static-PIE startup
- hurd: let csu initialize tls
- hurd: Fix XFAIL-ing mallocfork2 tests
- hurd: XFAIL more tests that require setpshared support
- malloc: Add missing shared thread library flags
- stdio-common: Fix %m sprintf test output for GNU/Hurd
- x86: Optimize L(less_vec) case in memcmpeq-evex.S
- x86: Optimize L(less_vec) case in memcmp-evex-movbe.S
- elf: Remove AArch64 from comment for AT_MINSIGSTKSZ
- math: Properly cast X_TLOSS to float [BZ #28713]
- Set default __TIMESIZE default to 64
- stdio: Implement %#m for vfprintf and related functions
- elf: Remove unused NEED_DL_BASE_ADDR and _dl_base_addr
- x86-64: Add vector acos/acosf implementation to libmvec
- intl/plural.y: Avoid conflicting declarations of yyerror and yylex
- elf: Remove excessive p_align check on PT_LOAD segments [BZ #28688]
- s_sincosf.h: Change pio4 type to float [BZ #28713]
- Linux: Fix 32-bit vDSO for clock_gettime on powerpc32
- Regenerate ulps on x86_64 with GCC 12
- Add ARPHRD_CAN, ARPHRD_MCTP to net/if_arp.h
- Remove ununsed tcb-offset
- riscv: align stack before calling _dl_init [BZ #28703]
- riscv: align stack in clone [BZ #28702]
- elf: Fix tst-cpu-features-cpuinfo for KVM guests on some AMD systems [BZ #28704]
- powerpc64[le]: Allocate extra stack frame on syscall.S
- Update copyright header in recently merged ab_GE locale
- fortify: Fix spurious warning with realpath
2021-12-29 07:09:16 +01:00
Florian Weimer 3987f952fb armhfp, i686: Revert 64-bit time_t/off_t for internal use (#2034715) 2021-12-28 21:41:25 +01:00
Florian Weimer 2762250016 Auto-sync with upstream branch master
Upstream commit: b99b0f93ee8762fe53ff65802deb6f00700b9924

- nss: Use "files dns" as the default for the hosts database (#2033020)
- arm: Guard ucontext _rtld_global_ro access by SHARED, not PIC macro
- Fix The GNU ToolChain Authors copyright notice
- Remove upper limit on tunable MALLOC_MMAP_THRESHOLD
- localedata: add new locale ab_GE
- Fix __minimal_malloc segfaults in __mmap due to stack-protector
- __glibc_unsafe_len: Fix comment
- malloc: Enable huge page support on main arena
- malloc: Move MORECORE fallback mmap to sysmalloc_mmap_fallback
- malloc: Add Huge Page support to arenas
- malloc: Add Huge Page support for mmap
- malloc: Move mmap logic to its own function
- malloc: Add THP/madvise support for sbrk
- malloc: Add madvise support for Transparent Huge Pages
- powerpc: Use global register variable in <thread_pointer.h>
- Use LFS and 64 bit time for installed programs (swbz#15333)
2021-12-17 12:11:27 +01:00
Martin Cermak 5c459b73d2 CI Gating: Avoid installing conflicting headers 2021-12-16 09:42:18 +01:00
Arjun Shankar 201f88a749 Do not use --enable-static-pie configure flag
Since upstream commit 23645707f12f, --enable-static-pie is ignored by
the build system and static PIE is enabled by default on architectures
that support it.
2021-12-15 15:06:18 +01:00
Florian Weimer 2d913ac06a Auto-sync with upstream branch master
Upstream commit: 4435c29892c43ae9908a42e591747be63102689b

- Drop glibc-fedora-revert-PT_LOAD-segment-align.patch; fix applied upstream

- Support target specific ALIGN for variable alignment test [BZ #28676]
- NEWS: Document LD_PREFER_MAP_32BIT_EXEC as x86-64 only
- elf: Align argument of __munmap to page size [BZ #28676]
2021-12-15 09:35:03 +01:00
Arjun Shankar 0c78549fbc Auto-sync with upstream branch master
Upstream commit: 0884724a95b60452ad483dbe086d237d02ba624d

- Add glibc-fedora-revert-PT_LOAD-segment-align.patch to revert upstream
  commits 718fdd87b1b9 and fc2334ab32e0.
- intl: Emit no lines in bison generated files
- hurd: Do not set PIE_UNSUPPORTED
- NEWS: Move LD_PREFER_MAP_32BIT_EXEC
- mach: Fix spurious inclusion of stack_chk_fail_local in libmachuser.a
- Disable DT_RUNPATH on NSS tests [BZ #28455]
- sysdeps: Simplify sin Taylor Series calculation
- math: Remove the error handling wrapper from hypot and hypotf
- math: Use fmin/fmax on hypot
- aarch64: Add math-use-builtins-f{max,min}.h
- math: Add math-use-builtinds-fmin.h
- math: Add math-use-builtinds-fmax.h
- math: Remove powerpc e_hypot
- i386: Move hypot implementation to C
- math: Use an improved algorithm for hypotl (ldbl-128)
- math: Use an improved algorithm for hypotl (ldbl-96)
- math: Improve hypot performance with FMA
- math: Use an improved algorithm for hypot (dbl-64)
- math: Simplify hypotf implementation
- Cleanup encoding in comments
- Replace --enable-static-pie with --disable-default-pie
- hurd: Add rules for static PIE build
- hurd: Fix gmon-static
- x86-64: Remove LD_PREFER_MAP_32BIT_EXEC support [BZ #28656]
- elf: Use errcode instead of (unset) errno in rtld_chain_load
- Add a testcase to check alignment of PT_LOAD segment [BZ #28676]
- elf: Properly align PT_LOAD segments [BZ #28676]
- elf: Install a symbolic link to ld.so as /usr/bin/ld.so
- nptl: Add one more barrier to nptl/tst-create1
- Remove TLS_TCB_ALIGN and TLS_INIT_TCB_ALIGN
- nptl: rseq failure after registration on main thread is fatal
- nptl: Add public rseq symbols and <sys/rseq.h>
- nptl: Add glibc.pthread.rseq tunable to control rseq registration
- Linux: Use rseq to accelerate sched_getcpu
- nptl: Add rseq registration
- nptl: Introduce THREAD_GETMEM_VOLATILE
- nptl: Introduce <tcb-access.h> for THREAD_* accessors
- nptl: Add <thread_pointer.h> for defining __thread_pointer
- String: test-memcpy used unaligned types for buffers [BZ 28572]
- localedef: check magic value on archive load [BZ #28650]
- x86: Don't set Prefer_No_AVX512 for processors with AVX512 and AVX-VNNI
- linux: Add generic ioctl implementation
- linux: Add generic syscall implementation
- misc, nptl: Remove stray references to __condvar_load_64_relaxed
- csu: Always use __executable_start in gmon-start.c
- elf: execve statically linked programs instead of crashing [BZ #28648]
- Add --with-timeoutfactor=NUM to specify TIMEOUTFACTOR
2021-12-14 15:20:32 +01:00
Arjun Shankar a7319f3316 Remove nscd (#1905142)
Commit 8cd6c9ec48 deprecated nscd in Fedora 34:
https://fedoraproject.org/wiki/Changes/DeprecateNSCD

This commit removes nscd in preparation for Fedora 36:
https://fedoraproject.org/wiki/Changes/RemoveNSCD

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
2021-12-13 13:41:58 +01:00
Pavel Březina cadee80b13 Do not install /etc/nsswitch.conf
Related to: https://fedoraproject.org/wiki/Changes/Make_Authselect_Mandatory

Users are now expected to use authselect to configure the system and packages
should no longer support non-authselect configurations.

/etc/nsswitch.conf is now owned by authselect.

Resolves: rhbz#2023741
2021-12-10 17:06:38 +01:00
Siddhesh Poyarekar 2a12adcea2 Avoid setting annobin flags if !_annotated_build
Without this, the glibc build fails if annobin hasn't been bootstrapped
against an updated gcc major version.  This will likely never happen in
production builds since _annotated_build is always set through
redhat-rpm-config but when testing with annobin disabled (*and* with a
rebased gcc), it may end up unnecessarily making gcc look for annobin.
2021-12-09 06:29:40 +05:30
Martin Cermak 333464235d CI Gating: Disable fedora-ci.koji-build.tier0.functional
Disable fedora-ci.koji-build.tier0.functional because of
https://gitlab.com/testing-farm/general/-/issues/37

With this update, fedora-ci.koji-build.tier0.functional will
still be executed, but it's test result will not be taken into
account for gating purposes.

Once the aforementioned CI Infrastructure issue is resolved,
we can roll this update back.
2021-12-08 14:07:49 +01:00
Florian Weimer 4dc7322aff Drop glibc-dso-sort-makefile-fail.patch
The build failure was actually due to #2026399.
2021-12-06 19:04:10 +01:00
Florian Weimer ae249dabba Auto-sync with upstream branch master
Upstream commit: 4df1fa6ddc8925a75f3da644d5da3bb16eb33f02

- x86-64: Use notl in EVEX strcmp (#2026399)
- nptl: Increase default TCB alignment to 32
- elf: add definition for ELF_NOTE_FDO and NT_FDO_PACKAGING_METADATA note
- AArch64: Improve A64FX memcpy
- AArch64: Optimize memcmp
- powerpc64[le]: Fix CFI and LR save address for asm syscalls [BZ #28532]
- linux: Implement pipe in terms of __NR_pipe2
- linux: Implement mremap in C
- linux: Add prlimit64 C implementation
- elf: Include <stdbool.h> in tst-tls20.c
- elf: Include <stdint.h> in tst-tls20.c
- hurd: Let report-wait use a weak reference to _hurd_itimer_thread
2021-12-04 10:20:21 +01:00
Florian Weimer 11567e7d20 x86_64: Disable additional EVEX string functions (#2026399) 2021-12-04 04:30:47 +01:00
Florian Weimer 3717b5ea10 x86_64: Disable EVEX *cmp* string functions (#2026399) 2021-12-03 18:47:40 +01:00
Florian Weimer ba4df9283b Drop glibc-sdt-headers.patch 2021-12-02 16:48:08 +01:00
Carlos O'Donell 980b253a67 Fix sources file for glibc-2.34.9000-22. 2021-11-30 13:42:01 -05:00
Carlos O'Donell 8b7229bf79 Auto-sync with upstream branch master
Upstream commit: 137ed5ac440a4d3cf4178ce97f349b349a9c2c66

- x86-64: Create microbenchmark infrastructure for libmvec
- linux: Use /proc/stat fallback for __get_nprocs_conf (BZ #28624)
- linux: Add fanotify_mark C implementation
- linux: Only build fstatat fallback if required
- regex: fix buffer read overrun in search [BZ#28470]
- x86-64: Add vector sin/sinf to libmvec microbenchmark
- x86-64: Add vector pow/powf to libmvec microbenchmark
- x86-64: Add vector log/logf to libmvec microbenchmark
- x86-64: Add vector exp/expf to libmvec microbenchmark
- x86-64: Add vector cos/cosf to libmvec microbenchmark
- io: Refactor close_range and closefrom
- nptl: Do not set signal mask on second setjmp return [BZ #28607]
- powerpc: Define USE_PPC64_NOTOC iff compiler supports it
- setjmp: Replace jmp_buf-macros.h with jmp_buf-macros.sym
- Update kernel version to 5.15 in tst-mman-consts.py
- socket: Do not use AF_NETLINK in __opensock
- elf: Move la_activity (LA_ACT_ADD) after _dl_add_to_namespace_list() (BZ #28062)
- Add PF_MCTP, AF_MCTP from Linux 5.15 to bits/socket.h
- malloc: Fix malloc debug for 2.35 onwards
- elf: Introduce GLRO (dl_libc_freeres), called from __libc_freeres
- nptl: Extract <bits/atomic_wide_counter.h> from pthread_cond_common.c
2021-11-30 09:44:01 -05:00
Sergey Kolosov 3e067f11c3 adds glibc-headers-x86 to exclude 2021-11-18 21:39:10 +01:00
Sergey Kolosov 7a3188c863 exclude glibc-headers-s390 2021-11-18 19:24:52 +01:00
Sergey Kolosov 8d488dc38e introduce Fedora CI 2021-11-18 16:45:23 +01:00
Florian Weimer e4ca95809b Temporary patch glibc-dso-sort-makefile-fail.patch, to fix x86_64 build 2021-11-18 11:20:40 +01:00
Florian Weimer 9633d3541e Temporarily patch glibc-sdt-headers.patch, to fix s390x build failure 2021-11-17 13:43:22 +01:00
Florian Weimer a95e35d1eb Auto-sync with upstream branch master
Upstream commit: a43c0b5483da4c5e3796af309864cb44256c02db

- x86-64: Create microbenchmark infrastructure for libmvec
- elf: hidden visibility for __minimal_malloc functions
- elf: Use a temporary file to generate Makefile fragments [BZ #28550]
- dso-ordering-test.py: Put all sources in one directory [BZ #28550]
- elf: Move LAV_CURRENT to link_lavcurrent.h
- Move assignment out of the CAS condition
- Add a comment for --enable-initfini-array [BZ #27945]
- tst-tzset: output reason when creating 4GiB file fails
- Add LLL_MUTEX_READ_LOCK [BZ #28537]
- Avoid extra load with CAS in __pthread_mutex_clocklock_common [BZ #28537]
- Avoid extra load with CAS in __pthread_mutex_lock_full [BZ #28537]
- String: Split memcpy tests so that parallel build is faster
- x86: Shrink memcmp-sse4.S code size
- Support C2X printf %b, %B
- Update syscall lists for Linux 5.15
- s390: Use long branches across object boundaries (jgh instead of jh)
2021-11-17 13:14:39 +01:00
Arjun Shankar b96753c45b Create /{bin,lib,lib64,sbin} as symbolic links in test-container
This brings the test container in line with Fedora's filesystem layout
and avoids some test failures.  For example, because Fedora's CS_PATH is
/usr/bin, tst-vfork3 will try to execute /usr/bin/echo in the container.
Without this change the container installs `echo' in /bin not /usr/bin,
causing the test to fail.

Reviewed-by: DJ Delorie <dj@redhat.com>
2021-11-16 09:53:27 +01:00
Arjun Shankar e879893635 Auto-sync with upstream branch master to fix build failure
Upstream commit: 0bd356df1afb0591470499813d4ebae9bcedd6a6

- Remove the unused +mkdep/+make-deps/s-proto.S/s-proto-cancel.S
- Fix build a chec failures after b05fae4d8e34
- elf: Use the minimal malloc on tunables_strdup
2021-11-10 14:57:42 +01:00
Arjun Shankar 1f6af19978 Auto-sync with upstream branch master
Upstream commit: db6c4935fae6005d46af413b32aa92f4f6059dce

- Fix memmove call in vfprintf-internal.c:group_number
- locale: Fix localedata/sort-test undefined behavior
- test-memcpy.c: Double TIMEOUT to (8 * 60)
- hurd: Remove unused __libc_close_range
- hurd: Implement close_range and closefrom
- x86: Double size of ERMS rep_movsb_threshold in dl-cacheinfo.h
- x86: Optimize memmove-vec-unaligned-erms.S
- benchtests: Add partial overlap case in bench-memmove-walk.c
- benchtests: Add additional cases to bench-memcpy.c and bench-memmove.c
- string: Make tests birdirectional test-memcpy.c
- Remove the last trace of generate-md5 [BZ #28554]
- Revert "benchtests: Add acosf function to bench-math"
- Configure GCC with --enable-initfini-array [BZ #27945]
- elf: Earlier missing dynamic segment check in _dl_map_object_from_fd
- gconv: Do not emit spurious NUL character in ISO-2022-JP-3 (bug 28524)
- [powerpc] Tighten contraints for asm constant parameters
2021-11-08 22:16:31 +01:00
Patsy Griffin 7badc6b643 Auto-sync with upstream branch master
Upstream commit: d3bf2f5927d51258a51ac7fde04f4805f8ee294a

- elf: Do not run DSO sorting if tunables is not enabled
- riscv: Build with -mno-relax if linker does not support R_RISCV_ALIGN
- x86-64: Replace movzx with movzbl
- regex: Unnest nested functions in regcomp.c
- Use Linux 5.15 in build-many-glibcs.py
- elf: Assume disjointed .rela.dyn and .rela.plt for loader
- i386: Explain why __HAVE_64B_ATOMICS has to be 0
- benchtests: Add hypotf
- benchtests: Make hypot input random
- arm: Use have-mtls-dialect-gnu2 to check for ARM TLS descriptors support
- arm: Use internal symbol for _dl_argv on _dl_start_user
- x86-64: Remove Prefer_AVX2_STRCMP
- x86-64: Improve EVEX strcmp with masked load
2021-11-03 11:40:29 -04:00
DJ Delorie ea7e5402a9 Auto-sync with upstream branch master
Upstream commit: 79d0fc65395716c1d95931064c7bf37852203c66

- benchtests: Add acosf function to bench-math
- benchtests: Improve bench-memcpy-random
- Disable -Waggressive-loop-optimizations warnings in tst-dynarray.c
- Fix compiler issue with mmap_internal
- Check if linker also support -mtls-dialect=gnu2
- Fix LIBC_PROG_BINUTILS for -fuse-ld=lld
- elf: Disable ifuncmain{1,5,5pic,5pie} when using LLD
- Handle NULL input to malloc_usable_size [BZ #28506]
- x86_64: Add memcmpeq.S to fix disable-multi-arch build
- login: Add back libutil as an empty library
- riscv: Fix incorrect jal with HIDDEN_JUMPTARGET
- x86_64: Add evex optimized __memcmpeq in memcmpeq-evex.S
- x86_64: Add avx2 optimized __memcmpeq in memcmpeq-avx2.S
- x86_64: Add sse2 optimized __memcmpeq in memcmp-sse2.S
- x86_64: Add support for __memcmpeq using sse2, avx2, and evex
- Benchtests: Add benchtests for __memcmpeq
- String: Add __memcmpeq as build target
- NEWS: Add item for __memcmpeq
- String: Add tests for __memcmpeq
- String: Add hidden defs for __memcmpeq() to enable internal usage
- String: Add support for __memcmpeq() ABI on all targets
- configure: Don't check LD -v --help for LIBC_LINKER_FEATURE
- elf: Make global.out depend on reldepmod4.so [BZ #28457]
- x86: Replace sse2 instructions with avx in memcmp-evex-movbe.S
- bench-math: Sort and put each bench per line
- x86_64: Add missing libmvec ABI tests
- elf: Fix e6fd79f379 build with --enable-tunables=no
- elf: Fix slow DSO sorting behavior in dynamic loader (BZ #17645)
- elf: Testing infrastructure for ld.so DSO sorting (BZ #17645)
- iconv: Use TIMEOUTFACTOR for iconv test timeout
- posix: Remove alloca usage for internal fnmatch implementation
- Add alloc_align attribute to memalign et al
- linux: Fix a possibly non-constant expression in _Static_assert
- x86-64: Add sysdeps/x86_64/fpu/Makeconfig
2021-10-29 13:37:45 -04:00
Carlos O'Donell 8deb7f51cc Auto-sync with upstream branch master
- Remove glibc-ld-readonly-revert.patch.

Upstream commit e037274c8ec86ca9d491331984b34f30701b23cf:

- stdlib: Fix tst-canon-bz26341 when the glibc build current working
  directory is itself using symlinks.
- powerpc: Remove backtrace implementation
- Correct access attribute on memfrob (bug 28475)
- debug: Add tests for _FORTIFY_SOURCE=3
- Make sure that the fortified function conditionals are constant
- Don't add access size hints to fortifiable functions
- glibcextract.py: Place un-assemblable @@@ in a comment
- nss: Unnest nested function add_key
- ld.so: Initialize bootstrap_map.l_ld_readonly [BZ #28340]
- timex: Use 64-bit fields on 32-bit TIMESIZE=64 systems (BZ #28469)
- manual: Update _TIME_BITS to clarify it's user defined
- nptl: Fix tst-cancel7 and tst-cancelx7 pidfile race
- elf: Fix elf_get_dynamic_info() for bootstrap
- hurd if_index: Explicitly use AF_INET for if index discovery
- hurd: Fix intr-msg parameter/stack kludge
- x86-64: Add test-vector-abi.h/test-vector-abi-sincos.h
- elf: Fix dynamic-link.h usage on rtld.c
2021-10-20 17:35:57 -04:00
Martin Cermak 09d2e07988 Rename downstream side tag rebuild test
OSCI requested a name chenge of the side tag rebuild test
downstream.  Reflecting that change here to make future
syncs easier.
2021-10-18 09:02:15 +02:00
Arjun Shankar 4d06523dc1 Update sources file 2021-10-14 13:59:17 +02:00
Arjun Shankar e7c31c4b27 Auto-sync with upstream branch master
Upstream commit: e59ced238482fd71f3e493717f14f6507346741e

- Adjust glibc-ld-readonly-revert.patch.
- x86: Optimize memset-vec-unaligned-erms.S
- x86: Optimize memcmp-evex-movbe.S for frontend behavior and size
- libio: Update tst-wfile-sync to not depend on stdin
- elf: Update audit tests to not depend on stdout
- elf: Fix elf_get_dynamic_info definition
- Add TEST_COMPARE_STRING_WIDE to support/check.h
- Fix nios2 localplt failure
- elf: Remove Intel MPX support (lazy PLT, ld.so profile, and LD_AUDIT)
- resolv: Avoid GCC 12 false positive warning [BZ #28439].
- benchtests: Add medium cases and increase iters in bench-memset.c
- x86: Modify ENTRY in sysdep.h so that p2align can be specified
- resolv: make res_randomid use random_bits()
- Linux: implement getloadavg(3) using sysinfo(2)
- Remove unreliable parts of rt/tst-cpuclock2
- elf: Avoid nested functions in the loader [BZ #27220]
- Add run-time check for indirect external access
- Initial support for GNU_PROPERTY_1_NEEDED
- io: Fix ftw internal realloc buffer (BZ #28126)
- Fix subscript error with odd TZif file [BZ #28338]
2021-10-14 02:33:34 +02:00
Carlos O'Donell 7c3f6c985e Autosync with upstream branch master
Upstream commit: f2e06656d04a9fcb0603802a4f8ce7aa3a1f055e

- S390: Add PCI_MIO and SIE HWCAPs
- support: Also return fd when it is 0
- ld.so: Don't fill the DT_DEBUG entry in ld.so [BZ #28129]
- S390: update libm test ulps
- powerpc: update libm test ulps
- math: Also xfail the new j0f tests for ibm128-libgcc
- y2038: Use a common definition for stat for sparc32
- Fix stdlib/tst-setcontext.c for GCC 12 -Warray-compare
- aarch64: update libm test ulps
- Fixed inaccuracy of j0f (BZ #28185)
- Fix stdio-common tests for GCC 12 -Waddress
- benchtests: Building benchmarks as static executables
- elf: Avoid deadlock between pthread_create and ctors [BZ #28357]
- time: Ignore interval nanoseconds on tst-itimer
- io: Do not skip timestamps tests for 32-bit time_t
- Update to Unicode 14.0.0 [BZ #28390]
2021-10-07 10:03:24 -04:00
Florian Weimer a463a91457 Auto-sync with upstream branch master,
Upstream commit: eae81d70574e923ce3c59078b8df857ae192efa6:

- nptl: pthread_kill must send signals to a specific thread [BZ #28407]
- support: Add check for TID zero in support_wait_for_thread_exit
- nptl: Add CLOCK_MONOTONIC support for PI mutexes
- support: Add support_mutex_pi_monotonic
- nptl: Use FUTEX_LOCK_PI2 when available
- Linux: Add FUTEX_LOCK_PI2
- Add C2X _PRINTF_NAN_LEN_MAX
- Add exp10 macro to <tgmath.h> (bug 26108)
- elf: Replace nsid with args.nsid [BZ #27609]
- Add missing braces to bsearch inline implementation [BZ #28400]
- Update alpha libm-test-ulps
- Suppress -Wcast-qual warnings in bsearch
- elf: Copy l_addr/l_ld when adding ld.so to a new namespace
- powerpc: Fix unrecognized instruction errors with recent binutils
2021-10-01 18:47:58 +02:00
Florian Weimer be77dd73c8 Auto-sync with upstream branch master
Upstream commit: 9bd9978639c2f75dbea5c25226264b1ac11fdf05

- Do not declare fmax, fmin _FloatN, _FloatNx versions for C2X
- Do not define tgmath.h fmaxmag, fminmag macros for C2X (bug 28397)
- Add fmaximum, fminimum functions
- Linux: Simplify __opensock and fix race condition [BZ #28353]
- pthread/tst-cancel28: Fix barrier re-init race condition
- powerpc: Delete unneeded ELF_MACHINE_BEFORE_RTLD_RELOC
- posix: Remove spawni.c
- Disable symbol hack in libc_nonshared.a
- linux: Revert the use of sched_getaffinity on get_nproc (BZ #28310)
- linux: Simplify get_nprocs
- misc: Add __get_nprocs_sched
- htl: Fix sigset of main thread
- htl: make pthread_sigstate read/write set/oset outside sigstate section
- Avoid warning: overriding recipe for .../tst-ro-dynamic-mod.so
- benchtests: Improve reliability of memcmp benchmarks
- Define __STDC_IEC_60559_BFP__ and __STDC_IEC_60559_COMPLEX__
- build-many-glibcs.py: add powerpc64le glibc variant without multiarch
- Fix sysdeps/x86/fpu/s_ffma.c for 32-bit FMA processor case
- Linux: Avoid closing -1 on failure in __closefrom_fallback
- i386: Port elf_machine_{load_address,dynamic} from x86-64
- aarch64: Disable A64FX memcpy/memmove BTI unconditionally
- xsysconf: Only fail on error results and errno set
- powerpc64le: Avoid conflicting types for f64xfmaf128 when IFUNC is not used
- Fix ffma use of round-to-odd on x86
- vfprintf: Unify argument handling in process_arg
- vfprintf: Handle floating-point cases outside of process_arg macro
2021-09-29 20:32:21 +02:00
Florian Weimer 35da738a8e Fix ppc64le build failure by reverting DL_RO_DYN_SECTION removal 2021-09-23 12:36:39 +02:00
Florian Weimer 9fe7756cf7 Auto-sync with upstream branch master
Upstream commit: 2849e2f53311b66853cb5159b64cba2bddbfb854

- nptl: Avoid setxid deadlock with blocked signals in thread exit [BZ #28361]
- Add narrowing fma functions
- ld.so: Replace DL_RO_DYN_SECTION with dl_relocate_ld [BZ #28340]
- Adjust new narrowing div/mul tests for IBM long double, update powerpc ULPs
- Mention today's regex merge in SHARED-FILES
- Fix f64xdivf128, f64xmulf128 spurious underflows (bug 28358)
- regex: copy back from Gnulib
- nptl: Fix type of pthread_mutexattr_getrobust_np,
  pthread_mutexattr_setrobust_np (bug 28036)
- powerpc: Fix unrecognized instruction errors with recent GCC
- elf: Include <sysdep.h> in elf/dl-debug-symbols.S
- nptl: pthread_kill needs to return ESRCH for old programs (bug 19193)
- Extend struct r_debug to support multiple namespaces [BZ #15971]
- Use $(pie-default) with conformtest
- Run conform/ tests using newly built libc
- posix: Fix attribute access mode on getcwd [BZ #27476]
- Fix build-many-glibcs.py --strip for installed library renaming
- benchtests: Fix validate_benchout.py exceptions
- elf: Remove THREAD_GSCOPE_IN_TCB
- htl: Reimplement GSCOPE
- htl: Move thread table to ld.so
- Redirect fma calls to __fma in libm
- time: Fix compile error in itimer test affecting hurd
2021-09-23 11:00:44 +02:00
Martin Cermak 8132174436 CI Gating: Enable baseos-qe.brew-build.scratch-build.validation
Enable baseos-qe.brew-build.scratch-build.validation in RHEL-9 gating.
2021-09-16 13:47:47 +02:00
Florian Weimer 7d28ddf24c Use system CPU count for sysconf(_SC_NPROCESSORS_*) (#1992702) 2021-09-15 12:09:06 +02:00
Florian Weimer 4476c131c3 Auto-sync with upstream branch master
Upstream commit: 2444ce5421c6036a503842d8dd8d93c27aad59ee

- mach lll_lock/unlock: Explicitly request private locking
- elf: Replace most uses of THREAD_GSCOPE_IN_TCB
- Add MADV_POPULATE_READ and MADV_POPULATE_WRITE from Linux 5.14 to
  bits/mman-linux.h
- Update kernel version to 5.14 in tst-mman-consts.py
- configure: Fix check for INSERT in linker script
- iconvconfig: Fix behaviour with --prefix [BZ #28199]
- nptl: Fix race between pthread_kill and thread exit (bug 12889)
- nptl: pthread_kill, pthread_cancel should not fail after exit (bug 19193)
- benchtests: Remove redundant assert.h
- benchtests: Enable scripts/plot_strings.py to read stdin
- Add narrowing square root functions
- _Static_assert needs two arguments for compatibility with GCC before 9
- testrun.sh: Add support for --tool=rpctrace
2021-09-15 11:23:02 +02:00
Martin Cermak b7fe0018cc CI Gating: Fix the decision_context
Based on the discussion [1], the decision context
in gating.yaml needs to change for glibc.

[1] https://pagure.io/fedora-ci/general/issue/263
2021-09-13 10:29:04 +02:00
Patsy Griffin 891183e565 Auto-sync with upstream branch master
Upstream commit: 89dc0372a9055e7ef86fe19be6201fa0b16b2f0e

- Update syscall lists for Linux 5.14
- Fix failing nss/tst-nss-files-hosts-long with local resolver
- MIPS: Setup errno for {f,l,}xstat
- Use Linux 5.14 in build-many-glibcs.py
- locale: Add missing second argument to _Static_assert in C-collate-seq.c
- Update hppa libm-test-ulps
- Add generic C.UTF-8 locale (Bug 17318)
- Add 'codepoint_collation' support for LC_COLLATE.
- AArch64: Update A64FX memset not to degrade at 16KB
- Revert "AArch64: Update A64FX memset not to degrade at 16KB"
- Remove "Contributed by" lines
- Port shared code information from the wiki
- AArch64: Update A64FX memset not to degrade at 16KB
- posix: remove some iso-8859-encoded characters
- configure: Allow LD to be LLD 13.0.0 or above [BZ #26558]
- hurd msync: Drop bogus test
- hurd: Fix typo in msync
2021-09-10 11:23:26 -04:00
Florian Weimer 80230e6916 Auto-sync with upstream branch master
Upstream commit: 3c8b9879cab6d41787bc5b14c1748f62fd6d0e5f

- x86-64: Use testl to check __x86_string_control
- i686: Don't include multiarch memove in libc.a
- support: Add support_wait_for_thread_exit
- Allow #pragma GCC in headers in conformtest
- nptl: Fix tst-cancel7 and tst-cancelx7 race condition (BZ #14232)
- Use support_open_dev_null_range io/tst-closefrom,
  misc/tst-close_range, and posix/tst-spawn5 (BZ #28260)
- support: Add support_open_dev_null_range
- llio.texi: Wording fixes in description of closefrom()
- Fix error message in memmove test to display correct src pointer
2021-08-31 11:34:53 +02:00
Arjun Shankar 9e3889df74 Auto-sync with upstream branch master
Upstream commit: 9926f6e2eeb374cf729d4bb3f092dd4b36a8f861

- elf: Skip tst-auditlogmod-* if the linker doesn't support --depaudit [BZ #28151]
- powerpc: Use --no-tls-get-addr-optimize in test only if the linker supports it
- x86-64: Remove assembler AVX512DQ check
- x86-64: Remove compiler -mavx512f check
- Use __executable_start as the lowest address for profiling [BZ #28153]
- hurd: Fix errlist error mapping
- hurd: Remove old test-err_np.c file
- Fix iconv build with GCC mainline
- rtld: copy terminating null in tunables_strdup (bug 28256)
- mtrace: Fix output with PIE and ASLR [BZ #22716]
- x86-64: Optimize load of all bits set into ZMM register [BZ #28252]
- Update string/test-memmove.c to cover 16KB copy
- elf: Fix missing colon in LD_SHOW_AUXV output [BZ #28253]
- x86: fix Autoconf caching of instruction support checks [BZ #27991]
- arm: Simplify elf_machine_{load_address,dynamic}
- riscv: Drop reliance on _GLOBAL_OFFSET_TABLE_[0]
- Remove sysdeps/*/tls-macros.h
2021-08-25 22:54:04 +02:00
Siddhesh Poyarekar 94957f0655 Disable dependencies and linking for libc_malloc_debug.so
Do not provide anything from libc_malloc_debug.so and do not allow
linking against it.

Resolves: #1985048
2021-08-24 19:30:06 +05:30
DJ Delorie a5d3c595e7 Auto-sync with upstream branch master
Upstream commit: b37b75d269883a2c553bb7019a813094eb4e2dd1

- x86_64: Simplify elf_machine_{load_address,dynamic}
- elf: Drop elf/tls-macros.h in favor of __thread and tls_model attributes [BZ #28152] [BZ #28205]
- hurd: Drop fmh kludge
- time: Fix overflow itimer tests on 32-bit systems
- mips: increase stack alignment in clone to match the ABI
- mips: align stack in clone [BZ #28223]
2021-08-17 16:41:43 -04:00
Arjun Shankar 420fe1da66 Auto-sync with upstream branch master
Upstream commit: 4cc79c217744743077bf7a0ec5e0a4318f1e6641

- librt: add test (bug 28213)
- mtrace: Use a static buffer for printing [BZ #25947]
- hurd mmap: Reduce the requested max vmprot
- hurd mmap: Factorize MAP_SHARED flag check
- aarch64: Make elf_machine_{load_address,dynamic} robust [BZ #28203]
- elf: Unconditionally use __ehdr_start
- hurd: Add support for AT_NO_AUTOMOUNT
- [5/5] AArch64: Improve A64FX memset medium loops
- [4/5] AArch64: Improve A64FX memset by removing unroll32
- [3/5] AArch64: Improve A64FX memset for remaining bytes
- [2/5] AArch64: Improve A64FX memset for large sizes
- [1/5] AArch64: Improve A64FX memset for small sizes
- Use binutils 2.37 branch in build-many-glibcs.py
- Add PTRACE_GET_RSEQ_CONFIGURATION from Linux 5.13 to sys/ptrace.h
- librt: fix NULL pointer dereference (bug 28213)
- powerpc64: Add checks for Altivec and VSX in ifunc selection
- powerpc64: Check cacheline size before using optimised memset routines
- powerpc64: Replace some PPC_FEATURE_HAS_VSX with PPC_FEATURE_ARCH_2_06
- Linux: Fix fcntl, ioctl, prctl redirects for _TIME_BITS=64 (bug 28182)
- Add INADDR_DUMMY from Linux 5.13 to netinet/in.h
- tst-mxfast: Don't run with mcheck
- rt: Set the correct message queue for tst-mqueue10
- Update sparc libm-test-ulps
- linux: Add sparck brk implementation
- test-dlclose-exit-race: avoid hang on pthread_create error
- gethosts: Remove unused argument _type
- hurd: Avoid spurious warning
- gaiconf_init: Avoid double-free in label and precedence lists
- copy_and_spawn_sgid: Avoid double calls to close()
- iconv_charmap: Close output file when done
- gconv_parseconfdir: Fix memory leak
- ldconfig: avoid leak on empty paths in config file
- Fix build of nptl/tst-thread_local1.cc with GCC 12
- nis: Fix leak on realloc failure in nis_getnames [BZ #28150]
- Remove obsolete comments/name from several benchtest input files.
- Remove obsolete comments/name from acos-inputs, since slow path was removed.
- Open master branch for glibc 2.35 development
2021-08-12 15:29:32 +02:00
Florian Weimer 1ecf8017eb Switch to glibc 2.34 release tarball
- Update ChangeLog.old/ChangeLog.23.
- Prepare for glibc 2.34 release.
- po/nl.po: Update Dutch translation.
- Update install.texi, and regenerate INSTALL.
- Update translations.
- Update NEWS.
- NEWS: Fix typos, grammar, and missing words
- elf: Fix audit regression
2021-08-02 08:08:11 +02:00
Siddhesh Poyarekar ca0613665c Port post scripts for gconv-extra to lua and drop dependency across
architectures for x86 multilib (#1988344).

Resolves: #1988344
2021-07-31 01:04:25 +05:30
Florian Weimer 88d9dfdf11 Auto-sync with upstream branch master
Upstream commit: c37fc3ebf0607ce1953c565ffe56d56555eeb25e

- Update libc.pot for 2.34 release.
- x86-64: Add Avoid_Short_Distance_REP_MOVSB
- Typo: Rename HAVE_CLONE3_WAPPER to HAVE_CLONE3_WRAPPER
- build-many-glibcs.py: Add x86_64-linux-gnu-minimal configuration
- tests: use xmalloc to allocate implementation array
- xmalloc: Fix warnings with gcc analyzer
- __cxa_thread_atexit_impl: Abort on allocation failure [BZ #18524]
- manual: Drop the .so suffix in libc_malloc_debug description
- hurd: _Fork: unlock malloc before calling fork child hooks
2021-07-29 09:43:22 +02:00
Florian Weimer bcce160baa Revert to old C.UTF-8 locale 2021-07-27 18:57:57 +02:00
Siddhesh Poyarekar 51ca5d3334 Weaken dependency on glibc-gconv-extra
Bring back dependency weakening on glibc-gconv-extra and have glibc
conditionally depend on it if redhat-rpm-config is present.
2021-07-26 20:32:19 +05:30
Florian Weimer 8f6143c826 Switch to new version of C.UTF-8 locale 2021-07-26 09:26:07 +02:00
Florian Weimer c4a47573b4 Auto-sync with upstream branch master
Upstream commit: ddcc612ce923038b867083a0c55d6e034951155a

- Exclude static tests for mcheck and malloc-check
- i386: Regenerate ulps
2021-07-26 07:46:13 +02:00
Florian Weimer 95bdbb905d Auto-sync with upstream branch master
Upstream commit: d34ed66f96fa9316654d7adb2afcce4be1d1c4f5

- manual: Document unsupported cases for interposition
- x86: Install <bits/platform/x86.h> [BZ #27958]
- Fix build and tests with --disable-tunables
2021-07-24 17:24:48 +02:00
Florian Weimer 44bdf7a54c Remove both old and new library names in glibc-hwcaps removal (#1983677) 2021-07-24 12:23:35 +02:00
Florian Weimer ac81c2f6e6 Auto-sync with upstream branch master
Upstream commit: 9a7ab0769b295cbf5232140401742a8f34bda3de

- hurd: Fix glob lstat compatibility
- socket: Add time64 alias for setsockopt
- socket: Add time64 alias for getsockopt
- mcheck Fix malloc_usable_size [BZ #22057]
- Remove malloc hooks [BZ #23328]
- Move malloc_{g,s}et_state to libc_malloc_debug
- glibc.malloc.check: Wean away from malloc hooks
- mtrace: Wean away from malloc hooks
- Simplify __malloc_initialized
- mcheck: Wean away from malloc hooks [BZ #23489]
- Move malloc hooks into a compat DSO
- Remove __morecore and __default_morecore
- Remove __after_morecore_hook
- Make mcheck tests conditional on GLIBC_2.23 or earlier
- posix: Add sysconf(_SC_{MIN,}SIGSTKSZ) support
- malloc: Fix tst-mallocfork3-malloc-check link
- ARC: elf: make type safe
- ARC: fp: (micro)optimize FPU_STATUS read by eliding FWE bit clearing
2021-07-23 09:44:00 +02:00
Florian Weimer d299f6bf48 Revert "Add kludge to stop auto-rebuild during the mass rebuild"
This reverts commit 455e25392f.
2021-07-23 09:34:28 +02:00
Fedora Release Engineering d97901cc98 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-22 01:48:30 +00:00
Florian Weimer 455e25392f Add kludge to stop auto-rebuild during the mass rebuild 2021-07-21 22:35:57 +02:00
Florian Weimer 0dd0190421 Auto-sync with upstream branch master
Upstream commit: 77ede5f010f1b144e067ec035e422a13bb57c55d

- socket: Add time64 alias for sendmsg
- socket: Add time64 alias for recvmsg
- socket: Add time64 alias for sendmmsg
- Linux: Add time64 alias for prctl
- io: Add time64 alias for fcntl
- misc: Add time64 alias for ioctl
- RISC-V: Update rv64 ULPs
- resolv: Do not install libnss_dns.a, libnss_dns.so
- hurd: Add support for spawn_do_closefrom
- elf: Fix tst-cpu-features-cpuinfo on some AMD systems (BZ #28090)
- i386: Add the clone3 wrapper
2021-07-21 13:17:45 +02:00
Florian Weimer 42e2f74269 Remove glibc-hwcaps multilibs on upgrade (#1983677) 2021-07-19 15:59:29 +02:00
Florian Weimer 9b46862a3b Auto-sync with upstream branch master
Upstream commit: ee5ed99922ca90bcea4a2f9a48a0c9ae4b534ece

- nss: Directly load nss_dns, without going through dlsym/dlopen
- resolv: Move nss_dns into libc
- resolv: Move res_query functions into libc
- resolv: Move res_mkquery, res_nmkquery into libc
- resolv: Move res_send, res_nsend into libc
- resolv: Move res_hostalias into its own file, along with hostalias
- resolv: Move __res_context_hostalias into its own file and into libc
- resolv: Move res_queriesmatch to its own file and into libc
- resolv: Move res_nameinquery to its own file and into libc
- resolv: Move ns_samename into its own file, and into libc
- resolv: Move ns_makecanon into its own file, and into libc
- resolv: Move res_isourserver to its own file and reformat to GNU style
- resolv: Move __res_get_nsaddr to its own file and into libc
- resolv: Rename res_comp.c to res-name-checking.c and move into libc
- resolv: Move dn_skipname to its own file and into libc
- resolv: Move dn_comp to its own file and into libc
- resolv: Move _getlong, _getshort, __putlong, __putshort to res-putget
- resolv: Move dn_expand to its own file and into libc
- resolv: Move ns_name_compress into its own file and into libc
- resolv: Move ns_name_pack into its own file and into libc
- resolv: Move ns_name_pton into its own file and into libc
- resolv: Move ns_name_uncompress into its own file and into libc
- resolv: Move ns_name_skip to its own file and into libc (bug 28091)
- resolv: Deprecate legacy interfaces in libresolv
- tst-safe-linking: make false positives even more improbable
- htl: Do not expose pthread hidden proto outside libpthread
- elf: Fix a wrong array access on tst-tls20
- elf: Add -Wl,--no-as-needed for tst-tls-manydynamic*mod-dep-bad.so (BZ #28089)
- resolv: Move ns_name_unpack to its own file and into libc
- resolv: Remove unnecessary res_isourserver_p call from send_dg
- resolv: Move ns_name_ntop to its own file and into libc
- nss_dns: Do not use deprecated packet parsing functions
- resolv: Sort Makefile routines and Versions lexicographically
- socket: Add hidden prototype for setsockopt
- elf: Fix DTV gap reuse logic (BZ #27135)
- Fix linknamespace errors and local-plt-usages in nss_files.
- Add static tests for __clone_internal
- x86-64: Add the clone3 wrapper
- Add an internal wrapper for clone, clone2 and clone3
- nss: Fix build error with --disable-nscd
- htl: Fix linking static examples against libpthread
- htl: Let libc call __pthread_mutex_{,try,un}lock
- posix: Ignore non opened files on tst-spawn5
- mcheck: Align struct hdr to MALLOC_ALIGNMENT bytes [BZ #28068]
2021-07-19 10:35:25 +02:00
Siddhesh Poyarekar d543beb3de Fix some gconv packaging nits
- Run postun only if the main gconv-modules configuration file exists.
  Resolves: #1981013.
- Own %{libdir}/gconv/gconv-modules.d
- Rearrange file list command so that gconv-modules.cache is no longer
  marked as %config
2021-07-15 20:28:22 +05:30
Florian Weimer 7d6321464f Fix incorrect references to #1975895 in %changelog 2021-07-13 16:01:01 +02:00
Florian Weimer 6534cdc8bf Perform systemd re-exec even if glibc.i686 is installed 2021-07-13 15:32:56 +02:00
Florian Weimer 1c62f46f16 Re-exec systemd on upgrades 2021-07-13 14:13:46 +02:00
Florian Weimer 0c7c3bcb8d Auto-sync with upstream branch master
Upstream commit: 72e84d1db22203e01a43268de71ea8669eca2863

- Linux: Use 32-bit vDSO for clock_gettime, gettimeofday, time (BZ# 28071)
- Reduce <limits.h> pollution due to dynamic PTHREAD_STACK_MIN
- Fix failing nss/tst-nss-files-hosts-long.
- nis: nis_local_group may read from __nisgroup[-1] (bug 28075)
- hurd _Fork: Drop duplicate malloc_fork_lock calls
- support: Replace _SC_MINSIGSTKSZ with _SC_SIGSTKSZ
- support: Replace MINSIGSTKSZ with sysconf (_SC_MINSIGSTKSZ)
- Define PTHREAD_STACK_MIN to sysconf(_SC_THREAD_STACK_MIN)
- Force building with -fno-common
- Add a generic malloc test for MALLOC_ALIGNMENT
- Properly run tst-spawn5 directly [BZ #28067]
- build-many-glibcs.py: Add glibcs-arm-linux-gnueabihf-thumb
- nptl: Use out-of-line wake function in __libc_lock_unlock slow path
- powerpc64le: Fix typo in configure
- powerpc64: Remove strcspn ifunc from the loader
- x86: Remove wcsnlen-sse4_1 from wcslen ifunc-impl-list [BZ #28064]
- x86-64: Test strlen and wcslen with 0 in the RSI register [BZ #28064]
- x86_64: Remove unneeded static PIE check for undefined weak diagnostic
- Add NT_ARM_PAC_ENABLED_KEYS to elf.h
- posix: Add posix_spawn_file_actions_addclosefrom_np
- io: Add closefrom [BZ #10353]
- linux: Add close_range
- support: Add support_stack_alloc
- _int_realloc is static
- Move mcheck symbol from stdlib to malloc
- nss: Do not install static linker input files for libnss_files
- elf/tests: Make thrlock and noload depend on libm
- Harden tcache double-free check
- nss: Access nss_files through direct references
- nss_files: Move into libc
- nss_files: Add generic code for set*ent, end*ent and file open
- nss_files: Allocate nscd file registration data on the heap
- libio: Replace internal _IO_getdelim symbol with __getdelim
- libio: Add hidden prototype for ungetc
- inet: Add hidden prototype for __inet_network
- Update MIPS libm-test-ulps
- Update powerpc-nofpu libm-test-ulps
- soft-fp: Add __extendhfsf2/__extendhfdf2, __truncsfhf2/__truncdfhf2,
  __eqhf2/__nehf2
- Update kernel version to 5.13 in tst-mman-consts.py
- tests-exclude-mcheck: Fix typo
2021-07-12 23:20:23 +02:00
Florian Weimer f63ef9c9d9 Auto-sync with upstream branch master
Upstream commit: 7a5db2e82fbb6c3a6e3fdae02b7166c5d0e8c7a8

- elf: Clean up GLIBC_PRIVATE exports of internal libdl symbols
- nptl: Reduce the GLIBC_PRIVATE ABI
- nptl: Remove GLIBC_2.34 versions of __pthread_mutex_lock,
  __pthread_mutex_unlock
- nptl: Use internal low-level lock type for !IS_IN (libc)
- glibc.malloc.check: Fix nit in documentation
- Exclude tst-realloc from tests-mcheck
- linux: Fix setsockopt fallback
- linux: Use the expected size for SO_TIMESTAMP{NS} convertion
- linux: Consolidate Linux setsockopt implementation
- linux: Consolidate Linux getsockopt implementation
- manual: fix description for preadv()
2021-07-07 09:38:01 +02:00
Florian Weimer 3d96f5f94f Auto-sync with upstream branch master
Upstream commit: 832f50be6c9c010e46180d14126bbb81f35e808c

- linux: Check for null value msghdr struct before use
- elf: Call free from base namespace on error in dl-libc.c [BZ #27646]
2021-07-06 14:35:13 +02:00
Florian Weimer 8479d6740a Auto-sync with upstream branch master
Upstream commit: 91fb0f17a5779da6e7877eb74119a83dbe8bf167

- hooks.c: Remove incorrect comment
- mtrace: Add attribute nocommon to mallwatch
- Move glibc.malloc.check implementation into its own file
- mtrace: Deprecate mallwatch and tr_break
- Drop source dependencies on hooks.c and arena.c
- malloc: Initiate tcache shutdown even without allocations [BZ #28028]
- Add mcheck tests to malloc
- iconvconfig: Use the public feof_unlocked
- resolv: Move libanl into libc (if libpthread is in libc)
- powerpc: optimize strcpy/stpcpy for POWER9/10
- soft-fp: Add __extendhfxf2 and __truncxfhf2
- x86: Check RTM_ALWAYS_ABORT for RTM [BZ #28033]
- Update syscall lists for Linux 5.13
- s390: Fix MEMCHR_Z900_G5 ifunc-variant if n>=0x80000000 [BZ #28024]
- Fix extra PLT reference in libc.so due to __glob64_time64 if build with gcc 7.5 on 32bit.
- AArch64: Add hp-timing.h
- AArch64: Improve strnlen performance
2021-07-05 06:00:05 +02:00
Florian Weimer b4f030ae95 Auto-sync with upstream branch master
Upstream commit: eb68d7d23cc411acdf68a60f194343a6774d6194

- Linux: Avoid calling malloc indirectly from __get_nprocs (#1975693)
- Use Linux 5.13 in build-many-glibcs.py
2021-06-30 17:51:11 +02:00
Florian Weimer afd298e6eb Auto-sync with upstream branch master
Upstream commit: 734c60ebb607086ad6d67b2544d6b7baba72a652

- login: Move libutil into libc
- login: Rework hidden prototypes for __setutent, __utmpname, __endutent
- login: Hidden prototypes for _getpt, __ptsname_r, grantpt, unlockpt
- nptl_db: Re-use the ELF-to-abilist converter for ABI checking
- Add RFC 8335 Definitions from Linux 5.13
- nss: Fix NSS_DECLARE_MODULE_FUNCTIONS handling of _nss_*_endnetgrent
- s390x: Update math: redirect roundeven function
- posix: Add _Fork [BZ #4737]
2021-06-30 10:05:05 +02:00
Florian Weimer d7e27f5895 Move librt.a to glibc-devel (#1977058) 2021-06-28 22:47:46 +02:00
Florian Weimer 2be319ff45 Upload glibc-2.33.9000-826-gdd45734e32.tar.xz 2021-06-28 19:55:57 +02:00
Florian Weimer 21ebc4cbaa Auto-sync with upstream branch master
Upstream commit: dd45734e322a03287d34d8af9b7da7b35cfddb8e

- nptl: Add glibc.pthread.stack_cache_size tunable
- nptl: Export libthread_db-used symbols under GLIBC_PRIVATE
- nptl: Rename nptl_version to __nptl_version
- nptl_db: Clean up main/rtld variable handling
- arm: align stack in clone [BZ 28020]
- Linux: Cleanups after librt move
- Linux: Move timer_settime, __timer_settime64 from librt to libc
- Linux: Move timer_gettime, __timer_gettime64 from librt to libc
- Linux: Move timer_getoverrun from librt to libc
- Linux: Move timer_create, timer_delete from librt to libc
- Linux: Define TIMER_T_WAS_INT_COMPAT in kernel-posix-timers.h
- Install shared objects under their ABI names
- elf: Generalize name-based DSO recognition in ldconfig
- Makerules: Remove lib-version, $(subdir-version)
- nptl_db: Install libthread_db under a regular implementation name
- iconvconfig: Fix multiple issues
- wordexp: handle overflow in positional parameter number (bug 28011)
- Update math: redirect roundeven function
- Use GCC builtins for roundeven functions if desired.
- x86_64: roundeven with sse4.1 support
- math: redirect roundeven function
2021-06-28 19:45:06 +02:00
Florian Weimer d3fad65ba1 Switch to new version of libthread_db .dynsym patch 2021-06-28 12:33:02 +02:00
Florian Weimer 5b63da3fa5 Further .symtab adjustment: Keep all __GI_* symbols (#1975859) 2021-06-28 09:29:49 +02:00
Florian Weimer 4f2dd301cc Keep most of .symtab in libc.so.6 (#1975859) 2021-06-28 07:49:20 +02:00
Martin Cermak 40177ead73 gating.yaml: Allow smooth 1:1 sync between Fedora and c9s 2021-06-28 06:43:17 +02:00
Florian Weimer 0034c1747f Apply emergency patch to fix iconvconfig corruption 2021-06-27 19:07:54 +02:00
Florian Weimer 8142038783 Adjust glibc.req so that egrep does not cause eu-readelf to fail 2021-06-27 18:17:14 +02:00
Florian Weimer 22321f2b31 Auto-sync with upstream branch master
Upstream commit: 2c16cb88a6e5ace0fb7cedca86860ea7bde522a7

- Linux: Move timer helper routines from librt to libc
- Linux: Move mq_unlink from librt to libc
- Linux: Move mq_send, mq_timedsend, __mq_timedsend_time64 to libc
- Linux: Move mq_receive, mq_timedreceive, __mq_timedreceive_time64 to libc
- Linux: Move mq_open, __mq_open_2 from librt to libc
- Linux: Move mq_notify from librt to libc
- Linux: Move mq_getattr from librt to libc
- Linux: Move mq_setattr from librt to libc
- Linux: Move mq_close from librt to libc
- Linux: Move lio_listio, lio_listio64 from librt to libc
- rt: Rework lio_listio implementation
- Linux: Move aio_write, aio_write64 into libc
- Linux: Move aio_suspend, aio_suspend64, __aio_suspend_time64 to libc
- Linux: Move aio_return, aio_return64 into libc
- Linux: Move aio_read, aio_read64 into libc
- Linux: Move aio_fsync, aio_fsync64 into libc
- Linux: Move aio_error, aio_error64 into libc
- Linux: Move aio_cancel, aio_cancel64 into libc
- Linux: Move aio_init from librt into libc
- support: Fix xclone build failures on ia64 and hppa
- elf: Disable most of TLS modid gaps processing [BZ #27135]
- elf: Fix glibc-hwcaps priorities with cache flags mismatches [BZ #27046]
- * NEWS: Clarify _TIME_BITS change.
- x86: Remove unnecessary overflow check from wcsnlen-sse4_1.S
- String: Add three more overflow tests cases to test-strnlen.c
- Consolidate pthread_atfork
- posix: Do not clobber errno by atfork handlers
- posix: Consolidate fork implementation
- support: Add xclone
- x86: Fix tst-cpu-features-cpuinfo on Ryzen 9 (BZ #27873)
- x86: Copy IBT and SHSTK usable only if CET is enabled
- x86: Fix overflow bug in wcsnlen-sse4_1 and wcsnlen-avx2 [BZ #27974]
- x86: Fix overflow bug with wmemchr-sse2 and wmemchr-avx2 [BZ #27974]
- String: Add overflow tests for strnlen, memchr, and strncat [BZ #27974]
- x86-64: Add wcslen optimize for sse4.1
- x86-64: Move strlen.S to multiarch/strlen-vec.S
- hurd: Fix build after 52a5fe70a2
- nptl: Use SA_RESTART for SIGCANCEL handler
- doc: _TIME_BITS defaults may change
- More mcheck -> malloc-check refactoring
- Add NEWS item for gconv-modules.d change
- Handle DT_UNKNOWN in gconv-modules.d
- iconvconfig: Use common gconv module parsing function
- gconv_conf: Split out configuration file processing
- gconv_conf: Remove unused variables
- iconv: Remove alloca use in gconv-modules configuration parsing
- Remove unsused symbols from nptl/Versions
- linux: Only use 64-bit syscall if required for clock_nanosleep
- linux: Only use 64-bit syscall if required for internal futex
- linux: Only use 64-bit syscall if required for utimensat family
- linux: Only use 64-bit syscall if required for sigtimedwait
- linux: Only use 64-bit syscall if required for mq_timedsend
- linux: Only use 64-bit syscall if required for mq_timedreceive
- linux: Only use 64-bit syscall if required for timerfd_settime
- linux: Only use 64-bit syscall if required for semtimedop
- linux: timerfd_gettime minor cleanup
- linux: Remove time64-support
- linux: Remove supports_time64 () from clock_gettime
- linux: Remove supports_time64 () from clock_getres
- linux: Only use 64-bit syscall if required for select
- linux: Only use 64-bit syscall if required for pselect
- linux: Only use 64-bit syscall if required for ppoll
- support: Add support_create_timer
- Use 64 bit time_t stat internally
- malloc: Drop __malloc_initialized from Versions
- tst-mcheck: Rename to tst-malloc-check
- Add hidden prototypes for fsync, fdatasync
- nptl: Move pthreadP.h into sysdeps directory
- rt: Move generic implementation from sysdeps/pthread to rt
- rt: Move shm_unlink into libc
- rt: Move shm_open into libc
- rt: Replace generic stub of shm_unlink with the posix version
- rt: Replace generic stub of shm_open with the posix version
- Fix librt-routines-var issues for !PTHREAD_IN_LIBC
- rt: Lexicographically sort Versions file; librt-routines in Makefile
- elf: Use _dl_catch_error from base namespace in dl-libc.c [BZ #27646]
- Makeconfig: Fix time64-compat.mk target
2021-06-27 17:36:14 +02:00
Florian Weimer 700394c8ed Add automatic requires if building against glibc development snapshots 2021-06-27 15:11:49 +02:00
Carlos O'Donell 947a02c4ad Fix thread local storage corruption (#1974970) 2021-06-24 11:32:41 -04:00
Siddhesh Poyarekar 063fe63eaf Strengthen dependency on glibc-gconv-extra
Have glibc require glibc-gconv-extra for now until we figure out a way
to do this with minimal external impact.
2021-06-22 19:56:05 +05:30
Florian Weimer c20fde6a69 Make glibc-all-langpacks require glibc-gconv-extra in buildroots (#1973663) 2021-06-18 16:13:03 +02:00
Florian Weimer 52d0948022 Export libthread_db symbols under GLBIC_PRIVATE (#1965374) 2021-06-17 20:31:32 +02:00
Florian Weimer 14d5c92a57 Redo the crafted libc.so.6 symbol table for valgrind (#1965374) 2021-06-17 14:48:39 +02:00
Florian Weimer 654f636b32 Remove .symtab from libc.so.6 again (#1965374)
Apparently, debugedit changes the build ID, so the separated debuginfo
no longer matches the specially crafted copy of libc.so.6 with its
minimal .symtab.
2021-06-17 10:31:26 +02:00
Florian Weimer b5405a57ad Drop glibc-rh697421.patch (#1972520) 2021-06-17 09:31:35 +02:00
Florian Weimer f184f15f91 Update NVR for rebuild against rawhide gcc 2021-06-16 06:59:22 +02:00
Florian Weimer 07558826b7 Auto-sync with upstream branch master
Upstream commit: aa9a7f629632c9180de89632d4f2c1e6039f7781

- nptl: Export _pthread_cleanup_push, _pthread_cleanup_pop again
- s390x: Align child stack while clone. [BZ #27968]
- y2038: Add test coverage
- libsupport: Add 64-bit time_t support for stat functions
- libsupport: Add 64-bit time_t support for time functions
- io: Add ftw64 with 64-bit time_t support
- io: Add fts64 with 64-bit time_t support
- posix: Add glob64 with 64-bit time_t support
- y2038: Add support for 64-bit time on legacy ABIs
- time: Add 64-bit time support for getdate
- y2038: Add __USE_TIME_BITS64 support for socket-constants.h
- y2038: Use a common definition for shmid_ds
- y2038: Use a common definition for semid_ds
- y2038: Use a common definition for msqid_ds
- y2038: Use a common definition for stat
- y2038: linux: Add __USE_TIME_BITS64 support for struct timex
- y2038: Add __USE_TIME_BITS64 support for struct utimbuf
- y2038: Add __USE_TIME_BITS64 support for struct timespec
- y2038: Add __USE_TIME_BITS64 support for struct timeval
- y2038: Add __USE_TIME_BITS64 support for time_t
- linux: Add recvvmsg fallback for 64-bit time_t SO_TIMESTAMP{NS}
- linux: Add fallback for 64-bit time_t SO_TIMESTAMP{NS}
- linux: Add fallback for 64-bit time_t SO_{RCV,SND}TIMEO
- linux: s390: Add libanl.abilist in s390 and s390x
- linux: mips: Split libanl.abilist in n32 and n64
- linux: mips: Split librt.abilist in n32 and n64
- Reinstate gconv-modules as the default configuration file
2021-06-15 22:15:31 +02:00
Florian Weimer 027b24e17f Preserve some symbols in libc.so.6's symtab (#1965374) 2021-06-15 17:09:29 +02:00
Florian Weimer fd5c07ba69 Install shared objects under their ABI names, avoiding symlinks (#1652867)
This adds patches proposed upstream to enable downgrades across
major glibc versions.

File list construction and the find-debuginfo.sh wrapper had
to be adjusted to cope with the changed file name patterns.
2021-06-15 14:26:40 +02:00
Siddhesh Poyarekar 222c141c85 Add a conditional dependency for glibc-gconv-extra.i686 in x86_64 2021-06-14 18:46:16 +05:30
Siddhesh Poyarekar 6758377541 Auto-sync and build new glibc-gconv-extra package
Auto-sync Upstream commit: ebae2f5a6f971a8f0b6c99e00f9c45ef7433924a

Changes in addition to the sync:

Add a downstream patch[1] to reinstate gconv-modules file and apply
glibc-rh697421.patch after it.  Also update spec file to create a new
package glibc-gconv-extra with iconv converter modules that are not
commonly used so that they can be removed in minimal or hardened
installations.

[1] https://sourceware.org/pipermail/libc-alpha/2021-June/127497.html

Auto-sync commits:

- Add build option to disable usage of scv on powerpc
- io: Fix sporadic test failures in io/tst-stat
- nptl: Avoid async cancellation to wrongly update __nptl_nthreads (BZ #19366)
- nptl: Use pthread_kill on pthread_cancel
- nptl: Implement raise in terms of pthread_kill
- nptl: Move cancel type out of cancelhandling
- nptl: Move cancel state out of cancelhandling
- nptl: Remove CANCELING_BITMASK
- nptl: Install cancellation handler on pthread_cancel
- nptl: Deallocate the thread stack on setup failure (BZ #19511)
- Remove stale references to libdl.a
- Fix elf/tst-tls9-static after libdl cleanups.
- iconvdata: Split out non-essential gconv module configuration
- iconvdata: Move gconv-modules configuration to gconv-modules.conf
- gconv_conf: Read configuration files in gconv-modules.d
- iconvconfig: Read configuration from gconv-modules.d subdirectory
- iconvconfig: Make file handling more general purpose
- AArch64: Add support for roundeven[f]
- configure: Replaced obsolete AC_TRY_COMPILE
- libio: Assume _IO_lock_inexpensive
- nptl: Remove exit-thread.h
- Improve test coverage of strnlen function
2021-06-14 11:15:03 +05:30
Florian Weimer 2f717376f3 Auto-sync with upstream branch master
Upstream commit: 466c1ea15f461edb8e3ffaf5d86d708876343bbf

- dlfcn: Rework static dlopen hooks
- dlfcn: Eliminate GLIBC_PRIVATE dependency from tststatic2
- dlfcn: Cleanups after -ldl is no longer required
- dlfcn: Move dlopen into libc
- dlfcn: Move dlvsym into libc
- dlfcn: Move dlinfo into libc
- dlfcn: Move dladdr1 into libc
- dlfcn: Move dlmopen into libc
- dlfcn: Move dlsym into libc
- dlfcn: Move dladdr into libc
- dlfcn: Move dlclose into libc
- Improve test coverage of strlen function
- fix typo
- dlfcn: Move dlerror into libc
- Add libc ABI extension kludge for baseline-violating libdl symbols
- scripts/versions.awk: Add local: * to all version nodes
- Add missing symbols to Version files
- Fix use of __pthread_attr_copy in mq_notify (bug 27896)
- Use __pthread_attr_copy in mq_notify (bug 27896)
- Update floating-point feature test macro handling for C2X
- stdio-common: Remove _IO_vfwscanf
- aarch64: align stack in clone [BZ #27939]
- powerpc: Optimized memcmp for power10
- x86-64: Align child stack to 16 bytes [BZ #27902]
2021-06-03 11:00:18 +02:00
Florian Weimer d0b9f50b05 Auto-sync with upstream branch master
Upstream commit: 271ec55d0ae795f03d92e3aa61bff69a31a19e3a

- support: Do not build xpthread_attr_setaffinity_np for hurd
- nptl: Add pthread_attr_setaffinity_np failure test
- support: Add xpthread_attr_setaffinity_np wrapper
- nptl: Move createthread to pthread_create
- nptl: Move Linux createthread to nptl
- nptl: Install SIGSETXID handler with SA_ONSTACK [BZ #27914]
- aarch64: Added optimized memset for A64FX
- aarch64: Added optimized memcpy and memmove for A64FX
- benchtests: Fixed bench-memcpy-random: buf1: mprotect failed
- aarch64: Added Vector Length Set test helper script
- aarch64: define BTI_C and BTI_J macros as NOP unless HAVE_AARCH64_BTI
- config: Added HAVE_AARCH64_SVE_ASM for aarch64
- tst-mallinfo2.c: Use correct multiple for total variable
2021-05-31 10:12:30 +02:00
Florian Weimer 65fd804c4a nptl: Install SIGSETXID handler with SA_ONSTACK [BZ #27914] 2021-05-26 08:25:19 +02:00
Florian Weimer 8aee7e3563 Auto-sync with upstream branch master
Upstream commit: ac0353af81a23535f517586a5d04427120a157ac

- This removes libpthread as a separate shared object.  New programs
  will depend on the GLIBC_2.34 symbol version.  Upstream development
  brings in the following noteworthy bug fixes:
- ppc64le: scv ABI error handling fails to check IS_ERR_VALUE (#1962971)
- CVE-2021-27645 glibc: Use-after-free in addgetnetgrentX function in
  netgroupcache.c (#1932590)
- Linking the main program with jemalloc causes sysconf to deadlock in
  audit mode (#1909920)
2021-05-25 17:44:47 +02:00
Florian Weimer f6682c9bac Reenable arch-full glibc-headers package for ELN (#1940686) 2021-05-21 19:45:03 +02:00
Florian Weimer 79751685db wrap-find-debuginfo.sh: Enable separate debugedit program 2021-05-21 16:22:23 +02:00
Florian Weimer 3af4a41203 glibc-2.33.9000-7.fc35 2021-05-21 16:05:18 +02:00
Jeremy Linton b84da5c20e redhat: Enable glic memory tagging for aarch64
Glibc on arm has a memory tagging option that can be enabled
via GLIBC_TUNABLES="glibc.mem.tagging=$SOMETHING" when glibc
is built with memory tagging support and the kernel/HW supports
MTE. This should be side effect free unless the user turns it
on with approprate HW support.

Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
2021-05-21 14:03:16 +00:00
Florian Weimer 8d4b53ceef Switch to the distribution debuginfo generation mechanism
This needs a wrapper script around find-debuginfo.sh, so that
ld.so is not stripped.

This commit resolves debuginfo file conflicts (#1886295) because
the ldconfig debuginfo file now includes the architecture name.
All debugging information is preserved in ld.so (#1905611).  With
the distribution defaults, we strip all binaries again (#1661510).
2021-05-11 17:30:04 +02:00
Florian Weimer f0cbcb3912 Remove spec file support for power9 multilib
This is not used in Fedora, and downstream removed the multilib
as well.
2021-05-07 12:01:04 +02:00
Florian Weimer caadb46589 Build locales in parallel again
Use the hardlink program (now part of util-linux) to normalize
the localedef output, so that hardlink groups do not change between
builds.
2021-05-06 10:59:59 +02:00
Florian Weimer 82b682a380 Various changes to get glibc building again 2021-05-04 16:07:51 +02:00
Florian Weimer 3b6cc2120e Remove unused template.patch file 2021-05-04 08:44:29 +02:00
439 changed files with 24932 additions and 3272 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +1,14 @@
# recipients: glibc-bugzilla
# yamllint disable rule:line-length
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
decision_contexts:
- bodhi_update_push_stable
- bodhi_update_push_stable_critpath
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
- !PassingTestCaseRule {test_case_name: baseos-qe.koji-build.scratch-build.validation}
--- !Policy
product_versions:
@ -11,3 +16,4 @@ product_versions:
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build.rebuild.validation}

View File

@ -1,286 +0,0 @@
Short description: Add C.UTF-8 support.
Author(s): Fedora glibc team <glibc@lists.fedoraproject.org>
Origin: PATCH
Upstream status: not-submitted
This patch needs to upstream as part of Carlos O'Donell
<carlos@redhat.com>'s work on enabling upstream C.UTF-8 support. This
work is currently blocked on cleaning up the test results to prove that
full code-point sorting is working as intended.
Note that this patch does not provide full code-point sorting as
expected.
This patch needs to upstream as soon as possible since it would be nice
to have this in F29 and fixed.
From 2eda7b462b415105f5a05c1323372d4e39d46439 Mon Sep 17 00:00:00 2001
From: Mike FABIAN <mfabian@redhat.com>
Date: Mon, 10 Aug 2015 15:58:12 +0200
Subject: [PATCH] Add a C.UTF-8 locale
---
localedata/SUPPORTED | 1 +
localedata/locales/C | 238 +++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 239 insertions(+)
create mode 100644 localedata/locales/C
diff --git a/localedata/SUPPORTED b/localedata/SUPPORTED
index 8ca023e..2a78391 100644
--- a/localedata/SUPPORTED
+++ b/localedata/SUPPORTED
@@ -1,6 +1,7 @@
# This file names the currently supported and somewhat tested locales.
# If you have any additions please file a glibc bug report.
SUPPORTED-LOCALES=\
+C.UTF-8/UTF-8 \
aa_DJ.UTF-8/UTF-8 \
aa_DJ/ISO-8859-1 \
aa_ER/UTF-8 \
diff --git a/localedata/locales/C b/localedata/locales/C
new file mode 100644
index 0000000..fdf460e
--- /dev/null
+++ b/localedata/locales/C
@@ -0,0 +1,238 @@
+escape_char /
+comment_char %
+% Locale for C locale in UTF-8
+
+LC_IDENTIFICATION
+title "C locale"
+source ""
+address ""
+contact ""
+email "mfabian@redhat.com"
+tel ""
+fax ""
+language "C"
+territory ""
+revision "1.0"
+date "2015-08-10"
+%
+category "i18n:2012";LC_IDENTIFICATION
+category "i18n:2012";LC_CTYPE
+category "i18n:2012";LC_COLLATE
+category "i18n:2012";LC_TIME
+category "i18n:2012";LC_NUMERIC
+category "i18n:2012";LC_MONETARY
+category "i18n:2012";LC_MESSAGES
+category "i18n:2012";LC_PAPER
+category "i18n:2012";LC_NAME
+category "i18n:2012";LC_ADDRESS
+category "i18n:2012";LC_TELEPHONE
+category "i18n:2012";LC_MEASUREMENT
+END LC_IDENTIFICATION
+
+LC_CTYPE
+copy "i18n"
+
+translit_start
+include "translit_combining";""
+translit_end
+
+END LC_CTYPE
+
+LC_COLLATE
+order_start forward
+<U0000>
+..
+<UFFFF>
+<U00010000>
+..
+<U0001FFFF>
+<U00020000>
+..
+<U0002FFFF>
+<U000E0000>
+..
+<U000EFFFF>
+<U000F0000>
+..
+<U000FFFFF>
+<U00100000>
+..
+<U0010FFFF>
+UNDEFINED
+order_end
+END LC_COLLATE
+
+LC_MONETARY
+% This is the 14652 i18n fdcc-set definition for
+% the LC_MONETARY category
+% (except for the int_curr_symbol and currency_symbol, they are empty in
+% the 14652 i18n fdcc-set definition and also empty in
+% glibc/locale/C-monetary.c. But localedef complains in that case).
+%
+% Using "USD" for int_curr_symbol. But maybe "XXX" would be better?
+% XXX is "No currency" (https://en.wikipedia.org/wiki/ISO_4217)
+int_curr_symbol "<U0055><U0053><U0044><U0020>"
+% Using "$" for currency_symbol. But maybe <U00A4> would be better?
+% U+00A4 is the "generic currency symbol"
+% (https://en.wikipedia.org/wiki/Currency_sign_%28typography%29)
+currency_symbol "<U0024>"
+mon_decimal_point "<U002E>"
+mon_thousands_sep ""
+mon_grouping -1
+positive_sign ""
+negative_sign "<U002D>"
+int_frac_digits -1
+frac_digits -1
+p_cs_precedes -1
+int_p_sep_by_space -1
+p_sep_by_space -1
+n_cs_precedes -1
+int_n_sep_by_space -1
+n_sep_by_space -1
+p_sign_posn -1
+n_sign_posn -1
+%
+END LC_MONETARY
+
+LC_NUMERIC
+% This is the POSIX Locale definition for
+% the LC_NUMERIC category.
+%
+decimal_point "<U002E>"
+thousands_sep ""
+grouping -1
+END LC_NUMERIC
+
+LC_TIME
+% This is the POSIX Locale definition for
+% the LC_TIME category.
+%
+% Abbreviated weekday names (%a)
+abday "<U0053><U0075><U006E>";"<U004D><U006F><U006E>";/
+ "<U0054><U0075><U0065>";"<U0057><U0065><U0064>";/
+ "<U0054><U0068><U0075>";"<U0046><U0072><U0069>";/
+ "<U0053><U0061><U0074>"
+
+% Full weekday names (%A)
+day "<U0053><U0075><U006E><U0064><U0061><U0079>";/
+ "<U004D><U006F><U006E><U0064><U0061><U0079>";/
+ "<U0054><U0075><U0065><U0073><U0064><U0061><U0079>";/
+ "<U0057><U0065><U0064><U006E><U0065><U0073><U0064><U0061><U0079>";/
+ "<U0054><U0068><U0075><U0072><U0073><U0064><U0061><U0079>";/
+ "<U0046><U0072><U0069><U0064><U0061><U0079>";/
+ "<U0053><U0061><U0074><U0075><U0072><U0064><U0061><U0079>"
+
+% Abbreviated month names (%b)
+abmon "<U004A><U0061><U006E>";"<U0046><U0065><U0062>";/
+ "<U004D><U0061><U0072>";"<U0041><U0070><U0072>";/
+ "<U004D><U0061><U0079>";"<U004A><U0075><U006E>";/
+ "<U004A><U0075><U006C>";"<U0041><U0075><U0067>";/
+ "<U0053><U0065><U0070>";"<U004F><U0063><U0074>";/
+ "<U004E><U006F><U0076>";"<U0044><U0065><U0063>"
+
+% Full month names (%B)
+mon "<U004A><U0061><U006E><U0075><U0061><U0072><U0079>";/
+ "<U0046><U0065><U0062><U0072><U0075><U0061><U0072><U0079>";/
+ "<U004D><U0061><U0072><U0063><U0068>";/
+ "<U0041><U0070><U0072><U0069><U006C>";/
+ "<U004D><U0061><U0079>";/
+ "<U004A><U0075><U006E><U0065>";/
+ "<U004A><U0075><U006C><U0079>";/
+ "<U0041><U0075><U0067><U0075><U0073><U0074>";/
+ "<U0053><U0065><U0070><U0074><U0065><U006D><U0062><U0065><U0072>";/
+ "<U004F><U0063><U0074><U006F><U0062><U0065><U0072>";/
+ "<U004E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/
+ "<U0044><U0065><U0063><U0065><U006D><U0062><U0065><U0072>"
+
+% Week description, consists of three fields:
+% 1. Number of days in a week.
+% 2. Gregorian date that is a first weekday (19971130 for Sunday, 19971201 for Monday).
+% 3. The weekday number to be contained in the first week of the year.
+%
+% ISO 8601 conforming applications should use the values 7, 19971201 (a
+% Monday), and 4 (Thursday), respectively.
+week 7;19971201;4
+first_weekday 1
+first_workday 1
+
+% Appropriate date and time representation (%c)
+% "%a %b %e %H:%M:%S %Y"
+d_t_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0059>"
+
+% Appropriate date representation (%x)
+% "%m/%d/%y"
+d_fmt "<U0025><U006D><U002F><U0025><U0064><U002F><U0025><U0079>"
+
+% Appropriate time representation (%X)
+% "%H:%M:%S"
+t_fmt "<U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053>"
+
+% Appropriate AM/PM time representation (%r)
+% "%I:%M:%S %p"
+t_fmt_ampm "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0070>"
+
+% Equivalent of AM/PM (%p) "AM"/"PM"
+%
+am_pm "<U0041><U004D>";"<U0050><U004D>"
+
+% Appropriate date representation (date(1)) "%a %b %e %H:%M:%S %Z %Y"
+date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U005A><U0020><U0025><U0059>"
+END LC_TIME
+
+LC_MESSAGES
+% This is the POSIX Locale definition for
+% the LC_NUMERIC category.
+%
+yesexpr "<U005E><U005B><U0079><U0059><U005D>"
+noexpr "<U005E><U005B><U006E><U004E><U005D>"
+yesstr "<U0059><U0065><U0073>"
+nostr "<U004E><U006F>"
+END LC_MESSAGES
+
+LC_PAPER
+% This is the ISO/IEC 14652 "i18n" definition for
+% the LC_PAPER category.
+% (A4 paper, this is also used in the built in C/POSIX
+% locale in glibc/locale/C-paper.c)
+height 297
+width 210
+END LC_PAPER
+
+LC_NAME
+% This is the ISO/IEC 14652 "i18n" definition for
+% the LC_NAME category.
+% "%p%t%g%t%m%t%f"
+% (also used in the built in C/POSIX locale in glibc/locale/C-name.c)
+name_fmt "<U0025><U0070><U0025><U0074><U0025><U0067><U0025><U0074>/
+<U0025><U006D><U0025><U0074><U0025><U0066>"
+END LC_NAME
+
+LC_ADDRESS
+% This is the ISO/IEC 14652 "i18n" definition for
+% the LC_ADDRESS category.
+% "%a%N%f%N%d%N%b%N%s %h %e %r%N%C-%z %T%N%c%N"
+% (also used in the built in C/POSIX locale in glibc/locale/C-address.c)
+postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U0043><U002D><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+END LC_ADDRESS
+
+LC_TELEPHONE
+% This is the ISO/IEC 14652 "i18n" definition for
+% the LC_TELEPHONE category.
+% "+%c %a %l"
+tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025>/
+<U006C>"
+% (also used in the built in C/POSIX locale in glibc/locale/C-telephone.c)
+END LC_TELEPHONE
+
+LC_MEASUREMENT
+% This is the ISO/IEC 14652 "i18n" definition for
+% the LC_MEASUREMENT category.
+% (same as in the built in C/POSIX locale in glibc/locale/C-measurement.c)
+%metric
+measurement 1
+END LC_MEASUREMENT
+
--
2.4.3

View File

@ -1,15 +1,44 @@
Short description: Adjust CS_PATH return value.
Short description: Adjust CS_PATH and the test container layout.
Author(s): Fedora glibc team <glibc@lists.fedoraproject.org>
Origin: PATCH
Upstream status: not-needed
In Fedora we should return only /usr/bin because /bin is just a symlink
to /usr/bin after MoveToUsr transition (which glibc has not really
completed).
In Fedora we should return only /usr/bin as CS_PATH because /bin is just
a symlink to /usr/bin after MoveToUsr transition (which glibc has not
really completed).
diff -pruN a/sysdeps/unix/confstr.h b/sysdeps/unix/confstr.h
--- a/sysdeps/unix/confstr.h 2012-12-25 08:32:13.000000000 +0530
+++ b/sysdeps/unix/confstr.h 2014-09-05 20:02:55.698275219 +0530
We also create /{bin,lib,lib64,sbin} in the test container as symbolic
links. This brings the test container in line with Fedora's filesystem
layout and avoids some test failures. For example, because Fedora's
CS_PATH is /usr/bin, tst-vfork3 will try to execute /usr/bin/echo in the
container. Without this change the container installs `echo' in /bin
not /usr/bin, causing the test to fail.
diff --git a/Makefile b/Makefile
index a49870d3d1e636a9..feb2599203b10098 100644
--- a/Makefile
+++ b/Makefile
@@ -598,9 +598,13 @@ $(tests-container) $(addsuffix /tests,$(subdirs)) : \
$(objpfx)testroot.pristine/install.stamp :
test -d $(objpfx)testroot.pristine || \
mkdir $(objpfx)testroot.pristine
- # We need a working /bin/sh for some of the tests.
- test -d $(objpfx)testroot.pristine/bin || \
- mkdir $(objpfx)testroot.pristine/bin
+ # Set up symlinks to directories whose contents got moved to /usr
+ for moved in bin lib lib64 sbin; do \
+ test -d $(objpfx)testroot.pristine/usr/$$moved || \
+ mkdir -p $(objpfx)testroot.pristine/usr/$$moved ;\
+ test -e $(objpfx)testroot.pristine/$$moved || \
+ ln -s usr/$$moved $(objpfx)testroot.pristine/$$moved ;\
+ done
# We need the compiled locale dir for localedef tests.
test -d $(objpfx)testroot.pristine/$(complocaledir) || \
mkdir -p $(objpfx)testroot.pristine/$(complocaledir)
diff --git a/sysdeps/unix/confstr.h b/sysdeps/unix/confstr.h
index 15859c3b2759878e..9b63b7f8069866fd 100644
--- a/sysdeps/unix/confstr.h
+++ b/sysdeps/unix/confstr.h
@@ -1 +1 @@
-#define CS_PATH "/bin:/usr/bin"
+#define CS_PATH "/usr/bin"

View File

@ -1,20 +0,0 @@
This is necessary to get things building again after libselinux changes.
A proper fix is under discussion upstream:
<https://sourceware.org/pipermail/libc-alpha/2020-July/116504.html>
diff --git a/nss/makedb.c b/nss/makedb.c
index 8e389a1683747cf1..9d81aed57d384a22 100644
--- a/nss/makedb.c
+++ b/nss/makedb.c
@@ -17,6 +17,10 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
+/* This file uses deprecated declarations from libselinux. */
+#include <libc-diag.h>
+DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wdeprecated-declarations");
+
#include <argp.h>
#include <assert.h>
#include <ctype.h>

View File

@ -1,17 +0,0 @@
This patch works around deprecated libselinux features used by nscd.
diff --git a/nscd/selinux.c b/nscd/selinux.c
index a4ea8008e201b939..0acca4639202a75a 100644
--- a/nscd/selinux.c
+++ b/nscd/selinux.c
@@ -17,6 +17,10 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
+/* This file uses deprecated declarations from libselinux. */
+#include <libc-diag.h>
+DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wdeprecated-declarations");
+
#include "config.h"
#include <error.h>
#include <errno.h>

View File

@ -0,0 +1,18 @@
Use -Wno-error when compiling malloc/tst-realloc.c until the following
fix lands in GCC:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109238
diff --git a/malloc/Makefile b/malloc/Makefile
index dfb51d344c02b509..a719f4418efc22d0 100644
--- a/malloc/Makefile
+++ b/malloc/Makefile
@@ -122,6 +122,8 @@ tests-exclude-mcheck = tst-mallocstate \
tests-mcheck = $(filter-out $(tests-exclude-mcheck) $(tests-static), $(tests))
endif
+CFLAGS-tst-realloc.c += -Wno-error
+
routines = malloc mcheck mtrace obstack reallocarray \
scratch_buffer_grow scratch_buffer_grow_preserve \
scratch_buffer_set_array_size \

View File

@ -12,10 +12,11 @@ additional locales.
* Tue Mar 26 2002 Jakub Jelinek <jakub@redhat.com> 2.2.5-28
- add a couple of .ISO-8859-15 locales (#61908)
diff -Nrup a/localedata/SUPPORTED b/localedata/SUPPORTED
--- a/localedata/SUPPORTED 2012-11-25 12:59:31.000000000 -0700
+++ b/localedata/SUPPORTED 2012-11-26 12:58:43.298223018 -0700
@@ -89,6 +89,7 @@ cy_GB.UTF-8/UTF-8 \
diff --git a/localedata/SUPPORTED b/localedata/SUPPORTED
index c8b63cc2fe2b4547..32088fdef06a14a3 100644
--- a/localedata/SUPPORTED
+++ b/localedata/SUPPORTED
@@ -103,6 +103,7 @@ cy_GB.UTF-8/UTF-8 \
cy_GB/ISO-8859-14 \
da_DK.UTF-8/UTF-8 \
da_DK/ISO-8859-1 \
@ -23,7 +24,7 @@ diff -Nrup a/localedata/SUPPORTED b/localedata/SUPPORTED
de_AT.UTF-8/UTF-8 \
de_AT/ISO-8859-1 \
de_AT@euro/ISO-8859-15 \
@@ -121,6 +122,7 @@ en_DK.UTF-8/UTF-8 \
@@ -140,6 +141,7 @@ en_DK.UTF-8/UTF-8 \
en_DK/ISO-8859-1 \
en_GB.UTF-8/UTF-8 \
en_GB/ISO-8859-1 \
@ -31,7 +32,7 @@ diff -Nrup a/localedata/SUPPORTED b/localedata/SUPPORTED
en_HK.UTF-8/UTF-8 \
en_HK/ISO-8859-1 \
en_IE.UTF-8/UTF-8 \
@@ -136,6 +138,7 @@ en_SG.UTF-8/UTF-8 \
@@ -157,6 +159,7 @@ en_SG.UTF-8/UTF-8 \
en_SG/ISO-8859-1 \
en_US.UTF-8/UTF-8 \
en_US/ISO-8859-1 \
@ -39,11 +40,11 @@ diff -Nrup a/localedata/SUPPORTED b/localedata/SUPPORTED
en_ZA.UTF-8/UTF-8 \
en_ZA/ISO-8859-1 \
en_ZM/UTF-8 \
@@ -385,6 +388,7 @@ sv_FI/ISO-8859-1 \
@@ -425,6 +428,7 @@ sv_FI/ISO-8859-1 \
sv_FI@euro/ISO-8859-15 \
sv_SE.UTF-8/UTF-8 \
sv_SE/ISO-8859-1 \
+sv_SE.ISO-8859-15/ISO-8859-15 \
sw_KE/UTF-8 \
sw_TZ/UTF-8 \
szl_PL/UTF-8 \
syr/UTF-8 \

View File

@ -1,21 +0,0 @@
Short description: Fedora-specific glibc install locale changes.
Author(s): Fedora glibc team <glibc@lists.fedoraproject.org>
Origin: PATCH
Upstream status: not-needed
The Fedora glibc build and install does not need the normal install
behaviour which updates the locale archive. The Fedora install phase
in the spec file of the rpm will handle this manually.
diff --git a/localedata/Makefile b/localedata/Makefile
index 0eea396ad86da956..54caabda33728207 100644
--- a/localedata/Makefile
+++ b/localedata/Makefile
@@ -413,6 +413,7 @@ define build-one-locale
echo -n '...'; \
input=`echo $$locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; \
$(LOCALEDEF) $$flags --alias-file=../intl/locale.alias \
+ --no-archive \
-i locales/$$input -f charmaps/$$charset \
$(addprefix --prefix=,$(install_root)) $$locale \
&& echo ' done';

View File

@ -1,20 +0,0 @@
Short description: NSCD must use nscd user.
Author(s): Fedora glibc team <glibc@lists.fedoraproject.org>
Origin: PATCH
Upstream status: not-needed
Fedora-specific configuration adjustment to introduce the nscd user.
(Upstream does not assume this user exists.)
diff -Nrup a/nscd/nscd.conf b/nscd/nscd.conf
--- a/nscd/nscd.conf 2012-06-05 07:42:49.000000000 -0600
+++ b/nscd/nscd.conf 2012-06-07 12:15:21.818318670 -0600
@@ -33,7 +33,7 @@
# logfile /var/log/nscd.log
# threads 4
# max-threads 32
-# server-user nobody
+ server-user nscd
# stat-user somebody
debug-level 0
# reload-count 5

View File

@ -1,46 +0,0 @@
The Fedora /etc/nsswitch.conf is based largely on the upstream
version with minor downstream distribution modifications for
use with SSSD and systemd.
diff --git a/nss/nsswitch.conf b/nss/nsswitch.conf
index 4a6bcb1f7bc0b1f4..980a68e32e6a04b8 100644
--- a/nss/nsswitch.conf
+++ b/nss/nsswitch.conf
@@ -1,7 +1,7 @@
#
# /etc/nsswitch.conf
#
-# An example Name Service Switch config file. This file should be
+# Name Service Switch config file. This file should be
# sorted with the most-used services at the beginning.
#
# Valid databases are: aliases, ethers, group, gshadow, hosts,
@@ -52,19 +52,21 @@
# shadow: db files
# group: db files
-# In alphabetical order. Re-order as required to optimize peformance.
+# In order of likelihood of use to accelerate lookup.
+passwd: sss files
+shadow: files
+group: sss files
+hosts: files dns myhostname
+services: files sss
+netgroup: sss
+automount: files sss
+
aliases: files
ethers: files
-group: files
gshadow: files
-hosts: files dns
# Allow initgroups to default to the setting for group.
# initgroups: files
-netgroup: files
networks: files dns
-passwd: files
protocols: files
publickey: files
rpc: files
-shadow: files
-services: files

View File

@ -1,21 +0,0 @@
Short description: Provide options to nscd startup.
Author(s): Fedora glibc team <glibc@lists.fedoraproject.org>
Origin: PATCH
Upstream status: not-needed
Fedora-specific nscd startup configuration file.
diff --git a/nscd/nscd.service b/nscd/nscd.service
index b7428a3..19ba185 100644
--- a/nscd/nscd.service
+++ b/nscd/nscd.service
@@ -5,7 +5,8 @@ Description=Name Service Cache Daemon
[Service]
Type=forking
-ExecStart=/usr/sbin/nscd
+EnvironmentFile=-/etc/sysconfig/nscd
+ExecStart=/usr/sbin/nscd $NSCD_OPTIONS
ExecStop=/usr/sbin/nscd --shutdown
ExecReload=/usr/sbin/nscd -i passwd
ExecReload=/usr/sbin/nscd -i group

View File

@ -8,23 +8,29 @@ python3 during a transitional phase.
Author: Carlos O'Donell <carlos@redhat.com>
diff --git a/benchtests/scripts/compare_bench.py b/benchtests/scripts/compare_bench.py
index 6fcbd0803808e5ca..d43db393d63433bc 100755
index 9a91c2649106a740..9f1ea9d85f4b833a 100755
--- a/benchtests/scripts/compare_bench.py
+++ b/benchtests/scripts/compare_bench.py
@@ -1,4 +1,4 @@
@@ -1,5 +1,5 @@
-#!/usr/bin/python
-# Copyright (C) 2015-2023 Free Software Foundation, Inc.
+#!/usr/bin/python3
# Copyright (C) 2015-2021 Free Software Foundation, Inc.
+# Copyright (C) 2015-2022 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
#
# The GNU C Library is free software; you can redistribute it and/or
diff --git a/benchtests/scripts/import_bench.py b/benchtests/scripts/import_bench.py
index a799b4e1b7dc6f30..3286e267168e83bf 100644
index 92d9dc4fbaf08382..698c4ff81b13f697 100644
--- a/benchtests/scripts/import_bench.py
+++ b/benchtests/scripts/import_bench.py
@@ -1,4 +1,4 @@
@@ -1,5 +1,5 @@
-#!/usr/bin/python
-# Copyright (C) 2015-2023 Free Software Foundation, Inc.
+#!/usr/bin/python3
# Copyright (C) 2015-2021 Free Software Foundation, Inc.
+# Copyright (C) 2015-2022 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
#
# The GNU C Library is free software; you can redistribute it and/or

View File

@ -1,38 +0,0 @@
Short description: Add syslog.target dependency.
Author(s): Fedora glibc team <glibc@lists.fedoraproject.org>
Origin: PATCH
Bug-Fedora: #1070416
Upstream status: not-needed
Fedora-specific changes to the nscd.service file.
See also: glibc-nscd-sysconfig.patch.
--- a/nscd/nscd.service
+++ b/nscd/nscd.service
@@ -2,6 +2,7 @@
[Unit]
Description=Name Service Cache Daemon
+After=syslog.target
[Service]
Type=forking
@@ -17,3 +18,4 @@
[Install]
WantedBy=multi-user.target
+Also=nscd.socket
diff --git a/nscd/nscd.socket b/nscd/nscd.socket
new file mode 100644
index 0000000..7e512d5
--- /dev/null
+++ b/nscd/nscd.socket
@@ -0,0 +1,8 @@
+[Unit]
+Description=Name Service Cache Daemon Socket
+
+[Socket]
+ListenDatagram=/var/run/nscd/socket
+
+[Install]
+WantedBy=sockets.target

View File

@ -1,21 +0,0 @@
Short description: Add UCS-2 aliases.
Author(s): Fedora glibc team <glibc@lists.fedoraproject.org>
Origin: PATCH
Bug-RHEL: #697421
Upstream status: https://sourceware.org/ml/libc-alpha/2012-12/msg00103.html
This is a Fedora-specific change to include new aliases for UCS-2
data for gconv used by a certain class of users. This should be
revisited at some point to determine if those users are just using
UTF-8 at this point.
diff -rup a/iconvdata/gconv-modules b/iconvdata/gconv-modules
--- a/iconvdata/gconv-modules 2010-05-04 05:27:23.000000000 -0600
+++ b/iconvdata/gconv-modules 2012-01-26 10:58:24.181895489 -0700
@@ -1954,3 +1954,6 @@ alias HPGREEK8// HP-GREEK8//
alias OSF10010004// HP-GREEK8//
module HP-GREEK8// INTERNAL HP-GREEK8 1
module INTERNAL HP-GREEK8// HP-GREEK8 1
+
+alias ISO-10646-UCS-2// UNICODE//
+alias ISO-10646-UCS-2// ISO-10646/UTF8/

3
glibc.attr Normal file
View File

@ -0,0 +1,3 @@
%__glibc_requires %{_rpmconfigdir}/glibc.req
%__glibc_magic ELF
%__glibc_flags exeonly

42
glibc.req.in Normal file
View File

@ -0,0 +1,42 @@
#!/bin/bash
# Auto-generating dependencies for glibc development snapshots.
#
# A glibc development snapshot (say version 2.33.9000) may define
# symbols in its under-development symbol version (GLIBC_2.34). RPM
# automatically derives RPM dependencies such as
# libc.so.6(GLIBC_2.34)(64bit) from that. While the GLIBC_2.34
# version is under development, these dependencies may be inaccurate
# and could be satisfied by glibc RPM package versions that lack the
# symbols because they were created from an earlier development
# snapshot that had some other GLIBC_2.34 symbols. Therefore, if the
# latest, under-development ELF symbol version is detected, this
# dependency generator adds an explicit RPM dependencies on the glibc
# packaging version against which an RPM package is built.
#
# This script runs for the glibc build itself. In this case, it may
# produce a >= dependency on the build-time glibc, but there will also
# be an (potentially indirect) = dependency, which takes precedence.
set -e
set -o pipefail
searching=true
# Pre-filter using eu-elfclassify, to skip kernel modules.
eu-elfclassify --loadable --file --stdin --print | while read path; do
# Assume that all dynamically linked objects depend on glibc in
# some way.
if $searching; then
# Undefined symbols within latest, under-development
# (changing) symbol versions trigger the versioned RPM
# dependency. Do not use "grep -Eq" to keep reading from the
# pipe, avoiding a spurious EPIPE error in eu-readelf.
if eu-readelf -s "$path" \
| grep -E '\sUNDEF\s.*@''@SYMVER@(\s|$)' >/dev/null
then
echo 'glibc >= @VERSION@-@RELEASE@'
# Stop searching after the first match, but keep reading from
# the pipe.
searching=false
fi
fi
done

3832
glibc.spec

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
d /run/nscd 0755 root root

13
plans/ci.fmf Normal file
View File

@ -0,0 +1,13 @@
summary: CI Gating Plan
discover:
how: fmf
prepare:
- name: prepare
how: shell
script: ./plans/prepare.sh
- name: install
how: install
exclude:
- glibc-headers-s390
execute:
how: tmt

52
plans/prepare.sh Executable file
View File

@ -0,0 +1,52 @@
#!/bin/bash
#
# Setup task for x86_64 Fedora CI systems.
# KOJI_TASK_ID per https://github.com/fedora-ci/dist-git-pipeline/pull/50 .
#
set -x
true "V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V"
echo "KOJI_TASK_ID=$KOJI_TASK_ID"
. /etc/os-release
if [ "$ID" == "fedora" ] && [ "$(arch)" == "x86_64" ]; then
if [ -z "${KOJI_TASK_ID}" ]; then
echo "Missing koji task ID, skipping ..."
exit 0
fi
tmpd=`mktemp -d`
pushd $tmpd
koji download-task $KOJI_TASK_ID --noprogress --arch=src
ls
VR=$(rpm -qp glibc* --queryformat='%{version}-%{release}')
popd
rm -rf $tmpd
tmpd=`mktemp -d`
pushd $tmpd
koji download-task $KOJI_TASK_ID --noprogress --arch=x86_64 --arch=noarch
rm -f *debuginfo* glibc-headers-s390*
ls
dnf -y install *.rpm
popd
rm -rf $tmpd
tmpd=`mktemp -d`
pushd $tmpd
koji download-task $KOJI_TASK_ID --noprogress --arch=i686
rm -f *debuginfo*
ls
yum -y install glibc-$VR* glibc-devel-$VR*
popd
rm -rf $tmpd
else
echo "Not Fedora x86_64, skipping..."
fi
true "^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^"

View File

@ -1 +1 @@
SHA512 (glibc-2.33.9000-114-gf01a61e138.tar.xz) = e32129b3255cadfda5c6bca4bf1c6a5d0bfd8e717c476457e011e320afd373ffb96bfc874b4159f4a6954b331151ea8aa45efc4d977f1dff2040394bcc898185
SHA512 (glibc-2.37.9000-200-g885d3cda90.tar.xz) = b6c88f1c49653b6f1adcbf7e23a5d6caedbf46f372e92662b7d9f52a74dde382d9ece99a4afebbeb9d3a8493a701870becf72fb01a45fae7fefaf10bc1a6fbf7

View File

@ -1,11 +0,0 @@
Short description: <Short description>
Author(s): <Who wrote them. Comma separated.>
Origin: <Source repo(s) where it came from or keyword "PATCH" if this is simply a patch>
# Likely git://sourceware.org/git/glibc.git
Bug-RHEL: <Rhel bug #'s, comma separated e.g. #XXX, #YYY, #ZZZ>
Bug-Fedora: <Fedora bug #'s, comma separated e.g. #XXX, #YYY, #ZZZ>
Bug-Upstream: <Upstream bug#'s, comma separated e.g. #XXX, #YYY, #ZZZ>
Upstream status: <[Patchwork URL|libc-alpha URL|not-needed|not-submitted|committed] for each commit>
# <Additional descriptive text follows 'Upstream status:' line>
<If upstream status == committed then a copy of the upstream commit log follows>
<Patch>

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz1022022-getaddrinfo-behavior-changed-between-RHEL-6-4-and-RHEL-6-5
# Description: Calls getaddrinfo and verifies behavior as per BZ
# Author: Arjun Shankar <ashankar@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
#
# This copyrighted material is made available to anyone wishing
# to use, modify, copy, or redistribute it subject to the terms
# and conditions of the GNU General Public License version 2.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz1022022-getaddrinfo-behavior-changed-between-RHEL-6-4-and-RHEL-6-5
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE tst-getaddrinfo.c
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Arjun Shankar <ashankar@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Calls getaddrinfo and verifies behavior as per BZ" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 15m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: gcc glibc glibc-devel glibc-headers" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 1022022" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,3 @@
PURPOSE of /tools/glibc/Regression/bz1022022-getaddrinfo-behavior-changed-between-RHEL-6-4-and-RHEL-6-5
Description: Calls getaddrinfo and verifies behavior as per BZ
Author: Arjun Shankar <ashankar@redhat.com>

View File

@ -0,0 +1,21 @@
summary: Calls getaddrinfo and verifies behavior as per BZ
description: ''
contact: Arjun Shankar <ashankar@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- gcc
- glibc
- glibc-devel
- glibc-headers
tag:
- simple
- glibc-buildroot-ready
- CI-Tier-1
duration: 15m
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1022022
extra-summary: /tools/glibc/Regression/bz1022022-getaddrinfo-behavior-changed-between-RHEL-6-4-and-RHEL-6-5
extra-task: /tools/glibc/Regression/bz1022022-getaddrinfo-behavior-changed-between-RHEL-6-4-and-RHEL-6-5

View File

@ -0,0 +1,90 @@
#!/bin/bash
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz1022022-getaddrinfo-behavior-changed-between-RHEL-6-4-and-RHEL-6-5
# Description: Calls getaddrinfo and verifies behavior as per BZ
# Author: Arjun Shankar <ashankar@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
#
# This copyrighted material is made available to anyone wishing
# to use, modify, copy, or redistribute it subject to the terms
# and conditions of the GNU General Public License version 2.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE=glibc
REQUIRES=(gcc glibc glibc-devel)
rlJournalStart
rlPhaseStartSetup
for p in "${REQUIRES[@]}"; do
rlAssertRpm "$p"
done; unset p
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
rlRun "cp tst-getaddrinfo.c $TmpDir"
rlRun "pushd $TmpDir"
rlRun "gcc -o tst-getaddrinfo tst-getaddrinfo.c"
rlAssertExists "tst-getaddrinfo"
rlRun "ORIG_HOSTNAME=$(hostname)"
rlFileBackup --clean "/etc/hostname"
rlRun "echo 'www' > /etc/hostname"
rlRun "hostname -F /etc/hostname"
rlFileBackup --clean "/etc/hosts"
rlRun "echo '127.0.0.1 www.fubar.redhat www' >> /etc/hosts"
rlRun "echo '::1 www.fubar.redhat www' >> /etc/hosts"
# Note that the 'canonical name' is always the first name entry in
# each tuple ^, i.e. 'www.fubar.redhat' in our case
rlPhaseEnd
rlPhaseStartTest
rlRun "./tst-getaddrinfo > tst.out"
rlLog "$(cat tst.out)"
rlRun "OUT=($(cat tst.out))"
rlAssertEquals "Correct number of output lines" "${#OUT[@]}" "4"
if rlIsRHEL 6; then
# The result 'www' for AF_INET is basically incorrect, but we want to
# keep it consistent during the life of RHEL 6
rlAssertEquals "gethostname" "${OUT[0]}" "www"
rlAssertEquals "getaddrinfo, AF_INET" "${OUT[1]}" "www"
rlAssertEquals "getaddrinfo, AF_UNSPEC" "${OUT[3]}" "www.fubar.redhat"
rlLog "We don't check (getaddrinfo, AF_INET6) on RHEL 6"
else
rlAssertEquals "gethostname" "${OUT[0]}" "www"
rlAssertEquals "getaddrinfo, AF_INET" "${OUT[1]}" "www.fubar.redhat"
rlAssertEquals "getaddrinfo, AF_INET6" "${OUT[2]}" "www.fubar.redhat"
rlAssertEquals "getaddrinfo, AF_UNSPEC" "${OUT[3]}" "www.fubar.redhat"
fi
rlPhaseEnd
rlPhaseStartCleanup
rlFileRestore "/etc/hosts"
rlFileRestore "/etc/hostname"
rlRun "hostname $ORIG_HOSTNAME"
rlRun "popd"
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,67 @@
#include <sys/socket.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
#include <netdb.h>
#include <string.h>
#include <stdlib.h>
#define SIZE 4096
#define exit_code_func_msg(c,f,m) \
do \
{ \
printf ("error %d: %s: %s\n", c, f, m); \
exit (1); \
} \
while (0)
static void
get_canon_name (char *hostname, int af)
{
struct addrinfo hints, *result, *current;
int error;
memset (&hints, 0, sizeof (hints));
hints.ai_family = af;
hints.ai_socktype = SOCK_DGRAM;
hints.ai_flags = AI_CANONNAME;
error = getaddrinfo (hostname, NULL, &hints, &result);
if (error != 0)
exit_code_func_msg (error, "getaddrinfo", gai_strerror (error));
if (result->ai_canonname == NULL)
exit_code_func_msg (-1, "getaddrinfo", "No canonical name returned");
for (current = result;
current != NULL && current->ai_canonname != NULL;
current = current->ai_next)
printf ("%s\n", current->ai_canonname);
freeaddrinfo (result);
return;
}
int
main (int argc, char **argv)
{
char hostname[SIZE];
int error;
error = gethostname (hostname, SIZE);
if (error)
exit_code_func_msg (error, "gethostname", "");
printf ("%s\n", hostname);
get_canon_name (hostname, AF_INET);
get_canon_name (hostname, AF_INET6);
get_canon_name (hostname, AF_UNSPEC);
return 0;
}

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz1330705-open-and-openat-ignore-mode-with-O-TMPFILE
# Description: Test for BZ#1330705 (open() and openat() ignore 'mode' with O_TMPFILE)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2017 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz1330705-open-and-openat-ignore-mode-with-O-TMPFILE
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE o_tmpfile.c
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Sergey Kolosov <skolosov@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#1330705 (open() and openat() ignore 'mode' with O_TMPFILE)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 2h" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: glibc gcc" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 1330705" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL5 -RHEL6" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,8 @@
PURPOSE of /tools/glibc/Regression/bz1330705-open-and-openat-ignore-mode-with-O-TMPFILE
Description: Test for BZ#1330705 (open() and openat() ignore 'mode' with O_TMPFILE)
Author: Sergey Kolosov <skolosov@redhat.com>
Bug summary: open() and openat() ignore 'mode' with O_TMPFILE on newer kernels
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1330705
The test program calls openat with __O_TMPFILE(O_TMPFILE) flag and checks if a file was created with right mode(0600).
The kernel must support O_TMPFILE(be >= 3.11, or with the backported feature).

View File

@ -0,0 +1,20 @@
summary: Test for BZ#1330705 (open() and openat() ignore 'mode' with O_TMPFILE)
description: |
Bug summary: open() and openat() ignore 'mode' with O_TMPFILE on newer kernels
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1330705
The test program calls openat with __O_TMPFILE(O_TMPFILE) flag and checks if a file was created with right mode(0600).
The kernel must support O_TMPFILE(be >= 3.11, or with the backported feature).
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1330705
contact: Sergey Kolosov <skolosov@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- glibc
- gcc
duration: 2h
extra-summary: /tools/glibc/Regression/bz1330705-open-and-openat-ignore-mode-with-O-TMPFILE
extra-task: /tools/glibc/Regression/bz1330705-open-and-openat-ignore-mode-with-O-TMPFILE

View File

@ -0,0 +1,58 @@
#define _GNU_SOURCE
#include <linux/limits.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <errno.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/syscall.h>
/* from /usr/include/bits/fcntl-linux.h in newer glibc */
#ifndef __O_TMPFILE
#pragma message "__O_TMPFILE is not defined!"
# define __O_TMPFILE (020000000 | __O_DIRECTORY)
//# define O_TMPFILE __O_TMPFILE /* Atomically create nameless file. */
#endif
int main()
{
int fd, kfd;
char path[PATH_MAX], tmp[PATH_MAX];
struct stat statbuf;
kfd = syscall(SYS_openat, AT_FDCWD, ".", __O_TMPFILE | O_RDWR, 0600);
if (kfd == -1) {
if (errno == EISDIR || errno == ENOTSUP) {
printf("__O_TMPFILE not supported by kernel, next checks dont make sense!\n");
exit(10);
}
}
fd = openat(AT_FDCWD, ".", __O_TMPFILE | O_RDWR, 0600);
if (fd == -1) {
if (errno == EISDIR || errno == ENOTSUP) {
printf("__O_TMPFILE not supported by glibc\n");
exit(EXIT_FAILURE);
}
}
snprintf(path, PATH_MAX, "/proc/self/fd/%d", fd);
readlink(path, tmp, PATH_MAX);
printf("%s -> %s file created with __O_TMPFILE\n", path, tmp);
if (stat(path, &statbuf) == -1) {
perror("stat");
exit(EXIT_FAILURE);
}
printf("%s has mode 0%o\n", path, statbuf.st_mode & ~S_IFMT);
if ((statbuf.st_mode & ~S_IFMT) != 0600) {
printf("FAIL: mode is not 0600\n");
exit(EXIT_FAILURE);
}
return 0;
}

View File

@ -0,0 +1,55 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz1330705-open-and-openat-ignore-mode-with-O-TMPFILE
# Description: Test for BZ#1330705 (open() and openat() ignore 'mode' with O_TMPFILE)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2017 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
TESTPROG="o_tmpfile"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlShowRunningKernel
rlRun "TESTTMPDIR=$(mktemp -d)"
rlRun "cp ${TESTPROG}.c $TESTTMPDIR"
rlRun "pushd $TESTTMPDIR"
rlPhaseEnd
rlPhaseStartTest
rlRun -c "gcc ${TESTPROG}.c -o $TESTPROG &> log"
rlAssertNotGrep "__O_TMPFILE is not defined" log
rlAssertExists "$TESTPROG"
rlRun -l "./${TESTPROG}" 0,10
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TESTTMPDIR"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz1561018-glibc-Enable-annobin-annotations
# Description: Test for BZ#1561018 (glibc Enable annobin annotations)
# Author: Alexandra Hájková <ahajkova@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2018 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz1561018-glibc-Enable-annobin-annotations
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Alexandra Hájková <ahajkova@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#1561018 (glibc Enable annobin annotations)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 1h" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: glibc" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 1561018" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL5 -RHEL6 -RHEL7" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,5 @@
PURPOSE of /tools/glibc/Regression/bz1561018-glibc-Enable-annobin-annotations
Description: Test for BZ#1561018 (glibc Enable annobin annotations)
Author: Alexandra Hájková <ahajkova@redhat.com>
Bug summary: glibc: Enable annobin annotations
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1561018

View File

@ -0,0 +1,17 @@
summary: Test for BZ#1561018 (glibc Enable annobin annotations)
description: |
Bug summary: glibc: Enable annobin annotations
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1561018
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1561018
contact: Alexandra Hájková <ahajkova@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
require:
- glibc
- elfutils
duration: 1h
extra-summary: /tools/glibc/Regression/bz1561018-glibc-Enable-annobin-annotations
extra-task: /tools/glibc/Regression/bz1561018-glibc-Enable-annobin-annotations

View File

@ -0,0 +1,42 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz1561018-glibc-Enable-annobin-annotations
# Description: Test for BZ#1561018 (glibc Enable annobin annotations)
# Author: Alexandra Hájková <ahajkova@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2018 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlPhaseEnd
rlPhaseStartTest
rlRun "eu-readelf -S /usr/lib64/libc.so.6 | grep "gnu.build.attributes""
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,65 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz1579451-glibc-IP-BIND-ADDRESS-NO-PORT-is-not-defined-in
# Description: Test for BZ#1579451 (glibc IP_BIND_ADDRESS_NO_PORT is not defined in)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz1579451-glibc-IP-BIND-ADDRESS-NO-PORT-is-not-defined-in
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE bug.c
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Sergey Kolosov <skolosov@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#1579451 (glibc IP_BIND_ADDRESS_NO_PORT is not defined in)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 10m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: glibc glibc-devel gcc" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 1579451" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL5 -RHEL6" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,5 @@
PURPOSE of /tools/glibc/Regression/bz1579451-glibc-IP-BIND-ADDRESS-NO-PORT-is-not-defined-in
Description: Test for BZ#1579451 (glibc IP_BIND_ADDRESS_NO_PORT is not defined in)
Author: Sergey Kolosov <skolosov@redhat.com>
Bug summary: glibc: IP_BIND_ADDRESS_NO_PORT is not defined in <netinet/in.h>
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1579451

View File

@ -0,0 +1,9 @@
#include <sys/types.h>
#include <unistd.h>
#include <sys/socket.h>
#include <netinet/in.h>
int main(void) {
setsockopt(0, IPPROTO_IP, IP_BIND_ADDRESS_NO_PORT, NULL, 0);
return 0;
}

View File

@ -0,0 +1,18 @@
summary: Test for BZ#1579451 (glibc IP_BIND_ADDRESS_NO_PORT is not defined in)
description: |
Bug summary: glibc: IP_BIND_ADDRESS_NO_PORT is not defined in <netinet/in.h>
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1579451
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1579451
contact: Sergey Kolosov <skolosov@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- glibc
- glibc-devel
- gcc
duration: 10m
extra-summary: /tools/glibc/Regression/bz1579451-glibc-IP-BIND-ADDRESS-NO-PORT-is-not-defined-in
extra-task: /tools/glibc/Regression/bz1579451-glibc-IP-BIND-ADDRESS-NO-PORT-is-not-defined-in

View File

@ -0,0 +1,54 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz1579451-glibc-IP-BIND-ADDRESS-NO-PORT-is-not-defined-in
# Description: Test for BZ#1579451 (glibc IP_BIND_ADDRESS_NO_PORT is not defined in)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
TESTPROG="bug"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
PACKNVR=$(rpm -q ${PACKAGE}.`arch`)
rlRun "TESTTMPDIR=$(mktemp -d)"
rlRun "cp ${TESTPROG}.c $TESTTMPDIR"
rlRun "pushd $TESTTMPDIR"
rlPhaseEnd
rlPhaseStartTest
rlRun -c "gcc ${TESTPROG}.c -o $TESTPROG"
rlAssertExists "$TESTPROG"
rlRun -c "./${TESTPROG}"
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TESTTMPDIR"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz1591268-glibc-Problem-with-iconv-converting-ISO8859-1-to
# Description: Test for BZ#1591268 (glibc Problem with iconv converting ISO8859-1 to)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz1591268-glibc-Problem-with-iconv-converting-ISO8859-1-to
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Sergey Kolosov <skolosov@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#1591268 (glibc Problem with iconv converting ISO8859-1 to)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 5m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: glibc vim-common" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 1591268" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL5 -RHEL6" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,5 @@
PURPOSE of /tools/glibc/Regression/bz1591268-glibc-Problem-with-iconv-converting-ISO8859-1-to
Description: Test for BZ#1591268 (glibc Problem with iconv converting ISO8859-1 to)
Author: Sergey Kolosov <skolosov@redhat.com>
Bug summary: glibc: Problem with iconv converting ISO8859-1 to IBM273 [rhel-7]
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1591268

View File

@ -0,0 +1,17 @@
summary: Test for BZ#1591268 (glibc Problem with iconv converting ISO8859-1 to)
description: |
Bug summary: glibc: Problem with iconv converting ISO8859-1 to IBM273 [rhel-7]
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1591268
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1591268
contact: Sergey Kolosov <skolosov@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- glibc
- vim-common
duration: 5m
extra-summary: /tools/glibc/Regression/bz1591268-glibc-Problem-with-iconv-converting-ISO8859-1-to
extra-task: /tools/glibc/Regression/bz1591268-glibc-Problem-with-iconv-converting-ISO8859-1-to

View File

@ -0,0 +1,51 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz1591268-glibc-Problem-with-iconv-converting-ISO8859-1-to
# Description: Test for BZ#1591268 (glibc Problem with iconv converting ISO8859-1 to)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlAssertRpm glibc-common
rlAssertRpm vim-common
rlRun "TESTTMPDIR=$(mktemp -d)"
rlPhaseEnd
rlPhaseStartTest
rlAssertExists "/usr/bin/iconv"
rlAssertExists "/usr/bin/xxd"
rlRun -c "echo "AF" | xxd -r -p | iconv -f iso8859-1 -t ibm273"
rlRun -c "echo "AF" | xxd -r -p | iconv -f iso8859-1 -t ibm1141"
rlPhaseEnd
rlPhaseStartCleanup
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz1612448-glibc-debuginfo-does-not-have-gdb-index
# Description: Test for BZ#1612448 (glibc debuginfo does not have .gdb_index)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz1612448-glibc-debuginfo-does-not-have-gdb-index
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Sergey Kolosov <skolosov@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#1612448 (glibc debuginfo does not have .gdb_index)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 20m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: glibc glibc-debuginfo glibc-debuginfo-common glibc-common-debuginfo binutils" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 1612448" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL5 -RHEL6 -RHEL7" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,5 @@
PURPOSE of /tools/glibc/Regression/bz1612448-glibc-debuginfo-does-not-have-gdb-index
Description: Test for BZ#1612448 (glibc debuginfo does not have .gdb_index)
Author: Sergey Kolosov <skolosov@redhat.com>
Bug summary: glibc: debuginfo does not have .gdb_index (gdb-add-index)
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1612448

View File

@ -0,0 +1,20 @@
summary: Test for BZ#1612448 (glibc debuginfo does not have .gdb_index)
description: |
Bug summary: glibc: debuginfo does not have .gdb_index (gdb-add-index)
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1612448
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1612448
contact: Sergey Kolosov <skolosov@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- glibc
- glibc-debuginfo
- glibc-debuginfo-common
- glibc-common-debuginfo
- binutils
duration: 20m
extra-summary: /tools/glibc/Regression/bz1612448-glibc-debuginfo-does-not-have-gdb-index
extra-task: /tools/glibc/Regression/bz1612448-glibc-debuginfo-does-not-have-gdb-index

View File

@ -0,0 +1,53 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz1612448-glibc-debuginfo-does-not-have-gdb-index
# Description: Test for BZ#1612448 (glibc debuginfo does not have .gdb_index)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
TESTPROG="put_test_prog_here"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlAssertRpm glibc-debuginfo
rlAssertRpm binutils
rlRun "LIBC_SO_DEBUGS=\"$(find /usr -name 'libc*.so*.debug')\""
rlPhaseEnd
rlPhaseStartTest
for LIBC_SO_DEBUG in $LIBC_SO_DEBUGS; do
rlAssertExists "$LIBC_SO_DEBUG"
rlRun -l "readelf -S $LIBC_SO_DEBUG | grep -w gdb_index"
done
rlPhaseEnd
rlPhaseStartCleanup
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz1661244-glibc-Disable-lazy-binding-of-TLS-descriptors-on
# Description: Test for BZ#1661244 (glibc Disable lazy binding of TLS descriptors on)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz1661244-glibc-Disable-lazy-binding-of-TLS-descriptors-on
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE audit.c au-test.c
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Sergey Kolosov <skolosov@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#1661244 (glibc Disable lazy binding of TLS descriptors on)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 20m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: glibc glibc-devel gcc" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 1661244" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL5 -RHEL6" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,5 @@
PURPOSE of /tools/glibc/Regression/bz1661244-glibc-Disable-lazy-binding-of-TLS-descriptors-on
Description: Test for BZ#1661244 (glibc Disable lazy binding of TLS descriptors on)
Author: Sergey Kolosov <skolosov@redhat.com>
Bug summary: glibc: Disable lazy binding of TLS descriptors on aarch64 [rhel-7.6.z]
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1661244

View File

@ -0,0 +1,11 @@
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
struct in_addr a;
int main(int argc, char *argv[])
{
inet_ntoa(a);
return 0;
}

View File

@ -0,0 +1,8 @@
#define _GNU_SOURCE
#include <link.h>
unsigned int la_version(unsigned int ver)
{
return 1;
}

View File

@ -0,0 +1,18 @@
summary: Test for BZ#1661244 (glibc Disable lazy binding of TLS descriptors on)
description: |
Bug summary: glibc: Disable lazy binding of TLS descriptors on aarch64 [rhel-7.6.z]
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1661244
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1661244
contact: Sergey Kolosov <skolosov@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- glibc
- glibc-devel
- gcc
duration: 20m
extra-summary: /tools/glibc/Regression/bz1661244-glibc-Disable-lazy-binding-of-TLS-descriptors-on
extra-task: /tools/glibc/Regression/bz1661244-glibc-Disable-lazy-binding-of-TLS-descriptors-on

View File

@ -0,0 +1,56 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz1661244-glibc-Disable-lazy-binding-of-TLS-descriptors-on
# Description: Test for BZ#1661244 (glibc Disable lazy binding of TLS descriptors on)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
TESTPROG="au-test"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlRun "TESTTMPDIR=$(mktemp -d)"
rlRun "cp audit.c $TESTTMPDIR"
rlRun "cp ${TESTPROG}.c $TESTTMPDIR"
rlRun "pushd $TESTTMPDIR"
rlPhaseEnd
rlPhaseStartTest
rlRun "gcc -o libaudit.so audit.c -fPIC -shared"
rlRun -c "gcc ${TESTPROG}.c -o $TESTPROG"
rlAssertExists "$TESTPROG"
rlAssertExists "libaudit.so"
rlRun -c "LD_AUDIT=${TESTTMPDIR}/libaudit.so ./${TESTPROG}"
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TESTTMPDIR"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz1661513-glibc-Adjust-to-rpms-find-debuginfo-sh-changes-to-keep-stripping-binaries
# Description: Test for BZ#1661513 (glibc: Adjust to rpm's find-debuginfo.sh changes, to keep stripping binaries)
# Author: Martin Coufal <mcoufal@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2022 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz1661513-glibc-Adjust-to-rpms-find-debuginfo-sh-changes-to-keep-stripping-binaries
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Martin Coufal <mcoufal@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#1661513 (glibc: Adjust to rpm's find-debuginfo.sh changes, to keep stripping binaries)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 15m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: glibc gdb" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 1661513" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL5 -RHEL6 -RHEL7" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,5 @@
PURPOSE of /tools/glibc/Regression/bz1661513-glibc-Adjust-to-rpms-find-debuginfo-sh-changes-to-keep-stripping-binaries
Description: Test for BZ#1661513 (glibc: Adjust to rpm's find-debuginfo.sh changes, to keep stripping binaries)
Author: Martin Coufal <mcoufal@redhat.com>
Bug summary: glibc: Adjust to rpm's find-debuginfo.sh changes, to keep stripping binaries
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1661513

View File

@ -0,0 +1,18 @@
summary: "Test for BZ#1661513 (glibc: Adjust to rpm's find-debuginfo.sh changes, to\
\ keep stripping binaries)"
description: |
Bug summary: glibc: Adjust to rpm's find-debuginfo.sh changes, to keep stripping binaries
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1661513
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1661513
contact: Martin Coufal <mcoufal@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- glibc
- gdb
duration: 15m
extra-summary: /tools/glibc/Regression/bz1661513-glibc-Adjust-to-rpms-find-debuginfo-sh-changes-to-keep-stripping-binaries
extra-task: /tools/glibc/Regression/bz1661513-glibc-Adjust-to-rpms-find-debuginfo-sh-changes-to-keep-stripping-binaries

View File

@ -0,0 +1,68 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz1661513-glibc-Adjust-to-rpms-find-debuginfo-sh-changes-to-keep-stripping-binaries
# Description: Test for BZ#1661513 (glibc: Adjust to rpm's find-debuginfo.sh changes, to keep stripping binaries)
# Author: Martin Coufal <mcoufal@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2022 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
rlJournalStart
rlPhaseStartSetup
rlRun "tmpdir=$(mktemp -d)"
rlRun "pushd $tmpdir"
# make sure glibc-debuginfo is not installed
if rlCheckRpm glibc-debuginfo; then
rlRun "yum -y remove glibc-debuginfo"
fi
rlPhaseEnd
rlPhaseStartTest
# All programs (ldconfig, iconvconfig etc.) should be stripped, the dynamic loader (the target of the /usr/bin/ld.so symbolic link) should be unstripped
rlRun "file /sbin/ldconfig /sbin/iconvconfig /usr/bin/localedef $(readlink -f /usr/bin/ld.so) > output.log 2>&1"
rlAssertGrep "ldconfig.*, stripped" output.log
rlAssertGrep "iconvconfig.*, stripped" output.log
rlAssertGrep "localedef.*, stripped" output.log
rlAssertGrep "ld-.*, not stripped" output.log
rlLogInfo "Content of output.log:\n$(cat output.log)"
# some debugging info (e.g. pthread struct) should be accessible even without installed debuginfo packages
rlRun "gdb --batch -ex 'ptype struct pthread' /usr/bin/ld.so > gdb.log 2>&1"
rlAssertGrep "type = struct pthread" gdb.log
rlAssertNotGrep "No struct type named pthread" gdb.log
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -rf $tmpdir"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz1717438-glibc-libc-freeres-under-valgrind-triggers
# Description: Test for BZ#1717438 (glibc __libc_freeres (under valgrind) triggers bad)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz1717438-glibc-libc-freeres-under-valgrind-triggers
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE tst-libidl.c
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Sergey Kolosov <skolosov@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#1717438 (glibc __libc_freeres (under valgrind) triggers bad)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 20m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: glibc glibc-devel valgrind" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 1717438" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL5 -RHEL6 -RHEL7" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,5 @@
PURPOSE of /tools/glibc/Regression/bz1717438-glibc-libc-freeres-under-valgrind-triggers
Description: Test for BZ#1717438 (glibc __libc_freeres (under valgrind) triggers bad)
Author: Sergey Kolosov <skolosov@redhat.com>
Bug summary: glibc: __libc_freeres (under valgrind) triggers bad free in libdl if dlerror was not used
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1717438

View File

@ -0,0 +1,18 @@
summary: Test for BZ#1717438 (glibc __libc_freeres (under valgrind) triggers bad)
description: |
Bug summary: glibc: __libc_freeres (under valgrind) triggers bad free in libdl if dlerror was not used
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1717438
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1717438
contact: Sergey Kolosov <skolosov@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- glibc
- glibc-devel
- valgrind
duration: 20m
extra-summary: /tools/glibc/Regression/bz1717438-glibc-libc-freeres-under-valgrind-triggers
extra-task: /tools/glibc/Regression/bz1717438-glibc-libc-freeres-under-valgrind-triggers

View File

@ -0,0 +1,53 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz1717438-glibc-libc-freeres-under-valgrind-triggers
# Description: Test for BZ#1717438 (glibc __libc_freeres (under valgrind) triggers bad)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2019 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
TESTPROG="tst-libidl"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlRun "TESTTMPDIR=$(mktemp -d)"
rlRun "cp ${TESTPROG}.c $TESTTMPDIR"
rlRun "pushd $TESTTMPDIR"
rlPhaseEnd
rlPhaseStartTest
rlRun -c "gcc ${TESTPROG}.c -o $TESTPROG -ldl -pthread"
rlAssertExists "$TESTPROG"
rlRun -l "valgrind --error-exitcode=111 -q ./${TESTPROG} no_dlerror"
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TESTTMPDIR"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,102 @@
/*
To build:
With system libc:
gcc -o libdl_bug libdl_bug.c -ldl -pthread
With custom libc
libc_dir=/path/to/glibc/install
gcc -o libdl_bug libdl_bug.c -L$libc_dir/lib -Wl,--rpath=$libc_dir/lib \
-Wl,--dynamic-linker=$libc_dir/lib/ld-linux-x86-64.so.2 -ldl -pthread
./libdl_bug bad_free is just a sanity check that valgrind will notice if
|&do_not_free_this| is accidentally passed to |free|.
Otherwise, this tool will allocate a |pthread_key_t| (which will likely be zero)
and store |&do_not_free_this| in it. The |pthread_key_t| has no destructor, so
this is perfectly valid.
It will then optionally call |dlerror| (pass dlerror vs no_dlerror to the tool),
and then return from |main| cleanly. At this point, when running under valgrind,
vg_preloaded.c will call |__libc_freeres|.
In glibc after 2827ab990aefbb0e53374199b875d98f116d6390 (2.28 and later),
|__libc_freeres| will call |__libdl_freeres|, which calls |free_key_mem| in
dlerror.c. That function cleans up |dlerror|'s thread-local state, but has a
bug: if nothing has called |dlerror|, there is no thread-local state and the
|pthread_key_t| is uninitialized! It then blindly calls |free| on the zero key,
and hits our |&do_not_free_this|. That results in an error in valgrind:
$ valgrind -q ./libdl_bug dlerror
Initializing a pthread_key_t.
key = 0
Setting thread local to &do_not_free_this.
Calling dlerror.
Exiting
$ valgrind -q ./libdl_bug no_dlerror
Initializing a pthread_key_t.
key = 0
Setting thread local to &do_not_free_this.
Exiting
==139993== Invalid free() / delete / delete[] / realloc()
==139993== at 0x4C2FFA8: free (vg_replace_malloc.c:540)
==139993== by 0x4E3D6D9: free_key_mem (dlerror.c:223)
==139993== by 0x4E3D6D9: __dlerror_main_freeres (dlerror.c:239)
==139993== by 0x53BFDC9: __libc_freeres (in /[...]/lib/libc-2.29.9000.so)
==139993== by 0x4A296DB: _vgnU_freeres (vg_preloaded.c:77)
==139993== by 0x5296381: __run_exit_handlers (exit.c:132)
==139993== by 0x52963A9: exit (exit.c:139)
==139993== by 0x528105D: (below main) (libc-start.c:342)
==139993== Address 0x30a08c is 0 bytes inside data symbol "do_not_free_this"
==139993==
*/
#include <dlfcn.h>
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
static void usage(const char *prog_name) {
fprintf(stderr, "Usage: %s [bad_free|no_dlerror|dlerror]\n", prog_name);
exit(1);
}
static int do_not_free_this;
static pthread_key_t key;
int main(int argc, char **argv) {
if (argc != 2) {
usage(argv[0]);
}
if (strcmp(argv[1], "bad_free") == 0) {
printf("Calling free(&do_not_free_this). Valgrind should notice.\n");
free(&do_not_free_this);
} else if (strcmp(argv[1], "no_dlerror") == 0 ||
strcmp(argv[1], "dlerror") == 0) {
printf("Initializing a pthread_key_t.\n");
if (pthread_key_create(&key, NULL)) {
perror("pthread_key_create");
exit(1);
}
printf("key = %d\n", key);
printf("Setting thread local to &do_not_free_this.\n");
if (pthread_setspecific(key, &do_not_free_this) != 0) {
perror("pthread_setspecific");
exit(1);
}
if (strcmp(argv[1], "dlerror") == 0) {
printf("Calling dlerror.\n");
dlerror();
}
} else {
usage(argv[0]);
}
printf("Exiting\n");
return 0;
}

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz1882466-RHEL8-2-LD-PRELOAD-of-some-lib-that-has
# Description: Test for BZ#1882466 (RHEL8.2 - LD_PRELOAD of <some lib that has)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2021 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz1882466-RHEL8-2-LD-PRELOAD-of-some-lib-that-has
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE testlib.cc
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Sergey Kolosov <skolosov@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#1882466 (RHEL8.2 - LD_PRELOAD of <some lib that has)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 20m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: gcc-c++ glibc glibc-devel libstdc++ glibc.i686 glibc-devel.i686 libstdc++.i686 libgcc.i686" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 1882466" >> $(METADATA)
@echo "Releases: RHEL8 RHEL9" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,22 @@
summary: Test for BZ#1882466 (RHEL8.2 - LD_PRELOAD of <some lib that has)
description: |
Bug summary: RHEL8.2 - LD_PRELOAD of <some lib that has libstdc++ and libgnu_s linked in> /lib64/libc.so.6 will segfault (glibc)
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1882466
contact:
- Sergey Kolosov <skolosov@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- gcc-c++
- glibc
- glibc-devel
- libstdc++
- glibc.i686
- glibc-devel.i686
- libstdc++.i686
- libgcc.i686
duration: 20m
extra-summary: /tools/glibc/Regression/bz1882466-RHEL8-2-LD-PRELOAD-of-some-lib-that-has
extra-task: /tools/glibc/Regression/bz1882466-RHEL8-2-LD-PRELOAD-of-some-lib-that-has

View File

@ -0,0 +1,67 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz1882466-RHEL8-2-LD-PRELOAD-of-some-lib-that-has
# Description: Test for BZ#1882466 (RHEL8.2 - LD_PRELOAD of <some lib that has)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2021 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
TESTPROG="testlib"
TESTPRELOADLIBS="libpthread.so.0 libstdc++.so.6 libresolv.so.2"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
PACKNVR=$(rpm -q ${PACKAGE}.`arch`)
rlRun "TESTTMPDIR=$(mktemp -d)"
rlRun "cp ${TESTPROG}.cc $TESTTMPDIR"
rlRun "pushd $TESTTMPDIR"
rlPhaseEnd
rlPhaseStartTest "basic"
rlRun -c "g++ -c -Wall -pedantic -fPIC -fno-exceptions -fno-rtti -fno-builtin ${TESTPROG}.cc -o ${TESTPROG}.o"
rlRun -c "g++ -shared -dynamiclib ${TESTPROG}.o -o lib${TESTPROG}.so.1.0"
rlAssertExists "lib${TESTPROG}.so.1.0"
rlRun -c "LD_PRELOAD=${TESTTMPDIR}/lib${TESTPROG}.so.1.0 /lib64/libc.so.6"
rlPhaseEnd
rlPhaseStartTest "additional libs"
rlRun -c "LD_PRELOAD=${TESTTMPDIR}/lib${TESTPROG}.so.1.0 /lib64/libc.so.6"
for L in $TESTPRELOADLIBS
do
rlRun -c "LD_PRELOAD=/usr/lib64/$L /lib64/libc.so.6"
[[ $(rlGetArch) == "x86_64" ]] && rpm -q glibc.i686 && rlRun -c "LD_PRELOAD=/usr/lib/$L /usr/lib/libc.so.6"
done
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TESTTMPDIR"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,17 @@
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
static int* internal_lock = NULL;
static void cuda_hook_init ()
{
printf("%s:%d\n",__func__,__LINE__);
if(internal_lock == NULL)
{
printf("%s:%d\n",__func__,__LINE__);
}
}

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz1988382-annocheck-reports-pie-pic-test-failures-on
# Description: Test for BZ#1988382 (annocheck reports pie/pic test failures on)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2021 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz1988382-annocheck-reports-pie-pic-test-failures-on
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Sergey Kolosov <skolosov@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#1988382 (annocheck reports pie/pic test failures on)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 1h" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: annobin-annocheck glibc" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 1988382" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL5 -RHEL6 -RHEL7 -RHEL8" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,5 @@
PURPOSE of /tools/glibc/Regression/bz1988382-annocheck-reports-pie-pic-test-failures-on
Description: Test for BZ#1988382 (annocheck reports pie/pic test failures on)
Author: Sergey Kolosov <skolosov@redhat.com>
Bug summary: annocheck reports pie/pic test failures on non-x86_64 architectures
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1988382

View File

@ -0,0 +1,17 @@
summary: Test for BZ#1988382 (annocheck reports pie/pic test failures on)
description: |
Bug summary: annocheck reports pie/pic test failures on non-x86_64 architectures
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1988382
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1988382
contact: Sergey Kolosov <skolosov@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- annobin-annocheck
- glibc
duration: 1h
extra-summary: /tools/glibc/Regression/bz1988382-annocheck-reports-pie-pic-test-failures-on
extra-task: /tools/glibc/Regression/bz1988382-annocheck-reports-pie-pic-test-failures-on

View File

@ -0,0 +1,52 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz1988382-annocheck-reports-pie-pic-test-failures-on
# Description: Test for BZ#1988382 (annocheck reports pie/pic test failures on)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2021 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
PACKNVR=$(rpm -q ${PACKAGE}.`arch`)
rlRun "TESTTMPDIR=$(mktemp -d)"
rlRun "pushd $TESTTMPDIR"
rlPhaseEnd
rlPhaseStartTest
rlRun -l "rpm -qal 'glibc*' | while read f ; do if test -f \"\$f\" -a ! -L \"\$f\" ; then echo \$f ; fi ; done | xargs -L 200 annocheck --verbose --verbose --ignore-gaps --skip-all --test-pic --test-pie 2> /dev/null > log" 0,123
rlFileSubmit log
rlAssertNotGrep "FAIL" log
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TESTTMPDIR"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz2007417-glibc-ldd-segfaults-when-inspecting
# Description: Test for BZ#2007417 (glibc ldd segfaults when inspecting vdso/vdso64.so)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2021 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz2007417-glibc-ldd-segfaults-when-inspecting
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE relevancy.json
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Sergey Kolosov <skolosov@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#2007417 (glibc ldd segfaults when inspecting vdso/vdso64.so)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 20m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: glibc glibc-gconv-extra glibc-langpack-en" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 2007417" >> $(METADATA)
@echo "Releases: RHEL9" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,18 @@
summary: Test for BZ#2007417 (glibc ldd segfaults when inspecting vdso/vdso64.so)
description: |
Bug summary: glibc: ldd segfaults when inspecting vdso/vdso64.so
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=2007417
contact: Sergey Kolosov <skolosov@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- glibc
- glibc-gconv-extra
- glibc-langpack-en
duration: 20m
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=2007417
extra-summary: /tools/glibc/Regression/bz2007417-glibc-ldd-segfaults-when-inspecting
extra-task: /tools/glibc/Regression/bz2007417-glibc-ldd-segfaults-when-inspecting

View File

@ -0,0 +1,53 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz2007417-glibc-ldd-segfaults-when-inspecting
# Description: Test for BZ#2007417 (glibc ldd segfaults when inspecting vdso/vdso64.so)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2021 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlRun "TESTTMPDIR=$(mktemp -d)"
rlRun "pushd $TESTTMPDIR"
rlRun -c "dmesg -c >& /dev/null"
rlPhaseEnd
rlPhaseStartTest
for VDSO in `find /usr -name vdso64.so` ; do
rlRun -l "ldd $VDSO"
done
rlRun -l "dmesg"
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TESTTMPDIR"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz2024347-glibc-Optional-sched-getcpu-acceleration-using
# Description: Test for BZ#2024347 (glibc Optional sched_getcpu acceleration using)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2022 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz2024347-glibc-Optional-sched-getcpu-acceleration-using
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE tst.c
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Sergey Kolosov <skolosov@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#2024347 (glibc Optional sched_getcpu acceleration using)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 15m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: gcc glibc glibc-devel strace" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 2024347" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL5 -RHEL6 -RHEL7 -RHEL8" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,5 @@
PURPOSE of /tools/glibc/Regression/bz2024347-glibc-Optional-sched-getcpu-acceleration-using
Description: Test for BZ#2024347 (glibc Optional sched_getcpu acceleration using)
Author: Sergey Kolosov <skolosov@redhat.com>
Bug summary: glibc: Optional sched_getcpu acceleration using rseq
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=2024347

View File

@ -0,0 +1,19 @@
summary: Test for BZ#2024347 (glibc Optional sched_getcpu acceleration using)
description: |
Bug summary: glibc: Optional sched_getcpu acceleration using rseq
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=2024347
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=2024347
contact: Sergey Kolosov <skolosov@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- gcc
- glibc
- glibc-devel
- strace
duration: 15m
extra-summary: /tools/glibc/Regression/bz2024347-glibc-Optional-sched-getcpu-acceleration-using
extra-task: /tools/glibc/Regression/bz2024347-glibc-Optional-sched-getcpu-acceleration-using

View File

@ -0,0 +1,57 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz2024347-glibc-Optional-sched-getcpu-acceleration-using
# Description: Test for BZ#2024347 (glibc Optional sched_getcpu acceleration using)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2022 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
TESTPROG="tst"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
PACKNVR=$(rpm -q ${PACKAGE}.`arch`)
rlRun "TESTTMPDIR=$(mktemp -d)"
rlRun "cp ${TESTPROG}.c $TESTTMPDIR"
rlRun "pushd $TESTTMPDIR"
rlPhaseEnd
rlPhaseStartTest
rlRun -c "gcc ${TESTPROG}.c -o $TESTPROG"
rlAssertExists "$TESTPROG"
rlRun -c "strace -E GLIBC_TUNABLES=glibc.pthread.rseq=1 ./${TESTPROG} 2> log"
rlAssertGrep rseq log
rlAssertNotGrep getcpu log
rlFileSubmit log
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TESTTMPDIR"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,9 @@
#define _GNU_SOURCE
#include <stdio.h>
#include <sched.h>
int
main (void)
{
printf ("%d\n", sched_getcpu ());
}

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz2027789-glibc-backtrace-function-crashes-without-vdso-on
# Description: Test for BZ#2027789 (glibc backtrace function crashes without vdso on)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2021 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz2027789-glibc-backtrace-function-crashes-without-vdso-on
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE tst.c
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Sergey Kolosov <skolosov@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for BZ#2027789 (glibc backtrace function crashes without vdso on)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 10m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: gcc glibc glibc-devel valgrind" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 2027789" >> $(METADATA)
@echo "Releases: -RHEL4 -RHEL5 -RHEL6 -RHEL7 -RHEL8" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,5 @@
PURPOSE of /tools/glibc/Regression/bz2027789-glibc-backtrace-function-crashes-without-vdso-on
Description: Test for BZ#2027789 (glibc backtrace function crashes without vdso on)
Author: Sergey Kolosov <skolosov@redhat.com>
Bug summary: glibc: backtrace function crashes without vdso on ppc64le
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=2027789

View File

@ -0,0 +1,19 @@
summary: Test for BZ#2027789 (glibc backtrace function crashes without vdso on)
description: |
Bug summary: glibc: backtrace function crashes without vdso on ppc64le
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=2027789
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=2027789
contact: Sergey Kolosov <skolosov@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- gcc
- glibc
- glibc-devel
- valgrind
duration: 10m
extra-summary: /tools/glibc/Regression/bz2027789-glibc-backtrace-function-crashes-without-vdso-on
extra-task: /tools/glibc/Regression/bz2027789-glibc-backtrace-function-crashes-without-vdso-on

View File

@ -0,0 +1,56 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz2027789-glibc-backtrace-function-crashes-without-vdso-on
# Description: Test for BZ#2027789 (glibc backtrace function crashes without vdso on)
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2021 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
TESTPROG="tst"
VALLOG="vallog"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
PACKNVR=$(rpm -q ${PACKAGE}.`arch`)
rlRun "TESTTMPDIR=$(mktemp -d)"
rlRun "cp ${TESTPROG}.c $TESTTMPDIR"
rlRun "pushd $TESTTMPDIR"
rlPhaseEnd
rlPhaseStartTest
rlRun -c "gcc ${TESTPROG}.c -g -o $TESTPROG"
rlAssertExists "$TESTPROG"
rlRun -l "valgrind --error-exitcode=111 ./${TESTPROG} 2>$VALLOG"
rlFileSubmit $VALLOG
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TESTTMPDIR"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,12 @@
#include <stdio.h>
#include <execinfo.h>
void call_backtrace(){
void * callstack[128];
backtrace(callstack, 128);
}
int main(){
call_backtrace();
return 0;
}

View File

@ -0,0 +1,49 @@
# Makefile - bz434601-timedlock-segfault - Bugzilla(s) 434601
# Author: Petr Muller <pmuller@redhat.com>
# Location: /tools/glibc/Regression/bz434601-timedlock-segfault/Makefile
# Description: Tests segfault in pthread_mutex_timedlock function
TOPLEVEL_NAMESPACE=/tools
PACKAGE_NAME=glibc
RELATIVE_PATH=Regression/bz434601-timedlock-segfault
export TEST=$(TOPLEVEL_NAMESPACE)/$(PACKAGE_NAME)/$(RELATIVE_PATH)
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile timedlock.c
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
chmod a+x ./runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@touch $(METADATA)
@echo "Owner: Petr Muller <pmuller@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Description: Tests segfault in pthread_mutex_timedlock function" >> $(METADATA)
@echo "Bug: 434601" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 6m" >> $(METADATA)
@echo "RunFor: $(PACKAGE_NAME)" >> $(METADATA)
@echo "Requires: $(PACKAGE_NAME)" >> $(METADATA)
@echo "Requires: gcc" >> $(METADATA)
@echo "License: GPLv3" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,9 @@
Test Name: bz434601-timedlock-segfault - Bugzilla(s) 434601
Author: Petr Muller <pmuller@redhat.com>
Location: /tools/glibc/Regression/bz434601-timedlock-segfault
Short Description: Tests segfault in pthread_mutex_timedlock function
Long Description:
Tests segfault in pthread_mutex_timedlock function

View File

@ -0,0 +1,31 @@
summary: Tests segfault in pthread_mutex_timedlock function
description: |
Test Name: bz434601-timedlock-segfault - Bugzilla(s) 434601
Author: Petr Muller <pmuller@redhat.com>
Location: /tools/glibc/Regression/bz434601-timedlock-segfault
Short Description: Tests segfault in pthread_mutex_timedlock function
Long Description:
Tests segfault in pthread_mutex_timedlock function
contact: Petr Muller <pmuller@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- glibc
- gcc
tag:
- simple
- tier2_mfranc
- noEWA
- Tier2
- not-er15271
- glibc-buildroot-ready
duration: 6m
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=434601
extra-summary: /tools/glibc/Regression/bz434601-timedlock-segfault
extra-task: /tools/glibc/Regression/bz434601-timedlock-segfault

View File

@ -0,0 +1,54 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz434601-timedlock-segfault
# Description: Tests segfault in pthread_mutex_timedlock function bz434601
# Author: Sergey Kolosov <skolosov@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2022 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
TESTPROG="timedlock"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlRun "TESTTMPDIR=$(mktemp -d)"
rlRun "cp ${TESTPROG}.c $TESTTMPDIR"
rlRun "pushd $TESTTMPDIR"
rlPhaseEnd
rlPhaseStartTest
rlRun -c "gcc ${TESTPROG}.c -o $TESTPROG"
rlAssertExists "$TESTPROG"
rlRun -c "./${TESTPROG}"
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TESTTMPDIR"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,64 @@
#include <stdio.h>
#include <unistd.h>
#include <assert.h>
#include <pthread.h>
static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
static volatile int counter = 0;
static volatile int stop = 0;
static void *
testTimedLock(void *arg)
{
int rc = 0;
struct timespec abstime;
abstime.tv_sec = time(0) + 10;
abstime.tv_nsec = 100000000;
for ( ; stop == 0; ) {
rc = pthread_mutex_timedlock( &mutex, &abstime );
if (rc != 0) { perror("Errno:"); };
assert(rc == 0);
++counter;
rc = pthread_mutex_unlock( &mutex );
if (rc != 0) { perror("Errno:"); };
assert(rc == 0);
}
return 0;
}
void
createThreads(int nThreads, pthread_t *thr)
{
int nt;
for ( nt = 0 ; nt < nThreads ; ++nt ) {
int rc = pthread_create( thr+nt, NULL, testTimedLock, NULL);
if (rc != 0) { perror("Errno:"); };
assert( rc == 0 );
}
}
void
joinThreads(int nThreads, pthread_t *thr)
{
int nt;
for ( nt = 0 ; nt < nThreads ; ++nt ) {
int rc = pthread_join( thr[nt], NULL);
if (rc != 0) { perror("Errno:"); };
assert( rc == 0 );
}
}
int
main(void)
{
int nThreads = 10;
pthread_t thr[nThreads];
createThreads(nThreads, thr);
usleep (1000000); // 1 second
stop = 1;
joinThreads(nThreads, thr);
printf("counter = %d\n", counter);
return 0;
}

View File

@ -0,0 +1,64 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /tools/glibc/Regression/bz455360-RHEL4-vfprintf-call-goes-into-recursive
# Description: Test for bz455360 ([RHEL4] vfprintf() call goes into recursive)
# Author: Petr Muller <pmuller@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2009 Red Hat, Inc. All rights reserved.
#
# This copyrighted material is made available to anyone wishing
# to use, modify, copy, or redistribute it subject to the terms
# and conditions of the GNU General Public License version 2.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/tools/glibc/Regression/bz455360-RHEL4-vfprintf-call-goes-into-recursive
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE testcase.c
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
chmod a+x ./runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Petr Muller <pmuller@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test for bz455360 ([RHEL4] vfprintf() call goes into recursive)" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 30m" >> $(METADATA)
@echo "RunFor: glibc" >> $(METADATA)
@echo "Requires: glibc" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Bug: 455360" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,73 @@
PURPOSE of /tools/glibc/Regression/bz455360-RHEL4-vfprintf-call-goes-into-recursive
Description: Test for bz455360 ([RHEL4] vfprintf() call goes into recursive)
Author: Petr Muller <pmuller@redhat.com>
Bug summary: [RHEL4] vfprintf() call goes into recursive overflow and crashes with a segfault
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=455360
Description:
Description of problem in short (details sent next thru IT):
Sporadically, when under load, the client is seeing tibco EMS processes be
killed by segfaults. Getting a robust diagnosis has proven difficult, but from
what can be told, it appears that somehow a vfprintf() call is getting into a
state where it loops with:
<snip>
6 0x008602fa in *__GI___overflow (f=0xf7fe8688, ch=0) at genops.c:240
#7 0x0083afe6 in _IO_helper_overflow (s=0xf7fe8688, c=Variable "c" is not
available.
) at vfprintf.c:2058
</snip>
It recurses for quite some time in glibc and then crashes with a segfault. I've
just gotten the application binary (stripped unfortunately) and thus could
actually get something from the core.
Customer's analysis:
we have seen this issue before. What's going wrong is that we are calling
vfprintf to perform a message trace including the body and the functions in
glibc are recursing approximately 373909 frames and then it crashed.
<snip>
#373902 0x008602fa in *__GI___overflow (f=0xf7fe8688, ch=0) at genops.c:240
#373903 0x0083afe6 in _IO_helper_overflow (s=0xf7fe8688, c=-1)
at vfprintf.c:2058
#373904 0x0086096f in _IO_default_xsputn (f=0xf7fe8688, data=0x32046928,
n=10285) at genops.c:478
#373905 0x0083e88e in _IO_vfprintf (s=0xf7fe8688,
format=0x8321890 "%s %s from %s: connID=%lld prodID=%lld msgID='%s' %s
mode=%s %s='%s'%s%s", ap=0xf7feae90 "ïJ©\236À¦\004\204:Z\\Æ\\ò%$Ü\223K")
at vfprintf.c:1553
#373906 0x0083b0ac in buffered_vfprintf (s=0x929460,
format=0x8321890 "%s %s from %s: connID=%lld prodID=%lld msgID='%s' %s
mode=%s %s='%s'%s%s", args=) at vfprintf.c:2144
#373907 0x0083b2eb in _IO_vfprintf (s=0x929460,
format=0x8321890 "%s %s from %s: connID=%lld prodID=%lld msgID='%s' %s
mode=%s %s='%s'%s%s", ap=0xf7feae58 "Яþ÷lê2\bP°þ÷;\216K") at vfprintf.c:1264
#373908 0x0811ba34 in _authenticate ()
#373909 0x0811bc4c in _authenticate ()
#373910 0x080f7f3c in _authenticate ()
#373911 0x080e8e6a in _authenticate ()
#373912 0x080e6d88 in _authenticate ()
#373913 0x080e6ed0 in _authenticate ()
#373914 0x0807d4fd in ?? ()
#373915 0x2846afc8 in ?? ()
#373916 0x0830e880 in _IO_stdin_used ()
#373917 0x00000432 in ?? ()
#373918 0x0830e86d in _IO_stdin_used ()
#373919 0x0830e86d in _IO_stdin_used ()
#373920 0x00000000 in ?? ()
</snip>
Version-Release number of selected component (if applicable):
glibc-2.3.4-2.39
Additional info:
I have the core and binary set up on a lab host which has the correct version of
glibc installed. Feel free to work on that host:
dhcp139.gsslab.rdu.redhat.com (root:redhat)

View File

@ -0,0 +1,92 @@
summary: Test for bz455360 ([RHEL4] vfprintf() call goes into recursive)
description: |
Bug summary: [RHEL4] vfprintf() call goes into recursive overflow and crashes with a segfault
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=455360
Description:
Description of problem in short (details sent next thru IT):
Sporadically, when under load, the client is seeing tibco EMS processes be
killed by segfaults. Getting a robust diagnosis has proven difficult, but from
what can be told, it appears that somehow a vfprintf() call is getting into a
state where it loops with:
<snip>
6 0x008602fa in *__GI___overflow (f=0xf7fe8688, ch=0) at genops.c:240
#7 0x0083afe6 in _IO_helper_overflow (s=0xf7fe8688, c=Variable "c" is not
available.
) at vfprintf.c:2058
</snip>
It recurses for quite some time in glibc and then crashes with a segfault. I've
just gotten the application binary (stripped unfortunately) and thus could
actually get something from the core.
Customer's analysis:
we have seen this issue before. What's going wrong is that we are calling
vfprintf to perform a message trace including the body and the functions in
glibc are recursing approximately 373909 frames and then it crashed.
<snip>
#373902 0x008602fa in *__GI___overflow (f=0xf7fe8688, ch=0) at genops.c:240
#373903 0x0083afe6 in _IO_helper_overflow (s=0xf7fe8688, c=-1)
at vfprintf.c:2058
#373904 0x0086096f in _IO_default_xsputn (f=0xf7fe8688, data=0x32046928,
n=10285) at genops.c:478
#373905 0x0083e88e in _IO_vfprintf (s=0xf7fe8688,
format=0x8321890 "%s %s from %s: connID=%lld prodID=%lld msgID='%s' %s
mode=%s %s='%s'%s%s", ap=0xf7feae90 "ïJ©\236À¦\004\204:Z\\Æ\\ò%$Ü\223K")
at vfprintf.c:1553
#373906 0x0083b0ac in buffered_vfprintf (s=0x929460,
format=0x8321890 "%s %s from %s: connID=%lld prodID=%lld msgID='%s' %s
mode=%s %s='%s'%s%s", args=) at vfprintf.c:2144
#373907 0x0083b2eb in _IO_vfprintf (s=0x929460,
format=0x8321890 "%s %s from %s: connID=%lld prodID=%lld msgID='%s' %s
mode=%s %s='%s'%s%s", ap=0xf7feae58 "Яþ÷lê2\bP°þ÷;\216K") at vfprintf.c:1264
#373908 0x0811ba34 in _authenticate ()
#373909 0x0811bc4c in _authenticate ()
#373910 0x080f7f3c in _authenticate ()
#373911 0x080e8e6a in _authenticate ()
#373912 0x080e6d88 in _authenticate ()
#373913 0x080e6ed0 in _authenticate ()
#373914 0x0807d4fd in ?? ()
#373915 0x2846afc8 in ?? ()
#373916 0x0830e880 in _IO_stdin_used ()
#373917 0x00000432 in ?? ()
#373918 0x0830e86d in _IO_stdin_used ()
#373919 0x0830e86d in _IO_stdin_used ()
#373920 0x00000000 in ?? ()
</snip>
Version-Release number of selected component (if applicable):
glibc-2.3.4-2.39
Additional info:
I have the core and binary set up on a lab host which has the correct version of
glibc installed. Feel free to work on that host:
dhcp139.gsslab.rdu.redhat.com (root:redhat)
contact: Petr Muller <pmuller@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- glibc
tag:
- simple
- tier1_mfranc
- mfranc_stable
- noEWA
- Tier1
- not-er15271
- glibc-buildroot-ready
duration: 30m
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=455360
extra-summary: /tools/glibc/Regression/bz455360-RHEL4-vfprintf-call-goes-into-recursive
extra-task: /tools/glibc/Regression/bz455360-RHEL4-vfprintf-call-goes-into-recursive

View File

@ -0,0 +1,59 @@
#!/bin/bash
# vim: dict=/usr/share/rhts-library/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/glibc/Regression/bz455360-RHEL4-vfprintf-call-goes-into-recursive
# Description: Test for bz455360 ([RHEL4] vfprintf() call goes into recursive)
# Author: Petr Muller <pmuller@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2009 Red Hat, Inc. All rights reserved.
#
# This copyrighted material is made available to anyone wishing
# to use, modify, copy, or redistribute it subject to the terms
# and conditions of the GNU General Public License version 2.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="glibc"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlRun "TESTTMPDIR=$(mktemp -d)"
rlRun "cp testcase.c $TESTTMPDIR"
rlRun "pushd $TESTTMPDIR"
rlPhaseEnd
rlPhaseStartTest Testing
rlRun "gcc -O0 testcase.c -o tc0"
rlRun "gcc -O2 testcase.c -o tc2"
rlRun "./tc0"
rlAssertNotEquals "Checking for the bug 455360 itself" $? 139
rlAssertExists "abcd"
rlRun "rm -f abcd"
rlRun "./tc2"
rlAssertNotEquals "Checking for the bug 455360 itself" $? 139
rlAssertExists "abcd"
rlPhaseEnd
rlPhaseStartCleanup Cleanup
rlRun "popd"
rlRun "rm -r $TESTTMPDIR"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -0,0 +1,16 @@
#include <stdio.h>
#include <string.h>
int
main (void)
{
char str[8192+2048];
memset (str, 'A', sizeof (str) - 1);
str[sizeof (str) - 1] = '\0';
FILE *f = fopen ("abcd", "w");
setvbuf (f, NULL, _IONBF, 0);
/* Force error on next overflow. */
close (fileno (f));
fprintf (f, "%s\n", str);
return 0;
}

View File

@ -0,0 +1,66 @@
# Makefile - bz464146-sp-corruption - Bugzilla(s) 464146
# Author: Petr Muller <pmuller@redhat.com>
# Location: /tools/glibc/Regression/bz464146-sp-corruption/Makefile
# Description: Test for bz464144, a stack pointer corruption problem
# Copyright (c) 2008 Red Hat, Inc. All rights reserved. This copyrighted material
# is made available to anyone wishing to use, modify, copy, or
# redistribute it subject to the terms and conditions of the GNU General
# Public License v.2.
#
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
TOPLEVEL_NAMESPACE=/tools
PACKAGE_NAME=glibc
RELATIVE_PATH=Regression/bz464146-sp-corruption
export TEST=$(TOPLEVEL_NAMESPACE)/$(PACKAGE_NAME)/$(RELATIVE_PATH)
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE testit.c
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
chmod a+x ./runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@touch $(METADATA)
@echo "Owner: Petr Muller <pmuller@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Description: Test for bz464144, a stack pointer corruption problem" >> $(METADATA)
@echo "Bug: 464146" >> $(METADATA)
@echo "Type: Regression" >> $(METADATA)
@echo "TestTime: 15m" >> $(METADATA)
@echo "RunFor: $(PACKAGE_NAME)" >> $(METADATA)
@echo "Requires: $(PACKAGE_NAME)" >> $(METADATA)
@echo "Requires: quota-devel" >> $(METADATA)
@echo "Requires: gcc" >> $(METADATA)
@echo "License: GPLv2" >> $(METADATA)
@echo "Architectures: x86_64 ia64 s390x" >> $(METADATA)
@echo "Releases: -RHEL3 -RHEL4" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -0,0 +1,10 @@
Test Name: bz464146-sp-corruption - Bugzilla(s) 464146
Author: Petr Muller <pmuller@redhat.com>
Location: /tools/glibc/Regression/bz464146-sp-corruption
Short Description: Test for bz464144, a stack pointer corruption problem
Long Description:
In real life, the problem is only likely to occur with very large applications with hundreds of threads. The result of the bug is that a stack might suddenly jump to an area of virtual memory 4GB away from where it should be.

View File

@ -0,0 +1,36 @@
summary: Test for bz464144, a stack pointer corruption problem
description: |
Test Name: bz464146-sp-corruption - Bugzilla(s) 464146
Author: Petr Muller <pmuller@redhat.com>
Location: /tools/glibc/Regression/bz464146-sp-corruption
Short Description: Test for bz464144, a stack pointer corruption problem
Long Description:
In real life, the problem is only likely to occur with very large applications with hundreds of threads. The result of the bug is that a stack might suddenly jump to an area of virtual memory 4GB away from where it should be.
contact: Petr Muller <pmuller@redhat.com>
component:
- glibc
test: ./runtest.sh
framework: beakerlib
recommend:
- glibc
- quota-devel
- gcc
tag:
- simple
- tier1_mfranc
- mfranc_stable
- noEWA
- Tier1
- NoRHEL3
- NoRHEL4
- not-er15271
- glibc-buildroot-ready
duration: 15m
link:
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=464146
extra-summary: /tools/glibc/Regression/bz464146-sp-corruption
extra-task: /tools/glibc/Regression/bz464146-sp-corruption

Some files were not shown because too many files have changed in this diff Show More