[UBUNTU] - glibc: z15 (s390x) strstr implementation can return incorrect result if search string cross page boundary
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| Ubuntu on IBM z Systems |
High
|
Skipper Bug Screeners | ||
| glibc (Ubuntu) |
High
|
Canonical Foundations Team | ||
| Eoan |
High
|
Unassigned |
Bug Description
[Impact]
glibc: strstr(): Invalid result if needle crosses page on s390-z15 ifunc variant.
If the specified needle crosses a page-boundary, the s390-z15 ifunc variant of
strstr truncates the needle which results in invalid results.
Example:
needle = "Hello" <page-boundary> "World"
really used needle = "Hello"
haystack = "abc HelloBug def"
result = "HelloBug def"
This only happens if the needle before page-boundary contains 9 or less characters.
See upstream-glibc bugzilla "Bug 25226 - strstr: Invalid result if needle crosses page on s390-z15 ifunc variant."
(https:/
Fixed with upstream-glibc commit "S390: Fix handling of needles crossing a page in strstr z15 ifunc-variant. [BZ #25226]"
(https:/
Please backport this commit to Ubuntu 19.10, which includes glibc 2.30
Already backported to upstream-
https:/
glibc 2.31 (tentativ GA 2020-02-01) will have this fix integrated.
If this version will not be picked finally, then this fix is also needed for 20.04
[Test Case]
* glibc builds and passes testsuite, as the commit to backport includes comprehensive testsuite for the problem in question in the glibc api.
[Regression Potential]
* Fix released in focal, and available from stable upstream branches.
* all autopkgtests will be triggered, implying that comprehensive test coverage will execute on all architectues.
tags: | added: architecture-s39064 bugnameltc-182602 severity-high targetmilestone-inin1910 |
Changed in ubuntu: | |
assignee: | nobody → Skipper Bug Screeners (skipper-screen-team) |
affects: | ubuntu → glibc (Ubuntu) |
Changed in ubuntu-z-systems: | |
status: | New → Triaged |
importance: | Undecided → High |
assignee: | nobody → Skipper Bug Screeners (skipper-screen-team) |
Changed in glibc (Ubuntu): | |
importance: | Undecided → High |
assignee: | Skipper Bug Screeners (skipper-screen-team) → Canonical Foundations Team (canonical-foundations) |
Changed in ubuntu-z-systems: | |
status: | Triaged → In Progress |
------- Comment From <email address hidden> 2019-12-17 04:21 EDT-------
Hi,
I've installed Ubuntu 20.04 with glibc (2.30-0ubuntu3) and checked that the fix is included.
Thanks.
Will this fix also be available for Ubuntu 19.10 where this z15 strstr ifunc variant is also available?
description: | updated |
Hello bugproxy, or anyone else affected,
Accepted glibc into eoan-proposed. The package will build now and be available at https:/
Please help us by testing this new package. See https:/
If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-
Further information regarding the verification process can be found at https:/
N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.
Changed in glibc (Ubuntu Eoan): | |
status: | New → Fix Committed |
tags: | added: verification-needed verification-needed-eoan |
Changed in ubuntu-z-systems: | |
status: | In Progress → Fix Committed |
------- Comment From <email address hidden> 2020-02-10 11:34 EDT-------
Comment from IBM Dev:
I've installed Ubuntu 19.10 with libc6/eoan-proposed 2.30-0ubuntu2.1 and checked with an own test-program that the fix is included.
--> verfied
Frank Heimes (fheimes) wrote : | #5 |
Many thx for the verification - I'm adjusting the tags accordingly.
tags: |
added: verification-done verification-done-eoan removed: verification-needed verification-needed-eoan |
Ernst Sjöstrand (ernstp) wrote : | #6 |
That i386 build failure in eoan-proposed is quite annoying:
https:/
Makes build-essential uninstallable for example...
Leon (lehjr) wrote : | #7 |
"That i386 build failure in eoan-proposed is quite annoying"
More than just that, it makes things like Steam and Wine 32 bit libs uninstallable.
is 2.30-0ubuntu3 from "The Focal Fossa" a drop in replacement?
pvdeynse (vandeynse) wrote : | #8 |
yes i have same problem, Wine is no longer working, and if i reinstall Wine than it breaks my nvidia-340 driver. It took me 2 days to downgrade glibc from 2.30-0ubuntu2.1 to 2.30-0ubuntu2 all is working fine again but "Software Updater" now complains that not all updates can be installed and asks me to run a partial upgrade.
jscmal (jscmal) wrote : | #9 |
I have no problem on my ubuntu installation.
But this file with another one (or more) of GNU C are still not ready to be updated.
I am waiting for days now. This situation begins to worry.
I hope to see every problem solved soon.
bugproxy (bugproxy) wrote : | #10 |
------- Comment From <email address hidden> 2020-02-17 02:51 EDT-------
It's unclear to me, why a s390x-only change leads to i386 fails.
Have you just backported the single commit or have you done further changes (further commits / sync from Ubuntu 19.10 to Ubuntu 20.04 libc6-package / package files)?
Łukasz Zemczak (sil2100) wrote : | #11 |
Ok, so I have re-triggered the i386 build and this time it built correctly, so the i386-caused issues should have disappeared. I will be releasing the SRU if everything seems to work properly now.
All autopkgtests for the newly accepted glibc (2.30-0ubuntu2.1) for eoan have finished running.
The following regressions have been reported in tests triggered by the package:
syncthing/
libscalar-
resource-
libdevice-
libperlio-
heaptrack/
timew/1.1.1+ds.1-1 (armhf)
donkey/1.2.0-4 (armhf)
zope.interface/
smcroute/2.4.2-4 (i386)
libcompress-
fclib/3.
gemma/0.98.1+dfsg-1 (armhf)
feersum/1.407-1 (arm64)
yorick/unknown (armhf)
r-cran-msm/1.6.7-1 (ppc64el)
mercurial/
libposix-
r-cran-
systemd/
libtext-
libimage-
libclass-
morbig/unknown (i386)
protobuf/unknown (armhf)
libterm-
natsort/6.0.0-1 (ppc64el, s390x, armhf, i386, amd64, arm64)
mysql-8.
octave-
libreoffice/
libmsgcat-
libnet-
libkcddb/
libstring-
libbit-
snpomatic/1.0-4 (i386)
wireguard/
sbd/1.4.
rtags/2.33-2 (i386)
iproute2/unknown (armhf)
openssh/
ruby-nokogumbo/
ruby-libxml/3.1.0-1 (s390x)
mpi4py/3.0.2-13 (armhf)
libunix-
python3-
smalt/0.7.6-8 (i386)
ikiwiki-
pango1.0/1.42.4-7 (amd64)
apache2/
ignition-
tdb/unknown (armhf)
segyio/unknown (armhf)
aspcud/unknown (armhf)
libhttp-
openjdk-
ruby-mysql2/
pg-snakeoil/
libpar-
r-cran-
libcrypt-
libcrypt-
libsys-
libautovivifica
libhtml-
lxc/3.0.4-0ubuntu1 (amd64)
exonerate/unknown (armhf)
gvfs/1.
subvertpy/unknown (armhf)
libperlio-
gcc-snapshot/
libuv1/unknown (armhf)
ruby-rblineprof
libencode-
r-bioc-
tracker/2.3.0-1 (armhf)
libyaml-
knotifyconfig/
r-cran-
libfuture-
pyzmq/17.
ncurses/unknown (armhf)
flog/unknown (armhf)
openjdk-
reprotest/0.7.9 (i...
Changed in glibc (Ubuntu Eoan): | |
importance: | Undecided → High |
Launchpad Janitor (janitor) wrote : | #13 |
This bug was fixed in the package glibc - 2.30-0ubuntu2.1
---------------
glibc (2.30-0ubuntu2.1) eoan; urgency=medium
* Cherrypick upstream fix for strstr on s390x z15. LP: #1854326
-- Dimitri John Ledkov <email address hidden> Fri, 29 Nov 2019 14:19:57 +0000
Changed in glibc (Ubuntu Eoan): | |
status: | Fix Committed → Fix Released |
The verification of the Stable Release Update for glibc has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.
Changed in ubuntu-z-systems: | |
status: | Fix Committed → Fix Released |
------- Comment From <email address hidden> 2020-02-28 04:17 EDT-------
IBM Bugzilla status -> closed, Fix Released by all requested distros.
This bug was fixed in the package glibc - 2.30-0ubuntu3
---------------
glibc (2.30-0ubuntu3) focal; urgency=medium
* Cherrypick upstream fix for strstr on s390x z15. LP: #1854326
-- Dimitri John Ledkov <email address hidden> Fri, 29 Nov 2019 14:19:57 +0000