Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 262405 Details for
Bug 353816
sys-libs/glibc-2.13: static linking some apps breaks with missing memcpy_chk_ssse3 symbols
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
memcpy_chk fix for x86_64 and i686
0001-memcpy-ssse3-enable-chk-symbols-in-static-builds.patch (text/plain), 3.42 KB, created by
SpanKY
on 2011-02-14 03:32:43 UTC
(
hide
)
Description:
memcpy_chk fix for x86_64 and i686
Filename:
MIME Type:
Creator:
SpanKY
Created:
2011-02-14 03:32:43 UTC
Size:
3.42 KB
patch
obsolete
>From 7da767805f0a7301c0c719a6c0fd51d87e193c22 Mon Sep 17 00:00:00 2001 >From: Mike Frysinger <vapier@gentoo.org> >Date: Sun, 6 Feb 2011 12:39:08 -0500 >Subject: [PATCH v2] memcpy-ssse3: enable chk symbols in static builds > >Building static apps on i686/x86_64 systems which use memmove such as: > #include <string.h> > char buf[8192]; > main(int argc, char **argv) { memmove(buf, buf + argc, argc % 4); } > >Result in linking errors along the lines of: > .../libc.a(memmove_chk.o): In function `__memmove_chk': > (.text+0x1b4): undefined reference to `__memmove_chk_ssse3_back' > .../libc.a(memmove_chk.o): In function `__memmove_chk': > (.text+0x1b9): undefined reference to `__memmove_chk_ssse3' > collect2: ld returned 1 exit status > >This is due to the new ssse3 funcs only enabling their chk symbols when >being compiled into shared code. > >URL: https://bugs.gentoo.org/353816 >Signed-off-by: Mike Frysinger <vapier@gentoo.org> > >2011-02-06 Mike Frysinger <vapier@gentoo.org> > > * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S: Only protect > MEMCPY_CHK with USE_AS_BCOPY ifdef check. > * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: Likewise. > * sysdeps/x86_64/multiarch/memcpy-ssse3.S: Likewise. > * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Likewise. >--- >v2 > - also update i686 symbols > - drop shared/libc ifdefs since the surrounding code already handles it > > sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S | 2 +- > sysdeps/i386/i686/multiarch/memcpy-ssse3.S | 2 +- > sysdeps/x86_64/multiarch/memcpy-ssse3-back.S | 2 +- > sysdeps/x86_64/multiarch/memcpy-ssse3.S | 2 +- > 4 files changed, 4 insertions(+), 4 deletions(-) > >diff --git a/sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S b/sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S >index 48a109c..8e81183 100644 >--- a/sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S >+++ b/sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S >@@ -110,7 +110,7 @@ __i686.get_pc_thunk.bx: > #endif > > .section .text.ssse3,"ax",@progbits >-#if defined SHARED && !defined NOT_IN_libc && !defined USE_AS_BCOPY >+#if !defined USE_AS_BCOPY > ENTRY (MEMCPY_CHK) > movl 12(%esp), %eax > cmpl %eax, 16(%esp) >diff --git a/sysdeps/i386/i686/multiarch/memcpy-ssse3.S b/sysdeps/i386/i686/multiarch/memcpy-ssse3.S >index ec9eeb9..f64f8d2 100644 >--- a/sysdeps/i386/i686/multiarch/memcpy-ssse3.S >+++ b/sysdeps/i386/i686/multiarch/memcpy-ssse3.S >@@ -110,7 +110,7 @@ __i686.get_pc_thunk.bx: > #endif > > .section .text.ssse3,"ax",@progbits >-#if defined SHARED && !defined NOT_IN_libc && !defined USE_AS_BCOPY >+#if !defined USE_AS_BCOPY > ENTRY (MEMCPY_CHK) > movl 12(%esp), %eax > cmpl %eax, 16(%esp) >diff --git a/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S b/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S >index 48c974e..bdd114a 100644 >--- a/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S >+++ b/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S >@@ -49,7 +49,7 @@ > ud2 > > .section .text.ssse3,"ax",@progbits >-#if defined SHARED && !defined NOT_IN_libc >+#if !defined USE_AS_BCOPY > ENTRY (MEMCPY_CHK) > cmpq %rdx, %rcx > jb HIDDEN_JUMPTARGET (__chk_fail) >diff --git a/sysdeps/x86_64/multiarch/memcpy-ssse3.S b/sysdeps/x86_64/multiarch/memcpy-ssse3.S >index 9a878d3..cd7e45f 100644 >--- a/sysdeps/x86_64/multiarch/memcpy-ssse3.S >+++ b/sysdeps/x86_64/multiarch/memcpy-ssse3.S >@@ -49,7 +49,7 @@ > ud2 > > .section .text.ssse3,"ax",@progbits >-#if defined SHARED && !defined NOT_IN_libc >+#if !defined USE_AS_BCOPY > ENTRY (MEMCPY_CHK) > cmpq %rdx, %rcx > jb HIDDEN_JUMPTARGET (__chk_fail) >-- >1.7.4.rc2 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 353816
:
261634
| 262405 |
263413