Commit Graph

2842 Commits

Author SHA1 Message Date
Nick Kralevich
773a783295 am d7440f37: am 7cab2188: am ad180738: Merge "linker: Fix ARM_R_COPY relocations"
* commit 'd7440f3725b196f6624f74d2cee50dbdac647372':
  linker: Fix ARM_R_COPY relocations
2012-08-28 13:06:47 -07:00
Nick Kralevich
54662dd4de am 1389db8b: am e026b1d8: Merge "ARM: remove dummy entries from .so init_array/fini_array"
* commit '1389db8b94ca0cff4744dc070d99f48c6cf53b07':
  ARM: remove dummy entries from .so init_array/fini_array
2012-08-28 13:04:47 -07:00
Nick Kralevich
d7440f3725 am 7cab2188: am ad180738: Merge "linker: Fix ARM_R_COPY relocations"
* commit '7cab21885ac039375264a45b2c774106415be664':
  linker: Fix ARM_R_COPY relocations
2012-08-28 13:04:46 -07:00
Nick Kralevich
069c64cdf2 Merge "ARM: make sure __on_dlclose() actually gets called" 2012-08-28 13:04:22 -07:00
Nick Kralevich
953de64819 am 88160880: am 3ffdef19: am c7d9c400: am c410a961: Merge "libc: remove ctors/dtors sections"
* commit '88160880953e01f4fa7523938b6448f194f598a0':
  libc: remove ctors/dtors sections
2012-08-28 13:02:10 -07:00
Nick Kralevich
1389db8b94 am e026b1d8: Merge "ARM: remove dummy entries from .so init_array/fini_array"
* commit 'e026b1d89a0dcada499da186d4d94cc3ce5d3ef3':
  ARM: remove dummy entries from .so init_array/fini_array
2012-08-28 13:01:22 -07:00
Nick Kralevich
7cab21885a am ad180738: Merge "linker: Fix ARM_R_COPY relocations"
* commit 'ad18073897378d3a13aaa6a7e7005f254ab8c1c8':
  linker: Fix ARM_R_COPY relocations
2012-08-28 13:01:21 -07:00
Nick Kralevich
e026b1d89a Merge "ARM: remove dummy entries from .so init_array/fini_array" 2012-08-28 12:49:46 -07:00
Nick Kralevich
ad18073897 Merge "linker: Fix ARM_R_COPY relocations" 2012-08-28 12:48:01 -07:00
Nick Kralevich
d39c3abd5a linker: Fix ARM_R_COPY relocations
Per http://infocenter.arm.com/help/topic/com.arm.doc.ihi0044d/IHI0044D_aaelf.pdf
Section 4.7.1.10, ARM_R_COPY relocations are only suppose to reference shared
libraries, not the executable itself.  When resolving an R_ARM_COPY symbol,
ensure we don't look in our own symbol.

This partially addresses
http://code.google.com/p/android/issues/detail?id=28598 .  After this
patch, the printfs generated by the test program are:

global = 0x42 (0x401c7000)
global = 0x42 (0x11000)

before, the output was:

global = 0x42 (0x40071000)
global = 0x0 (0x11000)

I'm still not very happy with this patch, but I think it's an improvement
over where we were at before.

This change was modeled after https://android-review.googlesource.com/38871

Change-Id: Id7ad921e58395e76a36875bcc742ec5eeba53f08
2012-08-28 11:48:32 -07:00
Nick Kralevich
8816088095 am 3ffdef19: am c7d9c400: am c410a961: Merge "libc: remove ctors/dtors sections"
* commit '3ffdef19b4e9c8bae4fb0591afc0074eab0e5ac6':
  libc: remove ctors/dtors sections
2012-08-28 10:40:58 -07:00
Nick Kralevich
3ffdef19b4 am c7d9c400: am c410a961: Merge "libc: remove ctors/dtors sections"
* commit 'c7d9c400126f1d1159025d1005248ab556dbdb7e':
  libc: remove ctors/dtors sections
2012-08-28 10:38:28 -07:00
Nick Kralevich
c7d9c40012 am c410a961: Merge "libc: remove ctors/dtors sections"
* commit 'c410a9613a837790d2ea13aee3f88881e0d54c17':
  libc: remove ctors/dtors sections
2012-08-28 10:34:14 -07:00
Nick Kralevich
c410a9613a Merge "libc: remove ctors/dtors sections" 2012-08-28 10:20:27 -07:00
Ard Biesheuvel
144c291866 ARM: warn about atexit() calls from legacy shared libraries
Legacy ARM shared libraries use this generic version of atexit(),
which queues exit functions for invocation at program exit, at
which time the library may have been dlclose()'d, causing the
program to crash.

Change-Id: I41ae153c23268daa65ede7fb8966fc3e9caec369
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@gmail.com>
2012-08-28 11:23:06 +02:00
Ard Biesheuvel
f3cfcd869d ARM: make CRT_LEGACY_WORKAROUND work as intended
To properly support legacy ARM shared libraries, libc.so needs
to export the symbols __dso_handle and atexit, even though
these are now supplied by the crt startup code.

