Commit Graph

7436 Commits

Author SHA1 Message Date
Elliott Hughes
f25d0c1d4d am 787c1f93: Merge "Add missing file from previous change."
* commit '787c1f937a915feefb767d0c6a15ddb70e6de933':
  Add missing file from previous change.
2014-02-18 23:55:16 +00:00
Elliott Hughes
781236e321 am a676a54e: am b3602078: Merge "Implement some of the missing LFS64 support."
* commit 'a676a54e5dbb1ddda0c0045d990a920558671233':
  Implement some of the missing LFS64 support.
2014-02-18 23:54:43 +00:00
Benjamin Adolphi
006f9ad891 Linker writes to wrong memory location when processing DT_MIPS_RLD_MAP
When bionic's dynamic linker processes the .dynamic section of a MIPS ELF binary and encounters the DT_MIPS_RLD_MAP dynamic array tag, it calculates the address of where to write a pointer to the _r_debug structure. The current implementation simply reads the value given in the d_ptr field and writes the pointer address to that location. However, this value has to be adjusted to reflect the real load address of the binary. Otherwise the linker will write to a faulty location possibly resulting in a crash when linking a MIPS binary that includes DT_MIPS_RLD_MAP. This change corrects that problem.

Change-Id: I1a91874f7ab47289001fe72d9016660c14c70362
Signed-off-by: Benjamin Adolphi <b.adolphi@gmail.com>
2014-02-19 00:50:32 +01:00
Elliott Hughes
787c1f937a Merge "Add missing file from previous change." 2014-02-18 23:49:16 +00:00
Elliott Hughes
1d18e9cc0a Add missing file from previous change.
Change-Id: Id25000162a9ed76ce756842bdc09fe9afff9528f
2014-02-18 15:48:56 -08:00
Elliott Hughes
a676a54e5d am b3602078: Merge "Implement some of the missing LFS64 support."
* commit 'b36020789ac860fcfbbeaf56d560926d8ee228f6':
  Implement some of the missing LFS64 support.
2014-02-18 23:47:56 +00:00
Elliott Hughes
b36020789a Merge "Implement some of the missing LFS64 support." 2014-02-18 23:40:56 +00:00
Elliott Hughes
db1ea34748 Implement some of the missing LFS64 support.
This gives us:

* <dirent.h>
  struct dirent64
  readdir64, readdir64_r, alphasort64, scandir64

* <fcntl.h>
  creat64, openat64, open64.

* <sys/stat.h>
  struct stat64
  fstat64, fstatat64, lstat64, stat64.

* <sys/statvfs.h>
  struct statvfs64
  statvfs64, fstatvfs64.

* <sys/vfs.h>
  struct statfs64
  statfs64, fstatfs64.

This also removes some of the incorrect #define hacks we've had in the
past (for stat64, for example, which we promised to clean up way back
in bug 8472078).

Bug: 11865851
Bug: 8472078
Change-Id: Ia46443521918519f2dfa64d4621027dfd13ac566
2014-02-18 15:39:24 -08:00
Elliott Hughes
f998473357 am df3d56db: am 3623d806: Merge "Fix x86 build."
* commit 'df3d56db663a19d0de8f743102d13e62343c874c':
  Fix x86 build.
2014-02-18 20:47:29 +00:00
Elliott Hughes
a1ac8a60da am d49247be: am ffe02668: Merge "bionic: fix __set_errno for arm64 syscalls that return a 64-bit value"
* commit 'd49247be279b337fdd72c15421dcaf318489d284':
  bionic: fix __set_errno for arm64 syscalls that return a 64-bit value
2014-02-18 20:42:57 +00:00
Elliott Hughes
df3d56db66 am 3623d806: Merge "Fix x86 build."
* commit '3623d80675e5321b92c2d88a7b7ec6bd998d81d5':
  Fix x86 build.
2014-02-18 20:40:54 +00:00
Elliott Hughes
d49247be27 am ffe02668: Merge "bionic: fix __set_errno for arm64 syscalls that return a 64-bit value"
* commit 'ffe026680edaba268330bc67dd986d2c900ecfc7':
  bionic: fix __set_errno for arm64 syscalls that return a 64-bit value
2014-02-18 20:36:25 +00:00
Elliott Hughes
3623d80675 Merge "Fix x86 build." 2014-02-18 20:35:15 +00:00
Elliott Hughes
915fefb62e Fix x86 build.
Change-Id: Iee6e5884288f7da6c955694cfe32fecfd9c9e263
2014-02-18 12:34:51 -08:00
Elliott Hughes
ffe026680e Merge "bionic: fix __set_errno for arm64 syscalls that return a 64-bit value" 2014-02-18 20:31:01 +00:00
Elliott Hughes
662655428d am 29eed9cc: am 7f15e28d: Merge "Clean up warnings in libstdc++."
* commit '29eed9cc3aaee9236ec3c6397b41d5421e9b0c91':
  Clean up warnings in libstdc++.
