Commit Graph

438 Commits

Author SHA1 Message Date
Richard Purdie
afec350590 glibc-y2038-tests: Don't force distro policy
How debugging is laid out is for the distro to decide, not the recipe. If the user
wants this, they can set this. This recipe isn't special.

(From OE-Core rev: 3250bdf1d9da2908b80326f4d3a61b0131fe6e2b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-08-08 08:26:14 +01:00
Richard Purdie
a8b4b3ef07 glibc-y2038-tests: Fix debug split and drop INSANE_SKIPs
Create the separate dbg package and then drop and the INSANE_SKIP values
as none of them appear to be needed once debug splitting is fixed.

(From OE-Core rev: 922b5e7272c9b63c39d0c5ee0a67f08664994ab9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-08-08 08:26:14 +01:00
Peter Marko
715899efb7 glibc: cleanup old cve status
This CVE status should have been removed on version update.
CPE says >=2.34 and <2.39 while our version is already 2.40.

(From OE-Core rev: b568a8f428e76f75bb8c374983f62822325ebe8a)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-07-26 12:28:42 +01:00
Khem Raj
28fd497a26 glibc: Remove redundant configure option --disable-werror
This is applied unconditionally few lines above

(From OE-Core rev: e9c6dcbe0e93f943ee622ee88d30ce0eb3dd3329)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-07-22 16:53:06 +01:00
Khem Raj
ece2f57685 glibc: Upgrade to 2.40
Major new features:

* The <stdbit.h> header type-generic macros have been changed when using
  GCC 14.1 or later to use __builtin_stdc_bit_ceil etc. built-in functions
  in order to support unsigned __int128 and/or unsigned _BitInt(N) operands
  with arbitrary precisions when supported by the target.

* The GNU C Library now supports a feature test macro _ISOC23_SOURCE to
  enable features from the ISO C23 standard.  Only some features from
  this standard are supported by the GNU C Library.  The older name
  _ISOC2X_SOURCE is still supported.  Features from C23 are also enabled
  by _GNU_SOURCE, or by compiling with the GCC options -std=c23,
  -std=gnu23, -std=c2x or -std=gnu2x.

* The following ISO C23 function families (introduced in TS
  18661-4:2015) are now supported in <math.h>.  Each family includes
  functions for float, double, long double, _FloatN and _FloatNx, and a
  type-generic macro in <tgmath.h>.

  - Exponential functions: exp2m1, exp10m1.

  - Logarithmic functions: log2p1, log10p1, logp1.

* A new tunable, glibc.rtld.enable_secure, can be used to run a program
  as if it were a setuid process. This is currently a testing tool to allow
  more extensive verification tests for AT_SECURE programs and not meant to
  be a security feature.

* On Linux, the epoll header was updated to include epoll ioctl definitions
  and the related structure added in Linux kernel 6.9.

* The fortify functionality has been significantly enhanced for building
  programs with clang against the GNU C Library.

* Many functions have been added to the vector library for aarch64:
    acosh, asinh, atanh, cbrt, cosh, erf, erfc, hypot, pow, sinh, tanh

* On x86, memset can now use non-temporal stores to improve the performance
  of large writes. This behaviour is controlled by a new tunable
  x86_memset_non_temporal_threshold.

Deprecated and removed features, and other changes affecting compatibility:

* Architectures which use a 32-bit seconds-since-epoch field in struct
  lastlog, struct utmp, struct utmpx (such as i386, powerpc64le, rv32,
  rv64, x86-64) switched from a signed to an unsigned type for that
  field.  This allows these fields to store timestamps beyond the year
  2038, until the year 2106.  Please note that applications are still
  expected to migrate off the interfaces declared in <utmp.h> and
  <utmpx.h> (except for login_tty) due to locking and session management
  problems.

* __rseq_size now denotes the size of the active rseq area (20 bytes
  initially), not the size of struct rseq (32 bytes initially).

(From OE-Core rev: 4dd98c39204c1bfdf54b10ec72c3003118ac1dba)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-07-22 16:53:06 +01:00
Deepthi Hemraj
c6a7695258 glibc: stable 2.39 branch updates.
Below commits on glibc-2.39 stable branch are updated.
e8f5217097 Linux: Make __rseq_size useful for feature detection (bug 31965)
143a7a0623 elf: Make dl-rseq-symbols Linux only
1062ebbd19 nptl: fix potential merge of __rseq_* relro symbols
5c46e6b666 s390x: Fix segfault in wcsncmp [BZ #31934]
a036311246 stdlib: fix arc4random fallback to /dev/urandom (BZ 31612)
d2cbfcf1d9 math: Provide missing math symbols on libc.a (BZ 31781)
d473c9bb3b math: Fix isnanf128 static build (BZ 31774)
3950cbd7a1 math: Fix i386 and m68k exp10 on static build (BZ 31775)
6cb25aff85 math: Fix i386 and m68k fmod/fmodf on static build (BZ 31488)
74630b1bb7 posix: Fix pidfd_spawn/pidfd_spawnp leak if execve fails (BZ 31695)
7f9f25f255 Linux: Include <dl-symbol-redir-ifunc.h> in dl-sysdep.c
198632a05f NEWS: update list of fixed CVEs in 2.39
77bb3c7154 NEWS: update list of fixed bugs in 2.39
f05638731e x86: Properly set x86 minimum ISA level [BZ #31883]
b7f5b0a711 x86: Properly set MINIMUM_X86_ISA_LEVEL for i386 [BZ #31867]
e1d0040a6d localedata: ssy_ER: Fix syntax error
9de9cd17e7 malloc: New test to check malloc alternate path using memory obstruction
a2da98aa2a malloc: Improve aligned_alloc and calloc test coverage.
305ee48826 malloc/Makefile: Split and sort tests
00899eba26 x86/cet: fix shadow stack test scripts
6ade91c211 elf: Avoid some free (NULL) calls in _dl_update_slotinfo
70f560fc22 misc: Add support for Linux uio.h RWF_NOAPPEND flag
c9d8534406 i386: Disable Intel Xeon Phi tests for GCC 15 and above (BZ 31782)
aee37de299 Reinstate generic features-time64.h
dd535f4f19 Always define __USE_TIME_BITS64 when 64 bit time_t is used
26e7005728 socket: Use may_alias on sockaddr structs (bug 19622)
9f2b100d67 parse_fdinfo: Don't advance pointer twice [BZ #31798]

(From OE-Core rev: 95fd926a23d20bcbf5ffe1e91df60dadc77481b4)

Signed-off-by: Deepthi Hemraj <Deepthi.Hemraj@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-07-21 11:08:11 +01:00
Ross Burton
4e96673ae2 glibc: add task to list exported symbols
When upgrading glibc it's important to know if there are any new symbols
that pseudo needs to wrap. In the future a generalised ABI comparison tool
would be good, but to solve the immediate need we can simply list the
exported symbols to files in WORKDIR.

(From OE-Core rev: 395e057743f04e5ee862d790dcfce026220a2699)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-07-16 11:56:53 +01:00
Kai Kang
d876223293 glibc: fix fortran header file conflict for arm
There is a file conflict for arm when multilib enabled:

| Error: Transaction test error:
|   file /usr/include/finclude/math-vector-fortran.h conflicts between attempted installs of
    lib32-libc6-dev-2.39+git0+312e159626-r0.armv7at2hf_neon and libc6-dev-2.39+git0+312e159626-r0.cortexa72

Install math-vector-fortran.h to the gfortran default search directory
which is arch specific to avoid the conflict.

(From OE-Core rev: d2165543e796d4558c632af24eb7b115bca45969)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-06-26 14:33:42 +01:00
Sundeep KOKKONDA
09b5bafd0d glibc: stable 2.39 branch updates.
Below commits on glibc-2.39 stable branch are updated.
c7c3f5bf80 LoongArch: Fix undefined `__memset_aligned` reference in ld.so linking.
32969a2b36 socket: Add new test for connect
2db79c96ba libsupport: Add xgetpeername
ab4ef4421f x86_64: Fix missing wcsncat function definition without multiarch (x86-64-v4)
97bb89668d Force DT_RPATH for --enable-hardcoded-path-in-tests
71149c2a2e elf: Only process multiple tunable once (BZ 31686)
f8e4623421 Add a test to check for duplicate definitions in the static library
8b005d7869 i686: Fix multiple definitions of __memmove_chk and __memset_chk
8323a83abd i586: Fix multiple definitions of __memcpy_chk and __mempcpy_chk
5141d4d83c Revert "i586: Fix multiple definitions of __memcpy_chk and __mempcpy_chk"
c16871e662 Revert "i686: Fix multiple definitions of __memmove_chk and __memset_chk"
fa616ea373 Revert "Add a test to check for duplicate definitions in the static library"
ff110b2591 Add a test to check for duplicate definitions in the static library
ad92c483a4 i686: Fix multiple definitions of __memmove_chk and __memset_chk
3148714ab6 i586: Fix multiple definitions of __memcpy_chk and __mempcpy_chk

(From OE-Core rev: b33b29cc6a41ce5ce8c8648bbb6799e323c77b8b)

Signed-off-by: Sundeep KOKKONDA <sundeep.kokkonda@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-05-28 09:38:23 +01:00
Richard Purdie
71c6db8e65 recipes: Start WORKDIR -> UNPACKDIR transition
Replace references of WORKDIR with UNPACKDIR where it makes sense to do
so in preparation for changing the default value of UNPACKDIR.

(From OE-Core rev: 1f18b9a512800860d5153d89eb82b56388efad6f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-05-21 12:08:04 +01:00
Peter Marko
1a91dba13f glibc: Update to latest on stable 2.39 branch
Adresses CVEs: CVE-2024-33599, CVE-2024-33600, CVE-2024-33601, CVE-2024-33602

Changes:
273a835fe7 time: Allow later version licensing.
acc56074b0 nscd: Use time_t for return type of addgetnetgrentX
836d43b989 login: structs utmp, utmpx, lastlog _TIME_BITS independence (bug 30701)
9831f98c26 login: Check default sizes of structs utmp, utmpx, lastlog
fd658f026f elf: Also compile dl-misc.os with $(rtld-early-cflags)
a9a8d3eebb CVE-2024-33601, CVE-2024-33602: nscd: netgroup: Use two buffers in addgetnetgrentX (bug 31680)
c99f886de5 CVE-2024-33600: nscd: Avoid null pointer crashes after notfound response (bug 31678)
5a508e0b50 CVE-2024-33600: nscd: Do not send missing not-found response in addgetnetgrentX (bug 31678)
1263d583d2 CVE-2024-33599: nscd: Stack-based buffer overflow in netgroup cache (bug 31677)
2f8f157eb0 x86: Define MINIMUM_X86_ISA_LEVEL in config.h [BZ #31676]
e701c7d761 i386: ulp update for SSE2 --disable-multi-arch configurations
e828914cf9 nptl: Fix tst-cancel30 on kernels without ppoll_time64 support

Since glibc introduced file sysdeps/arm/bits/wordsize.h
our multilib patch needed to be updated.

(From OE-Core rev: 8df8dcc37fd05551dcf89ff2ab5d73d7679cf6b6)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-05-09 09:48:58 +01:00
Peter Marko
df8aaff67e glibc: correct license
The license per [1] is LGPL-2.1-or-later and
[2] converted last LGPL-2.1-only references.

License-Update: corrected from LGPL-2.1-only to LGPL-2.1-or-later based on [1] and [2]

[1] https://www.gnu.org/software/libc/
[2] https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=273a835fe7c685cc54266bb8b502787bad5e9bae

(From OE-Core rev: b7ad15a59d048ca7561a03cb0fc8e2c24680ce5c)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-05-09 09:48:58 +01:00
Richard Purdie
0ea63b6a43 recipes: Update WORKDIR references to UNPACKDIR
Since we want to be able to stop unpacking to WORKDIR, correct the WORKDIR
references in recipe do_compile/do_install tasks to use UNPACKDIR in the
appropraite places instead.

(From OE-Core rev: d73595df69667fe9d12ecd407b77a0b8dae2109c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-05-02 15:15:51 +01:00
Peter Marko
148eda4aeb glibc: Update to latest on stable 2.39 branch
Adresses CVE-2024-2961

Remove backported patch included in hash update.

Changes:
31da30f23c iconv: ISO-2022-CN-EXT: fix out-of-bound writes when writing escape sequence (CVE-2024-2961)
423099a032 x86_64: Exclude SSE, AVX and FMA4 variants in libm multiarch
04df8652eb Apply the Makefile sorting fix
edb9a76e30 powerpc: Fix ld.so address determination for PCREL mode (bug 31640)
7b92f46f04 x86-64: Simplify minimum ISA check ifdef conditional with if
9883f4304c x86-64: Don't use SSE resolvers for ISA level 3 or above
9d92452c70 AArch64: Check kernel version for SVE ifuncs
395a89f61e aarch64: fix check for SVE support in assembler
b0e0a07018 aarch64/fpu: Sync libmvec routines from 2.39 and before with AOR
31c7d69af5 i386: Use generic memrchr in libc (bug 31316)
5d070d12b3 x86: Expand the comment on when REP STOSB is used on memset
6484a92698 x86: Do not prefer ERMS for memset on Zen3+
aa4249266e x86: Fix Zen3/Zen4 ERMS selection (BZ 30994)
5a461f2949 Add tst-gnu2-tls2mod1 to test-internal-extras
aded2fc004 elf: Enable TLS descriptor tests on aarch64
a8ba52bde5 arm: Update _dl_tlsdesc_dynamic to preserve caller-saved registers (BZ 31372)
15aebdbada Ignore undefined symbols for -mtls-dialect=gnu2
354cabcb26 x86-64: Allocate state buffer space for RDI, RSI and RBX
853e915fdd x86-64: Update _dl_tlsdesc_dynamic to preserve AMX registers
a364304718 x86: Update _dl_tlsdesc_dynamic to preserve caller-saved registers
7fc8242bf8 x86-64: Save APX registers in ld.so trampoline
983f34a125 LoongArch: Correct {__ieee754, _}_scalb -> {__ieee754, _}_scalbf
aad45c8ac3 powerpc: Placeholder and infrastructure/build support to add Power11 related changes.
ee7f4c54e1 powerpc: Add HWCAP3/HWCAP4 data to TCB for Power Architecture.
71fcdba577 linux: Use rseq area unconditionally in sched_getcpu (bug 31479)

(From OE-Core rev: 8b0124782510389bdc376fab645a0920b3fb94c8)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-30 22:20:16 +01:00
Yash Shinde
8d27d8ff7c glibc: Skip 2 qemu tests that can hang in oe-selftest
qemumips and qemuppc were leaving stale processes behind after
running glibc oe-selftest. During analysis, it was found that
it was due to "tst-scm_rights" and "tst-scm_rights-time64" tests.
Disable them so that there are no stale processes left behind.

[YOCTO #15423]
https://bugzilla.yoctoproject.org/show_bug.cgi?id=15423

(From OE-Core rev: b3f7b19b6d21368bac00a33ea208cc0379ce4543)

Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-04 14:05:03 +01:00
Khem Raj
81567510fd glibc: Repace aarch configure patch fix with a backport
despite it being an issue in gcc and still being open
glibc has fixed this problem upstream regardless, therefore
apply the backport instead.

(From OE-Core rev: a6200d18c6a1438e39d44b391f8d0e343f8fdc1a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-03-26 17:10:51 +00:00
Khem Raj
af911135e4 glibc: Update to tip of 2.39 branch
Brings

* 1b9c1a0047 Use gcc __builtin_stdc_* builtins in stdbit.h if possible
* e0910f1d32 S390: Do not clobber r7 in clone [BZ #31402]
* d0724994de math: Update mips64 ulps

(From OE-Core rev: b2274aa08fda1734af840aca05c7c7ce464d8775)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-03-18 12:21:45 +00:00
Jonathan GUILLOT
a75218da7a glibc-locale: add an explicit dedicated package for locale.alias file
Until now, ${datadir}/locale/locale.alias file were automatically added
to a weird glibc-locale-locale.alias package by split_locales() during
do_package task.
Create an explicit package name in recipe for this file.

(From OE-Core rev: 405c5b6f04b531c968d0f8348c2dafe363011898)

Signed-off-by: Jonathan GUILLOT <jonathan@joggee.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-24 16:10:22 +00:00
Fabien Mahot
6088f280db ldconfig-native: Fix to point correctly on the DT_NEEDED entries in an ELF file
When ldconfig-native reads an ELF file, it computes an offset from a LOAD
segment, to point on DT NEEDED entries of dynstr section.
Without this patch, ldconfig-native uses only the first LOAD segment, even if
the offset is incorrect.
This patch adds conditions to compute the offset by parsing all LOAD segments,
one by one.

This is a backport from [0], ported to support endianness and 32/64 bits.

[0]: https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=58e8f5fd2ba47b6dc47fd4d0a35e4175c7c87aaa

(From OE-Core rev: 22e35ccf3731164722e3cda9de1802d7326cb507)

Signed-off-by: Fabien Mahot <fabien.mahot@external.desouttertools.com>
Reviewed-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-17 18:19:19 +00:00
Khem Raj
b080cecd05 glibc: Update to bring mips32/clone3 fix
This patch is the only change applied with this update

* 312e159626 mips: FIx clone3 implementation (BZ 31325)

(From OE-Core rev: c100c709e746e7b7301c5e01cbf43572a225f00e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-14 13:53:36 +00:00
Khem Raj
f6d6f1af1d glibc: Update to latest on 2.39
Brings this bugfix for arm

63295e4fda arm: Remove wrong ldr from _dl_start_user (BZ 31339)

(From OE-Core rev: 109c14a3d6ebe0a7162bc275f4f8ae8adf91196d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-13 13:51:41 +00:00
Valek Andrej
b94e596464 glibc: Refresh CVE status w.r.t 2.39 release
- drop irrelevant CVEs for 2.39 release

(From OE-Core rev: bea91fb120fef012c1501d470f85ee60a672d1e3)

Signed-off-by: Valek Andrej <andrej.v@skyrain.eu>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-06 10:32:19 +00:00
Khem Raj
6d503a7f39 glibc: Upgrade to 2.39
License-Update: Relicenses the IBM portions of resolv/base64.c and
resolv/res_debug.c to a new license that does not have use-limited
patent language [1]

Upgrade localdef to get glibc 2.39 build fixes
Details of release [2]

Add fix for mips clone3 crash

[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=ae49a7b29acc184b03c2a6bd6ac01b5e08efd54f
[2] https://sourceware.org/glibc/wiki/Release/2.39

(From OE-Core rev: 41ee98ea7e029515a94835952b8563097150f456)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-06 10:32:19 +00:00
Khem Raj
292ffc1f8c glibc: Do not enable CET on 32bit x86
Support has been removed from 2.39+ see [1]

[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=25f1e16ef03a6a8fb1701c4647d46c564480d88c

(From OE-Core rev: 63925be1c40aee0baeebd5bf6fdfafed18200b5f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-01-24 15:46:19 +00:00
Simone Weiß
1863c0da93 glibc: Set status for CVE-2023-5156 & CVE-2023-0687
Set `CVE_STATUS`for those CVEs, they have already been fixed with the latest
pull for stable branch fixes done in rev
e444d2bed0. Hence the issues are fixed
already.

(From OE-Core rev: 6e6fe23c95f1d0a8a0503cb71557cf3272bf9945)

Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-01-12 11:54:05 +00:00
Alexander Kanavin
30e0c90f30 glibc-y2038-tests: do not run tests using 32 bit time APIs
I'm not sure why this was included and enabled to begin with: the tests
predictably mass-fail if system time is set to after y2038.

(From OE-Core rev: c9c7ebd6e447bce19803253afd881854f686b5f6)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-01-03 23:36:34 +00:00
Sundeep KOKKONDA
a9db3010b9 glibc: stable 2.38 branch updates
Below commits on glibc-2.38 stable branch are updated.
1e04dcec49 Revert "elf: Move l_init_called_next to old place of l_text_end in link map"
719866ab2f Revert "elf: Always call destructors in reverse constructor order (bug 30785)"
e0b6c9706c Revert "elf: Remove unused l_text_end field from struct link_map"

(From OE-Core rev: c14832a8cd40171e4081aadb613de185ae233851)

Signed-off-by: Sundeep KOKKONDA <sundeep.kokkonda@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-30 08:43:04 +00:00
Stefan Herbrechtsmeier
b8ae444d34 glibc: use nonarch libdir for tmpfiles.d
The documentation of systemd states that /etc/tmpfiles.d should be
reserved for the local administrator and packages should put their files
in /usr/lib/tmpfiles.d [1].

[1] https://www.freedesktop.org/software/systemd/man/tmpfiles.d.html

(From OE-Core rev: e2bebef14a64c510b8f5b0a21f15347d6919c218)

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Signed-off-by: Lukas Funke <lukas.funke@weidmueller.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-20 15:30:52 +00:00
Richard Purdie
e444d2bed0 glibc: Pull in stable branch fixes
Pull in stable branch fixes including:

* tunables: Terminate if end of input is reached (CVE-2023-4911)
* Propagate GLIBC_TUNABLES in setxid binaries
* Document CVE-2023-4806 and CVE-2023-5156 in NEWS
* Fix leak in getaddrinfo introduced by the fix for CVE-2023-4806 [BZ #30843]

Also set CVE_STATUS accordingly for the fixes pulled in.

(From OE-Core rev: 7d77bce6158bf11a2de0944f75589382f153bb91)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-04 13:00:33 +01:00
Deepthi Hemraj
c6ed95a7e4 glibc: stable 2.38 branch updates.
Below commits on glibc-2.38 stable branch are updated.
0e1ef6779a (HEAD -> release/2.38/master, origin/release/2.38/master) manual/jobs.texi: Add missing @item EPERM for getpgid
d94461bb86 string: Fix tester build with fortify enable with gcc < 12
63250e9c57 iconv: restore verbosity with unrecognized encoding names (bug 30694)
00ae4f10b5 getaddrinfo: Fix use after free in getcanonname (CVE-2023-4806)
b25508dd77 CVE-2023-4527: Stack read overflow with large TCP responses in no-aaaa mode
89da8bc588 NEWS: Add the 2.38.1 bug list
d3ba6c1333 elf: Move l_init_called_next to old place of l_text_end in link map
750f19526a elf: Remove unused l_text_end field from struct link_map
a3189f66a5 elf: Always call destructors in reverse constructor order (bug 30785)
7ae211a01b elf: Do not run constructors for proxy objects
92201f16cb libio: Fix oversized __io_vtables
5bdef6f27c io: Fix record locking contants for powerpc64 with __USE_FILE_OFFSET64

0024-CVE-2023-4527.patch is dropped

(From OE-Core rev: eae8634ff7a7dd6f84c4607b5f1b0c6fe5e39f37)

Signed-off-by: Deepthi Hemraj <Deepthi.Hemraj@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-03 22:18:27 +01:00
Yash Shinde
82dfa7b8ac glibc: fix CVE-2023-4527
Upstream-Status: Backport[https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=4ea972b7edd7e36610e8cde18bf7a8149d7bac4f]

(From OE-Core rev: 66b6133b5e623f39d9c26dae3097035dafd41f60)

Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-09-26 10:35:28 +01:00
Richard Purdie
1b94ea8b25 recipes: Drop remaining PR values from recipes
We've been removing PR values from recipes at upgrade time for a while. In general
anyone maintaining a binary distro would end up having to curate these themselves
so the values in OE-Core aren't really that useful anymore. In many ways it makes
sense to clear out the remaining ones (which are mostly for 'config' recipes that
are unlikely to increase in PV) and leave a clean slate for anyone implementing
a binary distro config.

References are left in meta-selftest since the tests there do involve them and
their removal upon upgrade.

(From OE-Core rev: d4c346e8ab8f3cae25d1b01c7331ed9f6d4f96ef)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-09-22 07:45:17 +01:00
Alexander Kanavin
0be8df3e58 glibc-tests: rename to glibc-y2038-tests
The recipe originates from meta-y2038 where the name was not
confusing, but in oe-core it is.

(From OE-Core rev: 90bc7a66b08580207839fc6aafe1ac86c12981c5)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-09-18 08:53:10 +01:00
Lei Maohui
71d83f653a glibc-package: Fix conflict error when enable multilib.
file /usr/include/bits/math-vector.h from install of lib32-libc6-dev-2.38-r0.armv7ahf_neon conflicts with file from package libc6-dev-2.38-r0.aarch64

Reference to the git log of glibc, upstream modified math-vector.h for
aarch64, so this file has many differences from aarch32.
For detailed modifications, please refer to these two commit log of
glibc:
commit 4a9392ffc27ad280f84779eea3ba01f2c134d1d8
commit 78c01a5cbeb6717ffa2d4d66bb90ac5c39bd81a9

(From OE-Core rev: ecfa84f5bb238ef2252d6491a6cde2c5fd202213)

Signed-off-by: Lei Maohui <leimaohui@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-09-06 17:52:45 +01:00
Richard Purdie
75a46cf843 glibc: Add glibc 2.38 stable updates
Pull in the following stable branch updates:

1aed90c9c8f8be9f68b58e96b6e4cd0fc08eb2b1 sysdeps: tst-bz21269: fix -Wreturn-type
ad9b8399537670a990572c4b0c4da5411e3b68cf sysdeps: tst-bz21269: handle ENOSYS & skip appropriately
c8ecda6251dd4a0dfe074e0a6011211cadeef742 sysdeps: tst-bz21269: fix test parameter
2af141bda3cd407abd4bedf615f9e45fe79518e2 malloc: Remove bin scanning from memalign (bug 30723)
98c293c61f770b6b7a22f89a6ea81b711ecb1952 malloc: Enable merging of remainders in memalign (bug 30723)
7ac405a74c6069b0627dc2d8449a82a621f8ff06 i686: Fix build with --disable-multiarch
6135d50e44233d8c89ca788f78c669941ad09fb9 x86_64: Fix build with --disable-multiarch (BZ 30721)
5ea70cc02626d9b85f1570153873d8648a47bf95 x86: Fix incorrect scope of setting `shared_per_thread` [BZ# 30745]
6b99458d197ab779ebb6ff632c168e2cbfa4f543 nscd: Do not rebuild getaddrinfo (bug 30709)
ced101ed9d3b7cfd12d97ef24940cb00b8658c81 x86: Fix for cache computation on AMD legacy cpus.
d97cca1e5df812be0e4de1e38091f02bb1e7ec4e stdlib: Improve tst-realpath compatibility with source fortification

(From OE-Core rev: f65f0811e32b4fb57536f3331cc2422c4d71e9bf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-09-01 18:26:58 +01:00
Martin Jansa
3fac9a06a0 cross-localedef-native: fix build on hosts with older glibc
Older glibc on host might be missing __glibc_has_attribute added in glibc-2.34 with:

https://sourceware.org/git/?p=glibc.git;a=blobdiff;f=misc/sys/cdefs.h;h=8e244a77cf6271f09cbd26d18b1e07b1d1641404;hp=57ca262bdfb642bf4a945645532f2319ec1ff437;hb=c8ba52ab3350c334d6e34b1439a4c0c1431351f3;hpb=7dd416491e080456fc7742d884c520526509413e

Fixes:
In file included from ../git/localedef/include/programs/xmalloc.h:21,
                 from glibc/locale/programs/localedef.h:124,
                 from glibc/locale/programs/localedef.c:36:
../git/localedef/include/sys/cdefs.h:85:51: error: missing binary operator before token "("
   85 | #if __GNUC_PREREQ (4, 3) || __glibc_has_attribute (__cold__)
      |                                                   ^

Only commit included:
e0eca29 cdefs.h: define __glibc_has_attribute

(From OE-Core rev: 62c464bb4e3ebb6b50864ede7b352651b2c81e3c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-08-21 11:34:12 +01:00
Khem Raj
40d0b3c9a5 glibc-tests: Add missing libgcc runtime dependency
Some tests e.g. tst-y2039-time64 from glibc 2.38+ needs it.

(From OE-Core rev: d41e6b8c9ff1d42fd6211fd2c24f666cac188f79)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-08-16 07:54:38 +01:00
Khem Raj
0ffc861b49 glibc: Fix SVE detection on aarch64
(From OE-Core rev: 10e1ae119e8087598947dd45c163d5fe6569839d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-08-16 07:54:38 +01:00
Khem Raj
0a8e0691e0 glibc: Drop --enable-tunables
Its removed and is implicit default in 2.38+ [1]

[1] https://mail.gnu.org/archive/html/info-gnu/2023-07/msg00010.html

(From OE-Core rev: e2af021f5b918c619396eecb20fa30a71cf5e776)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-08-16 07:54:38 +01:00
Khem Raj
69f402ad7b glibc: Enable fortify sources by defaults
(From OE-Core rev: f71d9d87e638ebeea5be1a64ad98a9460ee3d1f2)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-08-16 07:54:38 +01:00
Khem Raj
842fda61cf glibc: Upgrade to 2.38 release
Announcement - https://mail.gnu.org/archive/html/info-gnu/2023-07/msg00010.html

(From OE-Core rev: 16aff29593d7991d7ae953d5fb526a897c5a7268)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-08-16 07:54:38 +01:00
Alexander Kanavin
a0748b0014 glibc-locale: use stricter matching for metapackages' runtime dependencies
This resolves two issues:

1. metapackages were depending on themselves (except -binaries which wouldn't match against 'glibc-binary').

2. for the nativesdk variant, due to a non-empty dependency list at parsing time caused by
issue 1, map_depends_variable() from meta/lib/oe/classextend.py was forcibly setting PACKAGES
to the initial parse-time value (e.g. missing the dynamically created packages). This meant that
three out of four nativesdk- metapackages were entireyly missing the dependencies on the
respective dynamic package sets.

(From OE-Core rev: a90fd3afe9184aa1870b34a826e3ba0563477d4b)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-07-30 09:16:53 +01:00
Anuj Mittal
d6294101a8 glibc/check-test-wrapper: don't emit warnings from ssh
Dont fill up the test log with ssh warning about having added the host
to list of known hosts.

Also helps fix a test case failure where stderr log was being compared
to a known value.

(From OE-Core rev: 63b31ff7e54a171c4c02fca2e6b07aec64a410af)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-07-26 20:51:00 +01:00
Andrej Valek
c15e506a46 cve_check: convert CVE_CHECK_IGNORE to CVE_STATUS
- Try to add convert and apply statuses for old CVEs
- Drop some obsolete ignores, while they are not relevant for current
  version

(From OE-Core rev: 1634ed4048cf56788cd5c2c1bdc979b70afcdcd7)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Reviewed-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-07-21 11:52:26 +01:00
Richard Purdie
d8c1c3afb5 glibc-testsuite: Fix network restrictions causing test failures
The check target for the glibc testsuite uses networking to access
a QEMU in system mode. This was resulting in large numbers of test
failures for the x86 targets that use it.

Enable network access to resolve this.

(From OE-Core rev: 088e022f80e57ca345838bf57df9abad3d8b9313)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-07-20 12:24:58 +01:00
Khem Raj
616f694b72 glibc: Pass linker choice via compiler flags
glibc configury tries to detect ld version and assumes BFD or gold
linker but when system ld is pointing to lld or mold it might fail the
linker check, therefore pass LD variable to explicitly point at ld.bfd
we are using BFD linker only to link glibc after all.

Second problem in such a case is that some partial objects are linked
with CC -r which will fail if we do not inform the compiler to use BFD
linker thusly pass it via appending to CC variable

(From OE-Core rev: 63248d2cbd7a15aec5b864d0058fe919eb17c46c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-06-13 22:10:32 +01:00
Richard Purdie
1285f78ce8 recipes: Default to https git protocol where possible
The recommendation from server maintainers is that the https protocol
is both faster and more reliable than the dedicated git protocol at this point.
Switch to it where possible.

(From OE-Core rev: 139102a73d4151f4748b4a861bd4ab28dda7dab7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-05-05 11:07:25 +01:00
Richard Purdie
9a20fbe23f binutils: Drop crosssdk suffix from virtual provides to improve dependency handling
There is little point in having "crosssdk" suffex added to the virtual provider within
binutils since the TARGET_PREFIX or SDK_PREFIX already encapsulates this. Remove it
allowing some of the special case overriding to be removed.

(From OE-Core rev: 6856fc5c848cc2564bebe03a007ef109f46d0adb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-05-02 10:24:50 +01:00
Richard Purdie
c8dd8c99ef abi_version/sstate: Handle pkgconfig output changes and bump output versions
A recent package.py change has highlighted some corruption issues with -dev
pkgconfig package dependencies. Bump the output versions to trigger a rebuild
and ensure everything is consistent.

Take the opportunity to also drop all HASHEQUIV_HASH_VERSION entries since the
main version is changing.

(From OE-Core rev: f45ddfbf007de858327eef0ffefd5840ef4c69b8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-26 18:50:17 +01:00
Jialing Zhang
13c1529b70 recipes: add support for loongarch64
glibc gcc vulkan add support for loongarch64

(From OE-Core rev: 526b9a8ebacf07690dfc5beb1788ab7a5bef8423)

Signed-off-by: Jialing Zhang <zhangjialing@loongson.cn>
Signed-off-by: Qizheng Zhu <zhuqizheng@loongson.cn>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-23 22:36:46 +00:00