This patch reshuffles the existing CRT_LEGACY_WORKAROUND
conditionally compiled code slightly so it works as the
original author likely intended.

Change-Id: Id6c0e94dc65b7928324a5f0bad7eba6eb2f464b9
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@gmail.com>
2012-08-28 10:27:02 +02:00
Ard Biesheuvel
c23092887f ARM: remove dummy entries from .so init_array/fini_array
The runtime linker parses the ELF section headers to
discover the size of the init_array and fini_array, so
there is no point in putting NULL terminators at the end.

Change-Id: I3246cd585efce9314155600277dd829e9f37d04f
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@gmail.com>
2012-08-28 09:55:51 +02:00
Nick Kralevich
47cac977f5 am 5443561d: am 48c88804: am 775dabd4: am 9dfaa63a: Merge "Allow linker to compile with -DLINKER_DEBUG=1"
* commit '5443561d5d9fd8ababac989116a036b3ab7b15b0':
  Allow linker to compile with -DLINKER_DEBUG=1
2012-08-27 16:12:39 -07:00
Nick Kralevich
5443561d5d am 48c88804: am 775dabd4: am 9dfaa63a: Merge "Allow linker to compile with -DLINKER_DEBUG=1"
* commit '48c88804293c8ebebe8c6035b0e077f4d55fe625':
  Allow linker to compile with -DLINKER_DEBUG=1
2012-08-27 16:09:49 -07:00
Nick Kralevich
48c8880429 am 775dabd4: am 9dfaa63a: Merge "Allow linker to compile with -DLINKER_DEBUG=1"
* commit '775dabd4d7f1c08d4229a3578d15990e86dd9c92':
  Allow linker to compile with -DLINKER_DEBUG=1
2012-08-27 16:08:12 -07:00
Nick Kralevich
775dabd4d7 am 9dfaa63a: Merge "Allow linker to compile with -DLINKER_DEBUG=1"
* commit '9dfaa63a1c0d1b8e75dd9d7077a8103a19821fa9':
  Allow linker to compile with -DLINKER_DEBUG=1
2012-08-27 16:06:34 -07:00
Nick Kralevich
9dfaa63a1c Merge "Allow linker to compile with -DLINKER_DEBUG=1" 2012-08-27 16:00:50 -07:00
Elliott Hughes
80921057d4 am ea108d8a: am 8c7f4777: am d2d8031d: am bc366292: Merge "Added missing cache failed notification"
* commit 'ea108d8a665aa708e878432ab1cdab959809ef9b':
  Added missing cache failed notification
2012-08-27 15:27:46 -07:00
Elliott Hughes
ea108d8a66 am 8c7f4777: am d2d8031d: am bc366292: Merge "Added missing cache failed notification"
* commit '8c7f4777ec2127a95f7f0aea3bf32fe9309a6ada':
  Added missing cache failed notification
2012-08-27 15:25:02 -07:00
Elliott Hughes
8c7f4777ec am d2d8031d: am bc366292: Merge "Added missing cache failed notification"
* commit 'd2d8031df16c78b4d5bdbe481ebe6856caa69fd1':
  Added missing cache failed notification
2012-08-27 15:22:35 -07:00
Elliott Hughes
d2d8031df1 am bc366292: Merge "Added missing cache failed notification"
* commit 'bc366292ff47ad9a5053e213ec253992baeee648':
  Added missing cache failed notification
2012-08-27 15:18:52 -07:00
Iliyan Malchev
5006660be8 am c9008991: am 3ad36e52: bionic: update sanitized MSM, V4L2 kernel headers
* commit 'c9008991f33b95831f94e0cc970c94a6ea6f4199':
  bionic: update sanitized MSM, V4L2 kernel headers
2012-08-27 15:17:31 -07:00
Iliyan Malchev
c9008991f3 am 3ad36e52: bionic: update sanitized MSM, V4L2 kernel headers
* commit '3ad36e525f1e0c5c35c9e854e542acff48e515a8':
  bionic: update sanitized MSM, V4L2 kernel headers