2014-02-18 20:18:18 +00:00
Elliott Hughes
b8662c63b4 am d4c049e0: am cd6748cd: Merge "Clean up various warnings in bionic."
* commit 'd4c049e0234b0447b4da4369f2e2e509fe3ac549':
  Clean up various warnings in bionic.
2014-02-18 20:18:17 +00:00
Colin Cross
3d19a8319b bionic: fix __set_errno for arm64 syscalls that return a 64-bit value
bionic/libc/arch-arm64/syscalls/read.S ends with:
    b.hi __set_errno
    ret
END(read)

If __set_errno returns int, it will set w0 to 0xFFFFFFFF, which means
x0 is 0x00000000FFFFFFFF.  When interpreted as a ssize_t that is
INT_MAX, not -1.

Change __set_errno to return long, which will cause x0 to be set instead
of w0.

Change-Id: I9f9ea0f2995928d2ea240eb2ff7758ecdf0ff412
2014-02-18 12:11:38 -08:00
Elliott Hughes
29eed9cc3a am 7f15e28d: Merge "Clean up warnings in libstdc++."
* commit '7f15e28dd4184015a2c990b6e45c33c35b251935':
  Clean up warnings in libstdc++.
2014-02-18 20:11:36 +00:00
Elliott Hughes
d4c049e023 am cd6748cd: Merge "Clean up various warnings in bionic."
* commit 'cd6748cdd7bcab702fe0bf6de943eb832f4fb762':
  Clean up various warnings in bionic.
2014-02-18 20:11:35 +00:00
Elliott Hughes
7f15e28dd4 Merge "Clean up warnings in libstdc++." 2014-02-18 20:05:59 +00:00
Elliott Hughes
cd6748cdd7 Merge "Clean up various warnings in bionic." 2014-02-18 20:05:17 +00:00
Elliott Hughes
a38cb08861 Clean up various warnings in bionic.
Change-Id: Ic57541d0a567fd4ae79f0ad59b2ffde1130eb7d2
2014-02-18 12:04:54 -08:00
Elliott Hughes
240f1e2940 Clean up warnings in libstdc++.
Change-Id: Ie71a2fdf227e7a5fc9a446bb1be110da9b3a4280
2014-02-18 12:02:37 -08:00
Elliott Hughes
1135bf27eb am 447d5655: am d4bc9ef8: Merge "Remove duplicate definitions of MIN and MAX."
* commit '447d5655498f1dc2a20269e252fd0442d78b4ff2':
  Remove duplicate definitions of MIN and MAX.
2014-02-17 19:10:32 +00:00
Elliott Hughes
447d565549 am d4bc9ef8: Merge "Remove duplicate definitions of MIN and MAX."
* commit 'd4bc9ef83b36916d5e63c4c3e4a092381473ea52':
  Remove duplicate definitions of MIN and MAX.
2014-02-17 19:05:00 +00:00
Elliott Hughes
d4bc9ef83b Merge "Remove duplicate definitions of MIN and MAX." 2014-02-17 19:00:18 +00:00
Elliott Hughes
cfbfe7059c Remove duplicate definitions of MIN and MAX.
These were needed when bionic's header files were missing these macros (though
it would have made a lot more sense to just fix the header files!) but cause
warnings now.

Change-Id: I65a677122f4f6bd07dffc3f37a0c4c0e823d1bb0
2014-02-17 10:57:56 -08:00
Colin Cross
0d873f8950 am 9e8ee4dd: am 95b808c4: Merge "build linker and linker64 on 64-bit architectures"
* commit '9e8ee4dd6ae56ee541a2c858039e29314a6923d6':
  build linker and linker64 on 64-bit architectures
2014-02-14 01:08:39 +00:00
Colin Cross
9e8ee4dd6a am 95b808c4: Merge "build linker and linker64 on 64-bit architectures"
* commit '95b808c4ae11ea5737fee63f7b61673483ea5e2d':
  build linker and linker64 on 64-bit architectures
2014-02-14 01:02:47 +00:00
Colin Cross
95b808c4ae Merge "build linker and linker64 on 64-bit architectures" 2014-02-14 00:56:22 +00:00
Colin Cross
36ee4ab243 build linker and linker64 on 64-bit architectures
Change-Id: I400bbaf5a779fc427de4c3d86c66548b0179b10d
2014-02-13 11:18:47 -08:00
Elliott Hughes
db01286237 am 57f42f77: am fadc8a77: Merge "Restore sys_signame for LP64."
* commit '57f42f773dac7cbe374ec8449b1b57599367a878':
  Restore sys_signame for LP64.
