Bug#1123843: trixie-pu: package glibc/2.41-12+deb13u1

Aurelien Jarno <[email protected]>
Newsgroups gmane.linux.debian.devel.glibc
Message-ID <176641443489.2414438.13062677452979158022.reportbug__1385.36866740964$1766418155$gmane$org@ohm.local>
Package: release.debian.org
Severity: normal
Tags: trixie
X-Debbugs-Cc: [email protected]
Control: affects -1 + src:glibc
User: [email protected]
Usertags: pu

[ Reason ]
The upstream stable branch received many fixes since the trixie release,
and this update pulls them into the debian package. This includes a
serious bug that breaks the copy_file_range syscall and can cause some
data loss on some filesystem.

Note however that it only pulls upstream change up a certain point and
not to the lastest change, to avoid introducing the new ABI flag
symbols, until proper support for them gets backported to dpkg
(#1122107). In theory the version of binutils in trixie should not emit
such flags, but it is safer to be cautious here.

[ Impact ]
In case the update isn't approved, systems will be left with a few
issues, including a serious one, and the differences with upstream will
increase.

[ Tests ]
Some of the changes come with additional upstream tests.

[ Risks ]

I believe the risks are low, the changes have been in experimental and
other distributions for a few months. They have been in sid for three
weeks, and we haven't received any issue reports related to the
backported changes.

[ Checklist ]
  [x] *all* changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in (old)stable
  [x] the issue is verified as fixed in unstable

[ Changes ]
All the changes come from the upstream stable branch, and are summarized
in the debian changelog. Let me comment it:
 - Fix a double lock init issue after fork()
 => This issue appears as an issue when using valgrind, but is not a
 real issue given the internal glibc internal implementation. This
 causes some testsuite failures and is a regression from bookworm
 (introduced in glibc 2.41).
 Upstream bug: https://sourceware.org/bugzilla/show_bug.cgi?id=32994

 - Fix _dl_find_object when ld.so has LOAD segment gaps, causing wrong
   backtrace unwinding. This affects at least arm64.
 => This issue happens when the loader specifies 64K alignment for its
 segments, but the system page size is 4K, so the kernel leaves gaps
 when mapping it in, leading to wrong backtraces. This is the case on
 arm64, and probably ppc64el when running with the 4k kernel (I haven't
 checked).
 Upstream bug: https://sourceware.org/bugzilla/show_bug.cgi?id=31943

 - Fix SYSCALL_CANCEL for return values larger than INT_MAX (closes:
   #1115729).
 => The __syscall_cancel function is using a int instead of a long int
 for the return value of the syscall, causing the value to be truncated.
 This is an issue for syscalls returning values larged than INT_MAX,
 such as copy_file_range, when used by cp --reflink with OpenZFS or
 potentially some FUSE based filesystems.
 Upstream bug: https://sourceware.org/bugzilla/show_bug.cgi?id=33245

 - Fix crash in ifunc functions on arm64 when hardening with
   -ftrivial-auto-var-init=zero.
 This avoids calling memcpy or memset during early startup when ifunc is
 not yet initialized.
 Upstream bug: https://sourceware.org/bugzilla/show_bug.cgi?id=33112

 - Optimize inverse trig functions on arm64.
 - Optimize arm64 SVE exp, hyperbolic, and log1p functions.
 - Optimize arm64 SVE expf and log1p helpers.
 => This significantly improve the performances of trigonometric and
 hyperbolic math functions on arm64 with SVE support.
glibc_2.41-12+deb13u1.debdiff (text/plain, 159.8 KB) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.