2012-08-27 15:13:48 -07:00
Elliott Hughes
bc366292ff Merge "Added missing cache failed notification" 2012-08-27 15:00:51 -07:00
Iliyan Malchev
3ad36e525f bionic: update sanitized MSM, V4L2 kernel headers
Change-Id: I4ca8835ff7a1d21f80a139b1d76ceacf82b48502
Signed-off-by: Iliyan Malchev <malchev@google.com>
2012-08-27 12:11:41 -07:00
The Android Open Source Project
99696a9373 am 75f3d25c: (-s ours) Reconcile with jb-mr1-release - do not merge
* commit '75f3d25cef30dfa4578b1bb7562222ad51a75de5':
2012-08-25 07:16:49 -07:00
The Android Open Source Project
75f3d25cef Reconcile with jb-mr1-release - do not merge
Change-Id: I81e9084dd1f51185ecced85fecd1439a72f8c82c
2012-08-25 07:15:24 -07:00
Nick Kralevich
3697b52605 Allow linker to compile with -DLINKER_DEBUG=1
Change-Id: I27e734048cbcb9ed936369115582b3c734de1280
2012-08-24 17:11:45 -07:00
Ian Rogers
995f8c925f am 1f84a4e4: am a190cbb8: am 05fddb41: am a37ce7fa: Merge "Add missing va_end() to prevent stack corruptions"
* commit '1f84a4e426aca34ad17b6d626bd725e86a7c97b8':
  Add missing va_end() to prevent stack corruptions
2012-08-24 15:27:30 -07:00
Ian Rogers
1f84a4e426 am a190cbb8: am 05fddb41: am a37ce7fa: Merge "Add missing va_end() to prevent stack corruptions"
* commit 'a190cbb825c690e9e2423e022cabb844a0cd8a5a':
  Add missing va_end() to prevent stack corruptions
2012-08-24 15:25:44 -07:00
Ian Rogers
a190cbb825 am 05fddb41: am a37ce7fa: Merge "Add missing va_end() to prevent stack corruptions"
* commit '05fddb41d00710a31181693cebed570d711acd37':
  Add missing va_end() to prevent stack corruptions
2012-08-24 15:23:11 -07:00
Ian Rogers
05fddb41d0 am a37ce7fa: Merge "Add missing va_end() to prevent stack corruptions"
* commit 'a37ce7faa6d6c7355e3c6f6e09e5268cbf29c291':
  Add missing va_end() to prevent stack corruptions
2012-08-24 15:21:12 -07:00
Ian Rogers
a37ce7faa6 Merge "Add missing va_end() to prevent stack corruptions" 2012-08-24 15:10:07 -07:00
Rebecca Schultz Zavin
bbe3d3916f am fa5942cc: am cbd76d15: Merge "Update ion header" into jb-mr1-dev
* commit 'fa5942cc081f3aef1ceb8cf6f0d8c0984d18bf82':
  Update ion header
2012-08-23 16:34:33 -07:00
Rebecca Schultz Zavin
fa5942cc08 am cbd76d15: Merge "Update ion header" into jb-mr1-dev
* commit 'cbd76d15aff86ed63747d2a3b41a999e0cf9302f':
  Update ion header
2012-08-23 16:33:19 -07:00
Rebecca Schultz Zavin
cbd76d15af Merge "Update ion header" into jb-mr1-dev 2012-08-23 16:31:45 -07:00
Rebecca Schultz Zavin
eb75db7d83 Update ion header
Change-Id: Ib06a2c63070c9f507c14a43a0a0ac4d362f68d22
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
2012-08-23 16:29:23 -07:00
Nick Kralevich
b46a1d8890 am dd5d865d: am 81af404b: am e8198b97: am 26facba2: Merge "hardening: remove pointless ARM __get_pc() function"
* commit 'dd5d865d92c21105d28dd931d56c2f5e2f4df275':
  hardening: remove pointless ARM __get_pc() function
2012-08-23 12:37:19 -07:00
Nick Kralevich
dd5d865d92 am 81af404b: am e8198b97: am 26facba2: Merge "hardening: remove pointless ARM __get_pc() function"
* commit '81af404b634dc75581ab2dedf0c3d68b8666aee4':
  hardening: remove pointless ARM __get_pc() function
2012-08-23 12:35:53 -07:00
Nick Kralevich
81af404b63 am e8198b97: am 26facba2: Merge "hardening: remove pointless ARM __get_pc() function"
* commit 'e8198b97c369292a3ea97e5a2009bfba8229ddb5':
  hardening: remove pointless ARM __get_pc() function
2012-08-23 12:34:21 -07:00
The Android Automerger
21120f6d7b merge in jb-mr1-release history after reset to jb-mr1-dev 2012-08-23 06:33:25 -07:00
The Android Open Source Project
e2862bb984 am b1d43872: (-s ours) Reconcile with jb-mr1-release - do not merge
* commit 'b1d43872224837a85f593d9f946686c7272c7d0e':
  Revert "Upgrade to dlmalloc 2.8.5."
  Revert "Restore posix_memalign"
2012-08-22 15:35:50 -07:00
The Android Open Source Project
b1d4387222 Reconcile with jb-mr1-release - do not merge
Change-Id: I3a81059b919617b639d4b39c40235301db4dd86a
2012-08-22 15:34:31 -07:00
Brian Carlstrom
561bf16be5 Revert "Upgrade to dlmalloc 2.8.5."
This reverts commit 999089181e.
2012-08-22 14:56:19 -07:00
Brian Carlstrom
453294d1da Revert "Restore posix_memalign"
This reverts commit bfc1d97531.
2012-08-22 14:56:13 -07:00