2014-02-13 11:27:26 +00:00
Elliott Hughes
97503e2311 am 97a376d8: am fc48e8cf: Merge "Remove unused variables not spotted by GCC."
* commit '97a376d856f91b0406a71174dc1314fc3f3b31f2':
  Remove unused variables not spotted by GCC.
2014-02-13 11:27:19 +00:00
Elliott Hughes
796d2b1971 am f2e3964d: am 7b3876e2: Merge "Clean up sys_signame and sys_siglist a little."
* commit 'f2e3964d4e060d1b76be34bdc7847fad5c11ca63':
  Clean up sys_signame and sys_siglist a little.
2014-02-13 11:27:18 +00:00
Ying Wang
bf543d12de am 00956d03: am 9e572ca4: Merge "Fix missing args."
* commit '00956d039fb4ceafe92d5ffade51725b95da38d4':
  Fix missing args.
2014-02-13 11:27:18 +00:00
Elliott Hughes
57f42f773d am fadc8a77: Merge "Restore sys_signame for LP64."
* commit 'fadc8a7777ca304c8a7de066a94effd3a5471ee6':
  Restore sys_signame for LP64.
2014-02-13 03:48:55 +00:00
Elliott Hughes
fadc8a7777 Merge "Restore sys_signame for LP64." 2014-02-13 03:43:11 +00:00
Elliott Hughes
671e236d5f Restore sys_signame for LP64.
mksh is using this, and we probably build as much BSD source as glibc source.

Change-Id: I400d255a67f9614ca9e57090e3a2e49d2b10cba4
2014-02-12 19:04:27 -08:00
Elliott Hughes
97a376d856 am fc48e8cf: Merge "Remove unused variables not spotted by GCC."
* commit 'fc48e8cf28b80ce0f95e288eeee459b4cb932afa':
  Remove unused variables not spotted by GCC.
2014-02-13 01:30:18 +00:00
Elliott Hughes
fc48e8cf28 Merge "Remove unused variables not spotted by GCC." 2014-02-13 01:23:31 +00:00
Elliott Hughes
f2e3964d4e am 7b3876e2: Merge "Clean up sys_signame and sys_siglist a little."
* commit '7b3876e2516fd55d61a48cb23a7080ea88b9617b':
  Clean up sys_signame and sys_siglist a little.
2014-02-13 01:18:07 +00:00
Elliott Hughes
c62b8a4d3f Remove unused variables not spotted by GCC.
Change-Id: I49a16096bc0f41f3ad0007249161e8bdfcf3438c
2014-02-12 17:17:41 -08:00
Ying Wang
717cd12134 am c25552bb: am c4c50b25: Merge "Reconfig libc\'s Android.mk to build for multilib"
* commit 'c25552bb13e664bfd4574d77cbcaad459b52a47f':
  Reconfig libc's Android.mk to build for multilib
2014-02-13 01:11:36 +00:00
Elliott Hughes
7b3876e251 Merge "Clean up sys_signame and sys_siglist a little." 2014-02-13 01:10:42 +00:00
Elliott Hughes
aa0ebdafc7 Clean up sys_signame and sys_siglist a little.
We don't need quite so much duplication because we already have a way
to get the signal number from its name, and that already copes with the
fact that the mips/mips64 numbers are different from everyone else's.

Also remove sys_signame from LP64. glibc doesn't have this BSD-ism.

Change-Id: I6dc411a3d73589383c85d3b07d9d648311492a10
2014-02-12 17:09:25 -08:00
Ying Wang
00956d039f am 9e572ca4: Merge "Fix missing args."
* commit '9e572ca4163e42bcd053df2cb8557e4b61ad064d':
  Fix missing args.
2014-02-13 00:51:16 +00:00
Ying Wang
9e572ca416 Merge "Fix missing args." 2014-02-13 00:43:23 +00:00
Ying Wang
76c8b88269 Fix missing args.
Change-Id: I89a366db984ea6b2553896a4351e59bb91f93040
2014-02-12 16:40:55 -08:00
Ying Wang
c25552bb13 am c4c50b25: Merge "Reconfig libc\'s Android.mk to build for multilib"
* commit 'c4c50b25f805b48338f3e8fb9ac137e81c187706':
  Reconfig libc's Android.mk to build for multilib
2014-02-12 23:59:49 +00:00