gnu: glibc: MIPS: Avoid a dangling `vfork@GLIBC_2.0' reference.
* gnu/packages/patches/glibc-mips-dangling-vfork-ref.patch: New file. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/base.scm (glibc): Add patch.
This commit is contained in:
parent
26804e1351
commit
bf0baaf7db
|
@ -366,6 +366,7 @@ dist_patch_DATA = \
|
||||||
gnu/packages/patches/glibc-CVE-2014-7817.patch \
|
gnu/packages/patches/glibc-CVE-2014-7817.patch \
|
||||||
gnu/packages/patches/glibc-bootstrap-system.patch \
|
gnu/packages/patches/glibc-bootstrap-system.patch \
|
||||||
gnu/packages/patches/glibc-ldd-x86_64.patch \
|
gnu/packages/patches/glibc-ldd-x86_64.patch \
|
||||||
|
gnu/packages/patches/glibc-mips-dangling-vfork-ref.patch \
|
||||||
gnu/packages/patches/gnunet-fix-scheduler.patch \
|
gnu/packages/patches/gnunet-fix-scheduler.patch \
|
||||||
gnu/packages/patches/gnunet-fix-tests.patch \
|
gnu/packages/patches/gnunet-fix-tests.patch \
|
||||||
gnu/packages/patches/gobject-introspection-cc.patch \
|
gnu/packages/patches/gobject-introspection-cc.patch \
|
||||||
|
|
|
@ -377,6 +377,7 @@ included.")
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(patches (list (search-patch "glibc-CVE-2014-7817.patch")
|
(patches (list (search-patch "glibc-CVE-2014-7817.patch")
|
||||||
(search-patch "glibc-CVE-2012-3406.patch")
|
(search-patch "glibc-CVE-2012-3406.patch")
|
||||||
|
(search-patch "glibc-mips-dangling-vfork-ref.patch")
|
||||||
(search-patch "glibc-ldd-x86_64.patch")))))
|
(search-patch "glibc-ldd-x86_64.patch")))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,45 @@
|
||||||
|
Avoid a dangling `vfork@GLIBC_2.0' reference on MIPS.
|
||||||
|
|
||||||
|
Note: Here the ChangeLog and NEWS updates are removed from Maciej's
|
||||||
|
patch, since they depend on other earlier commits.
|
||||||
|
|
||||||
|
From: Maciej W. Rozycki <macro@codesourcery.com>
|
||||||
|
Date: Wed, 22 Oct 2014 14:20:37 +0000 (+0100)
|
||||||
|
Subject: MIPS: Avoid a dangling `vfork@GLIBC_2.0' reference
|
||||||
|
X-Git-Url: https://sourceware.org/git/?p=glibc.git;a=commitdiff_plain;h=c14e752fc73d34c75d4f84f37fea8e0b1734cf98
|
||||||
|
|
||||||
|
MIPS: Avoid a dangling `vfork@GLIBC_2.0' reference
|
||||||
|
|
||||||
|
This satisfies a symbol reference created with:
|
||||||
|
|
||||||
|
.symver __libc_vfork, vfork@GLIBC_2.0
|
||||||
|
|
||||||
|
where `__libc_vfork' has not been defined or referenced. In this case
|
||||||
|
the `vfork@GLIBC_2.0' reference is supposed to be discarded, however a
|
||||||
|
bug present in GAS since forever causes an undefined symbol table entry
|
||||||
|
to be created. This in turn triggers a problem in the linker that can
|
||||||
|
manifest itself by link errors such as:
|
||||||
|
|
||||||
|
ld: libpthread.so: invalid string offset 2765592330 >= 5154 for section `.dynstr'
|
||||||
|
|
||||||
|
The GAS and linker bugs need to be resolved, but we can avoid them too
|
||||||
|
by providing a `__libc_vfork' definition just like our other platforms.
|
||||||
|
|
||||||
|
[BZ #17485]
|
||||||
|
* sysdeps/unix/sysv/linux/mips/vfork.S (__libc_vfork): Define.
|
||||||
|
|
||||||
|
(cherry picked from commit b5af9297d51a43f96c5be1bafab032184690dd6f)
|
||||||
|
|
||||||
|
Conflicts:
|
||||||
|
NEWS
|
||||||
|
---
|
||||||
|
|
||||||
|
diff --git a/sysdeps/unix/sysv/linux/mips/vfork.S b/sysdeps/unix/sysv/linux/mips/vfork.S
|
||||||
|
index 80c362d..2c1a747 100644
|
||||||
|
--- a/sysdeps/unix/sysv/linux/mips/vfork.S
|
||||||
|
+++ b/sysdeps/unix/sysv/linux/mips/vfork.S
|
||||||
|
@@ -108,3 +108,4 @@ L(error):
|
||||||
|
|
||||||
|
libc_hidden_def(__vfork)
|
||||||
|
weak_alias (__vfork, vfork)
|
||||||
|
+strong_alias (__vfork, __libc_vfork)
|
Loading…
Reference in New Issue