diff options
author | Timo Teräs <timo.teras@iki.fi> | 2011-04-20 13:50:26 +0300 |
---|---|---|
committer | Timo Teräs <timo.teras@iki.fi> | 2011-04-20 13:52:26 +0300 |
commit | d166b1f5032eaeb9dd9e72db948a170af4710a96 (patch) | |
tree | 7453e379fff87b034d769d749fee7bc3335e0d13 | |
parent | f7108a52947196e71078ba32ad93ede3b607db1e (diff) | |
download | alpine_aports-d166b1f5032eaeb9dd9e72db948a170af4710a96.tar.bz2 alpine_aports-d166b1f5032eaeb9dd9e72db948a170af4710a96.tar.xz alpine_aports-d166b1f5032eaeb9dd9e72db948a170af4710a96.zip |
libc0.9.32: fix posix_fadvise64 on x86
-rw-r--r-- | main/libc0.9.32/0001-posix_fadvise64-fix-x86-implementation.patch | 53 | ||||
-rw-r--r-- | main/libc0.9.32/APKBUILD | 4 |
2 files changed, 56 insertions, 1 deletions
diff --git a/main/libc0.9.32/0001-posix_fadvise64-fix-x86-implementation.patch b/main/libc0.9.32/0001-posix_fadvise64-fix-x86-implementation.patch new file mode 100644 index 0000000000..382cc94aba --- /dev/null +++ b/main/libc0.9.32/0001-posix_fadvise64-fix-x86-implementation.patch | |||
@@ -0,0 +1,53 @@ | |||
1 | From d4db9d07a970e27e3042d09892fbaeca5f40c1a8 Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi> | ||
3 | Date: Wed, 20 Apr 2011 13:45:36 +0300 | ||
4 | Subject: [PATCH] posix_fadvise64: fix x86 implementation | ||
5 | MIME-Version: 1.0 | ||
6 | Content-Type: text/plain; charset=UTF-8 | ||
7 | Content-Transfer-Encoding: 8bit | ||
8 | |||
9 | Commit 73d59554144f429b1cf0d4d7fa7de42bdf59ad92 completely broke | ||
10 | the x86 implementation of posix_fadvise64. It moved the first | ||
11 | the assembly code retn instruction gets missing depending on the | ||
12 | |||
13 | Technically the file has two implementaions for posix_fadvise64, | ||
14 | one when __NR_fadvise64_64 is available, and second one if only | ||
15 | __NR_fadvise64 is there. Fix the #ifdef's to be proper for that. | ||
16 | |||
17 | Signed-off-by: Timo Teräs <timo.teras@iki.fi> | ||
18 | --- | ||
19 | libc/sysdeps/linux/i386/posix_fadvise64.S | 4 +++- | ||
20 | 1 files changed, 3 insertions(+), 1 deletions(-) | ||
21 | |||
22 | diff --git a/libc/sysdeps/linux/i386/posix_fadvise64.S b/libc/sysdeps/linux/i386/posix_fadvise64.S | ||
23 | index b4aeff1..8a8947d 100644 | ||
24 | --- a/libc/sysdeps/linux/i386/posix_fadvise64.S | ||
25 | +++ b/libc/sysdeps/linux/i386/posix_fadvise64.S | ||
26 | @@ -22,7 +22,7 @@ | ||
27 | #include <bits/errno.h> | ||
28 | #include <sys/syscall.h> | ||
29 | |||
30 | -#if defined __NR_fadvise64_64 | ||
31 | +#if defined __NR_fadvise64_64 || defined __NR_fadvise64 | ||
32 | |||
33 | /* Was named __libc_posix_fadvise64 for some inexplicable reason. | ||
34 | ** google says only uclibc has *__libc*_posix_fadviseXXX, | ||
35 | @@ -35,6 +35,7 @@ | ||
36 | .global posix_fadvise64 | ||
37 | .type posix_fadvise64,%function | ||
38 | posix_fadvise64: | ||
39 | +#if defined __NR_fadvise64_64 | ||
40 | /* Save regs */ | ||
41 | pushl %ebp | ||
42 | pushl %ebx | ||
43 | @@ -91,6 +92,7 @@ overflow: | ||
44 | |||
45 | /* Returns 0 on success, else an error code. */ | ||
46 | negl %eax | ||
47 | +#endif | ||
48 | |||
49 | /* Successful; return the syscall's value. */ | ||
50 | ret | ||
51 | -- | ||
52 | 1.7.1 | ||
53 | |||
diff --git a/main/libc0.9.32/APKBUILD b/main/libc0.9.32/APKBUILD index 915a64a70f..524f08aa2f 100644 --- a/main/libc0.9.32/APKBUILD +++ b/main/libc0.9.32/APKBUILD | |||
@@ -4,7 +4,7 @@ pkgname=libc$_abiver | |||
4 | _gitver= | 4 | _gitver= |
5 | pkgver=0.9.32_rc3 | 5 | pkgver=0.9.32_rc3 |
6 | _ver=${pkgver/_/-} | 6 | _ver=${pkgver/_/-} |
7 | pkgrel=8 | 7 | pkgrel=9 |
8 | pkgdesc="C library for developing embedded Linux systems" | 8 | pkgdesc="C library for developing embedded Linux systems" |
9 | url=http://uclibc.org | 9 | url=http://uclibc.org |
10 | license="LGPL-2" | 10 | license="LGPL-2" |
@@ -30,6 +30,7 @@ source="http://uclibc.org/downloads/uClibc-${_ver}.tar.bz2 | |||
30 | 0001-malloc-standard-synchronize-on-fork.patch | 30 | 0001-malloc-standard-synchronize-on-fork.patch |
31 | 0001-resolv-fix-res_close-not-to-hang-with-ipv6.patch | 31 | 0001-resolv-fix-res_close-not-to-hang-with-ipv6.patch |
32 | 0001-utils-ldd-Check-for-returned-pointer-from-strrchr-no.patch | 32 | 0001-utils-ldd-Check-for-returned-pointer-from-strrchr-no.patch |
33 | 0001-posix_fadvise64-fix-x86-implementation.patch | ||
33 | uclibcconfig.x86 | 34 | uclibcconfig.x86 |
34 | uclibcconfig.x86_64 | 35 | uclibcconfig.x86_64 |
35 | uclibcconfig.i486 | 36 | uclibcconfig.i486 |
@@ -133,6 +134,7 @@ b4fb68ad3d0e8331b1b40c30eb21dfdc 0002-stdlib-fix-arc4random-return-type-to-u_in | |||
133 | 30f27fe51fdc4d121166ad2af18dfb8d 0001-malloc-standard-synchronize-on-fork.patch | 134 | 30f27fe51fdc4d121166ad2af18dfb8d 0001-malloc-standard-synchronize-on-fork.patch |
134 | 2ab8c375fe1cd406319b4c5ef538da2b 0001-resolv-fix-res_close-not-to-hang-with-ipv6.patch | 135 | 2ab8c375fe1cd406319b4c5ef538da2b 0001-resolv-fix-res_close-not-to-hang-with-ipv6.patch |
135 | 12f6297249755d3996918485bbd6031d 0001-utils-ldd-Check-for-returned-pointer-from-strrchr-no.patch | 136 | 12f6297249755d3996918485bbd6031d 0001-utils-ldd-Check-for-returned-pointer-from-strrchr-no.patch |
137 | 100d026c2d7cf7fc5906229448c791d4 0001-posix_fadvise64-fix-x86-implementation.patch | ||
136 | b878bcfe02bf7a886ca85620fb330f56 uclibcconfig.x86 | 138 | b878bcfe02bf7a886ca85620fb330f56 uclibcconfig.x86 |
137 | 8048c16964e93d5971b8dff6726d5afa uclibcconfig.x86_64 | 139 | 8048c16964e93d5971b8dff6726d5afa uclibcconfig.x86_64 |
138 | b878bcfe02bf7a886ca85620fb330f56 uclibcconfig.i486 | 140 | b878bcfe02bf7a886ca85620fb330f56 uclibcconfig.i486 |