OSDN Git Service

android-x86/bionic.git
8 years agoMerge "Explicitly disallow default c-tor" am: b24f7a0513 am: 9f525b66eb
Dimitry Ivanov [Wed, 2 Dec 2015 18:55:41 +0000 (18:55 +0000)]
Merge "Explicitly disallow default c-tor" am: b24f7a0513 am: 9f525b66eb
am: 64ffc84d4d

* commit '64ffc84d4de667e1bcca2f38bd542e788c6d8063':
  Explicitly disallow default c-tor

8 years agoMerge "Explicitly disallow default c-tor" am: b24f7a0513
Dimitry Ivanov [Wed, 2 Dec 2015 18:51:05 +0000 (18:51 +0000)]
Merge "Explicitly disallow default c-tor" am: b24f7a0513
am: 9f525b66eb

* commit '9f525b66eb0ef7fd03d9387ec1efc1ee833f5077':
  Explicitly disallow default c-tor

8 years agoMerge "Explicitly disallow default c-tor"
Dimitry Ivanov [Wed, 2 Dec 2015 18:47:27 +0000 (18:47 +0000)]
Merge "Explicitly disallow default c-tor"
am: b24f7a0513

* commit 'b24f7a0513f7468ccf7563d7d347c6e7bab391d9':
  Explicitly disallow default c-tor

8 years agoMerge "Explicitly disallow default c-tor"
Dimitry Ivanov [Wed, 2 Dec 2015 18:44:20 +0000 (18:44 +0000)]
Merge "Explicitly disallow default c-tor"

8 years agoExplicitly disallow default c-tor
Dimitry Ivanov [Wed, 2 Dec 2015 00:57:19 +0000 (16:57 -0800)]
Explicitly disallow default c-tor

Change-Id: Ia52995a459443159e80383d5b396c3edd90a08ae

8 years agoMerge "Add bionic-unit-tests-gcc{32,64}, compiled with gcc." am: 9cbabd8fe5 am: d7456...
Chih-hung Hsieh [Tue, 1 Dec 2015 00:34:09 +0000 (00:34 +0000)]
Merge "Add bionic-unit-tests-gcc{32,64}, compiled with gcc." am: 9cbabd8fe5 am: d74566026d
am: faee342e14

* commit 'faee342e143e308ebf4f68945d2c400541170215':
  Add bionic-unit-tests-gcc{32,64}, compiled with gcc.

8 years agoMerge "Add bionic-unit-tests-gcc{32,64}, compiled with gcc." am: 9cbabd8fe5
Chih-hung Hsieh [Tue, 1 Dec 2015 00:30:41 +0000 (00:30 +0000)]
Merge "Add bionic-unit-tests-gcc{32,64}, compiled with gcc." am: 9cbabd8fe5
am: d74566026d

* commit 'd74566026d439e915ce56c9cf739181187d05192':
  Add bionic-unit-tests-gcc{32,64}, compiled with gcc.

8 years agoMerge "Add bionic-unit-tests-gcc{32,64}, compiled with gcc."
Chih-hung Hsieh [Tue, 1 Dec 2015 00:27:13 +0000 (00:27 +0000)]
Merge "Add bionic-unit-tests-gcc{32,64}, compiled with gcc."
am: 9cbabd8fe5

* commit '9cbabd8fe5ef3834682996ff23b4a5325e0586cb':
  Add bionic-unit-tests-gcc{32,64}, compiled with gcc.

8 years agoMerge "Add bionic-unit-tests-gcc{32,64}, compiled with gcc."
Chih-hung Hsieh [Tue, 1 Dec 2015 00:23:32 +0000 (00:23 +0000)]
Merge "Add bionic-unit-tests-gcc{32,64}, compiled with gcc."

8 years agoMerge "Init stdio in __libc_init_common." am: 6bef152af2 am: 1f4b0c44b3
Yabin Cui [Tue, 1 Dec 2015 00:03:35 +0000 (00:03 +0000)]
Merge "Init stdio in __libc_init_common." am: 6bef152af2 am: 1f4b0c44b3
am: 2b941035dd

* commit '2b941035dd13f2b411fee5549883a1a8b6b9a30e':
  Init stdio in __libc_init_common.

8 years agoMerge "Enable using clang to build __cxa_thread_atexit_impl." am: af87c9ccfc am:...
Yabin Cui [Tue, 1 Dec 2015 00:03:30 +0000 (00:03 +0000)]
Merge "Enable using clang to build __cxa_thread_atexit_impl." am: af87c9ccfc am: 4262d3e9ac
am: b2ddaafc68

* commit 'b2ddaafc68aa87c29ea0afb8bbf48ab08c5cd63e':
  Enable using clang to build __cxa_thread_atexit_impl.

8 years agoMerge "Init stdio in __libc_init_common." am: 6bef152af2
Yabin Cui [Tue, 1 Dec 2015 00:00:50 +0000 (00:00 +0000)]
Merge "Init stdio in __libc_init_common." am: 6bef152af2
am: 1f4b0c44b3

* commit '1f4b0c44b37bbf840a8210c8948e1d6efb0cdc11':
  Init stdio in __libc_init_common.

8 years agoMerge "Enable using clang to build __cxa_thread_atexit_impl." am: af87c9ccfc
Yabin Cui [Tue, 1 Dec 2015 00:00:46 +0000 (00:00 +0000)]
Merge "Enable using clang to build __cxa_thread_atexit_impl." am: af87c9ccfc
am: 4262d3e9ac

* commit '4262d3e9ac2462502875f5a7f1925a44ce29b299':
  Enable using clang to build __cxa_thread_atexit_impl.

8 years agoMerge "Init stdio in __libc_init_common."
Yabin Cui [Mon, 30 Nov 2015 23:58:50 +0000 (23:58 +0000)]
Merge "Init stdio in __libc_init_common."
am: 6bef152af2

* commit '6bef152af2c622ee0c57f9c374b76f3dd352e52b':
  Init stdio in __libc_init_common.

8 years agoMerge "Enable using clang to build __cxa_thread_atexit_impl."
Yabin Cui [Mon, 30 Nov 2015 23:58:41 +0000 (23:58 +0000)]
Merge "Enable using clang to build __cxa_thread_atexit_impl."
am: af87c9ccfc

* commit 'af87c9ccfc3afbc7db9f0bc131d122453b5c882d':
  Enable using clang to build __cxa_thread_atexit_impl.

8 years agoMerge "Init stdio in __libc_init_common."
Yabin Cui [Mon, 30 Nov 2015 23:57:02 +0000 (23:57 +0000)]
Merge "Init stdio in __libc_init_common."

8 years agoMerge "Enable using clang to build __cxa_thread_atexit_impl."
Yabin Cui [Mon, 30 Nov 2015 23:56:41 +0000 (23:56 +0000)]
Merge "Enable using clang to build __cxa_thread_atexit_impl."

8 years agoEnable using clang to build __cxa_thread_atexit_impl.
Yabin Cui [Mon, 30 Nov 2015 22:07:58 +0000 (14:07 -0800)]
Enable using clang to build __cxa_thread_atexit_impl.

Remove previous workaround as we no longer use
__thread in __cxa_thread_atexit_impl.cpp.

Change-Id: Ic1062995db488859b341acdda0b5f6635e10d7e8

8 years agoMerge "Don\'t use __thread in __cxa_thread_finalize()." am: 28d3f00cf4 am: 51ca18d2a1
Yabin Cui [Mon, 30 Nov 2015 22:07:43 +0000 (22:07 +0000)]
Merge "Don\'t use __thread in __cxa_thread_finalize()." am: 28d3f00cf4 am: 51ca18d2a1
am: 5f6ff42bb6

* commit '5f6ff42bb615ce71e7bed66b45ea27fc29d2c4f4':
  Don't use __thread in __cxa_thread_finalize().

8 years agoMerge "Don\'t use __thread in __cxa_thread_finalize()." am: 28d3f00cf4
Yabin Cui [Mon, 30 Nov 2015 22:03:39 +0000 (22:03 +0000)]
Merge "Don\'t use __thread in __cxa_thread_finalize()." am: 28d3f00cf4
am: 51ca18d2a1

* commit '51ca18d2a11eedff94a11c1cb996f38c2011b0dd':
  Don't use __thread in __cxa_thread_finalize().

8 years agoMerge "Don\'t use __thread in __cxa_thread_finalize()."
Yabin Cui [Mon, 30 Nov 2015 22:01:36 +0000 (22:01 +0000)]
Merge "Don\'t use __thread in __cxa_thread_finalize()."
am: 28d3f00cf4

* commit '28d3f00cf4545812503c835ea906fa83309e48ed':
  Don't use __thread in __cxa_thread_finalize().

8 years agoMerge "Don't use __thread in __cxa_thread_finalize()."
Yabin Cui [Mon, 30 Nov 2015 21:59:47 +0000 (21:59 +0000)]
Merge "Don't use __thread in __cxa_thread_finalize()."

8 years agoInit stdio in __libc_init_common.
Yabin Cui [Tue, 24 Nov 2015 23:37:06 +0000 (15:37 -0800)]
Init stdio in __libc_init_common.

Previously we call __sinit() lazily. But it is likely to cause data
races like in https://android-review.googlesource.com/#/c/183237/. So
we prefer to call __sinit() explicitly at libc initialization.

Bug: 25392375

Change-Id: I181ea7a4b2e4c7350b45f2e6c86886ea023e80b8

8 years agoMerge "Fix pthread_test according to tsan report." am: aec13988da am: 6ac2fdd0f4
Yabin Cui [Mon, 30 Nov 2015 21:47:09 +0000 (21:47 +0000)]
Merge "Fix pthread_test according to tsan report." am: aec13988da am: 6ac2fdd0f4
am: 9df638fcd9

* commit '9df638fcd940428fc51d2a5583bd473af2b07f29':
  Fix pthread_test according to tsan report.

8 years agoMerge "Fix pthread_test according to tsan report." am: aec13988da
Yabin Cui [Mon, 30 Nov 2015 21:45:01 +0000 (21:45 +0000)]
Merge "Fix pthread_test according to tsan report." am: aec13988da
am: 6ac2fdd0f4

* commit '6ac2fdd0f4926a3d5c8e1424c4cdf5d82805c288':
  Fix pthread_test according to tsan report.

8 years agoMerge "Fix pthread_test according to tsan report."
Yabin Cui [Mon, 30 Nov 2015 21:42:42 +0000 (21:42 +0000)]
Merge "Fix pthread_test according to tsan report."
am: aec13988da

* commit 'aec13988dab7ff32cb005f42b952e3b9b55a4779':
  Fix pthread_test according to tsan report.

8 years agoMerge "Fix pthread_test according to tsan report."
Yabin Cui [Mon, 30 Nov 2015 21:38:59 +0000 (21:38 +0000)]
Merge "Fix pthread_test according to tsan report."

8 years agoMerge "Consider when building libc_thread_atexit_impl module" am: 2bb85c848a am...
Chih-hung Hsieh [Mon, 30 Nov 2015 19:08:35 +0000 (19:08 +0000)]
Merge "Consider  when building libc_thread_atexit_impl module" am: 2bb85c848a am: 4f94b7bfc0
am: 2b834401ef

* commit '2b834401ef62ce639070450d12623632e067c5df':
  Consider $(use_clang) when building libc_thread_atexit_impl module

8 years agoMerge "Consider when building libc_thread_atexit_impl module" am: 2bb85c848a
Chih-hung Hsieh [Mon, 30 Nov 2015 19:04:41 +0000 (19:04 +0000)]
Merge "Consider  when building libc_thread_atexit_impl module" am: 2bb85c848a
am: 4f94b7bfc0

* commit '4f94b7bfc082cd6f52d02a789512d1e6a6a01af6':
  Consider $(use_clang) when building libc_thread_atexit_impl module

8 years agoMerge "Consider when building libc_thread_atexit_impl module"
Chih-hung Hsieh [Mon, 30 Nov 2015 19:02:05 +0000 (19:02 +0000)]
Merge "Consider  when building libc_thread_atexit_impl module"
am: 2bb85c848a

* commit '2bb85c848abb89951ec01342d6c8278311346395':
  Consider $(use_clang) when building libc_thread_atexit_impl module

8 years agoMerge "Consider $(use_clang) when building libc_thread_atexit_impl module"
Chih-hung Hsieh [Mon, 30 Nov 2015 18:58:59 +0000 (18:58 +0000)]
Merge "Consider $(use_clang) when building libc_thread_atexit_impl module"

8 years agoAdd bionic-unit-tests-gcc{32,64}, compiled with gcc.
Chih-Hung Hsieh [Fri, 20 Nov 2015 22:13:24 +0000 (14:13 -0800)]
Add bionic-unit-tests-gcc{32,64}, compiled with gcc.

* bionic-unit-tests{32,64} are compiled with clang/llvm.
* Skip one single test in __cxa_thread_atexit_test.cpp
  when compiled with aarch64 clang/llvm.
  Aarch64 clang/llvm generates relocation references to
  "thread_local" symbols not supported by Android linker.

BUG: 25642296
Change-Id: Ia0497b79c4b335228afeb48a26e0592217909953

8 years agoConsider $(use_clang) when building libc_thread_atexit_impl module
Nikola Veljkovic [Wed, 25 Nov 2015 18:03:12 +0000 (19:03 +0100)]
Consider $(use_clang) when building libc_thread_atexit_impl module

Change-Id: Ia369d94979f418198a2ee891385942d9bc5604d7

8 years agoDon't use __thread in __cxa_thread_finalize().
Yabin Cui [Wed, 25 Nov 2015 01:24:06 +0000 (17:24 -0800)]
Don't use __thread in __cxa_thread_finalize().

Currently we use __thread variable to store thread_local_dtors,
which makes tsan test fork_atexit.cc hang. The problem is as below:
The main thread creates a worker thread, the worker thread calls
pthread_exit() -> __cxa_thread_finalize() -> __emutls_get_address()
-> pthread_once(emutls_init) -> emutls_init().
Then the main thread calls fork(), the child process cals
exit() -> __cxa_thread_finalize() -> __emutls_get_address()
-> pthread_once(emutls_init).
So the child process is waiting for pthread_once(emutls_init)
to finish which will never occur.

It might be the test's fault because POSIX standard says if a
multi-threaded process calls fork(), the new process may only
execute async-signal-safe operations until exec functions are
called. And exit() is not async-signal-safe. But we can make
bionic more reliable by not using __thread in
__cxa_thread_finalize().

Bug: 25392375
Change-Id: Ife403dd7379dad8ddf1859c348c1c0adea07afb3

8 years agoMerge "Remove cflags and ldflags from crt defaults" am: a01108d9bf am: a36d1e0d31
Colin Cross [Tue, 24 Nov 2015 21:48:20 +0000 (21:48 +0000)]
Merge "Remove cflags and ldflags from crt defaults" am: a01108d9bf am: a36d1e0d31
am: a31e637e0a

* commit 'a31e637e0a3f33c06ceff6efa38b29bc1b2e598c':
  Remove cflags and ldflags from crt defaults

8 years agoMerge "Remove cflags and ldflags from crt defaults" am: a01108d9bf
Colin Cross [Tue, 24 Nov 2015 21:44:59 +0000 (21:44 +0000)]
Merge "Remove cflags and ldflags from crt defaults" am: a01108d9bf
am: a36d1e0d31

* commit 'a36d1e0d31727d645d0f6b162489eecb8e8e2f22':
  Remove cflags and ldflags from crt defaults

8 years agoMerge "Remove cflags and ldflags from crt defaults"
Colin Cross [Tue, 24 Nov 2015 21:41:22 +0000 (21:41 +0000)]
Merge "Remove cflags and ldflags from crt defaults"
am: a01108d9bf

* commit 'a01108d9bf415854b9d36334483133adff3d7405':
  Remove cflags and ldflags from crt defaults

8 years agoMerge "Remove cflags and ldflags from crt defaults"
Colin Cross [Tue, 24 Nov 2015 21:33:54 +0000 (21:33 +0000)]
Merge "Remove cflags and ldflags from crt defaults"

8 years agoMerge "move arch variant structs down a level" am: 8bd27182c5 am: 912e27a4b2
Colin Cross [Tue, 24 Nov 2015 20:31:37 +0000 (20:31 +0000)]
Merge "move arch variant structs down a level" am: 8bd27182c5 am: 912e27a4b2
am: aba3af1956

* commit 'aba3af19566b4cd7b4d28a0910ea6120f0764ba0':
  move arch variant structs down a level

8 years agoMerge "move arch variant structs down a level" am: 8bd27182c5
Colin Cross [Tue, 24 Nov 2015 20:27:47 +0000 (20:27 +0000)]
Merge "move arch variant structs down a level" am: 8bd27182c5
am: 912e27a4b2

* commit '912e27a4b255e85546bf64fc1f3e68398525ff1c':
  move arch variant structs down a level

8 years agoMerge "move arch variant structs down a level"
Colin Cross [Tue, 24 Nov 2015 20:24:24 +0000 (20:24 +0000)]
Merge "move arch variant structs down a level"
am: 8bd27182c5

* commit '8bd27182c505cdc8031ab23fea5d1dccb6b7405a':
  move arch variant structs down a level

8 years agoMerge "move arch variant structs down a level"
Colin Cross [Tue, 24 Nov 2015 20:21:20 +0000 (20:21 +0000)]
Merge "move arch variant structs down a level"

8 years agoRemove cflags and ldflags from crt defaults
Colin Cross [Mon, 23 Nov 2015 22:12:19 +0000 (14:12 -0800)]
Remove cflags and ldflags from crt defaults

After ToolchainCflags were added to soong crt no longer needs to try to
recreate the bare minimum cflags for compiling for each architecture.
Also always use GCC to match crt.mk

Change-Id: I01a833ab70d989033c84f072e3660d060189688c

8 years agoMerge "Introduce anonymous namespace" am: db8caa740a am: 321314f2e9
Dimitry Ivanov [Tue, 24 Nov 2015 03:05:35 +0000 (03:05 +0000)]
Merge "Introduce anonymous namespace" am: db8caa740a am: 321314f2e9
am: 1efba58604

* commit '1efba586043a97812ea86347099bd7cbabd94594':
  Introduce anonymous namespace

8 years agoMerge "Introduce anonymous namespace" am: db8caa740a
Dimitry Ivanov [Tue, 24 Nov 2015 02:58:19 +0000 (02:58 +0000)]
Merge "Introduce anonymous namespace" am: db8caa740a
am: 321314f2e9

* commit '321314f2e90d33ef6a653080784754d483bb6d44':
  Introduce anonymous namespace

8 years agoMerge "Introduce anonymous namespace"
Dimitry Ivanov [Tue, 24 Nov 2015 02:45:14 +0000 (02:45 +0000)]
Merge "Introduce anonymous namespace"
am: db8caa740a

* commit 'db8caa740a409c2ce75f875df84857e6be69eb9f':
  Introduce anonymous namespace

8 years agoMerge "Introduce anonymous namespace"
Dimitry Ivanov [Tue, 24 Nov 2015 02:23:34 +0000 (02:23 +0000)]
Merge "Introduce anonymous namespace"

8 years agoIntroduce anonymous namespace
Dmitriy Ivanov [Mon, 23 Nov 2015 19:26:35 +0000 (11:26 -0800)]
Introduce anonymous namespace

The anonymous namespace is introduced to
handle cases when linker can not find the
caller. This usually happens when caller
code was not loaded by dynamic linker;
for example mono-generated code.

Bug: http://b/25844435
Bug: http://b/22548808
Change-Id: I9e5b1d23c1c75bc78548d68e79216a6a943a33cf

8 years agomove arch variant structs down a level
Colin Cross [Mon, 23 Nov 2015 22:12:15 +0000 (14:12 -0800)]
move arch variant structs down a level

Use blueprint's new anonymous embedded struct feature to move the arch
variant properties down a level, replacing arch.cortex_a9.srcs with
arch.arm.cortex_a9.srcs, while still supporting top-level properties
like arch.arm.srcs.

Change-Id: Ib41c80e3549440d5efdfd293a15cffa3f51a0fe4

8 years agoMerge "Change _stdio_handles_locking into _caller_handles_locking." am: 17554356cc...
Yabin Cui [Mon, 23 Nov 2015 19:09:41 +0000 (19:09 +0000)]
Merge "Change _stdio_handles_locking into _caller_handles_locking." am: 17554356cc am: edcee4e401
am: 2327635f6e

* commit '2327635f6ea2ef519c334283d1bf048e2116a5f0':
  Change _stdio_handles_locking into _caller_handles_locking.

8 years agoMerge "Change _stdio_handles_locking into _caller_handles_locking." am: 17554356cc
Yabin Cui [Mon, 23 Nov 2015 19:05:48 +0000 (19:05 +0000)]
Merge "Change _stdio_handles_locking into _caller_handles_locking." am: 17554356cc
am: edcee4e401

* commit 'edcee4e4011b1a6e327791493ee1abde3ded2142':
  Change _stdio_handles_locking into _caller_handles_locking.

8 years agoMerge "Change _stdio_handles_locking into _caller_handles_locking."
Yabin Cui [Mon, 23 Nov 2015 19:02:08 +0000 (19:02 +0000)]
Merge "Change _stdio_handles_locking into _caller_handles_locking."
am: 17554356cc

* commit '17554356cc865908e5cbd7814c8be7e47c9c4ec5':
  Change _stdio_handles_locking into _caller_handles_locking.

8 years agoMerge "Change _stdio_handles_locking into _caller_handles_locking."
Yabin Cui [Mon, 23 Nov 2015 18:57:26 +0000 (18:57 +0000)]
Merge "Change _stdio_handles_locking into _caller_handles_locking."

8 years agoMerge "Handling invalid section headers" am: a7fc7f9909 am: a8f8cbb3fc
Dimitry Ivanov [Mon, 23 Nov 2015 07:39:40 +0000 (07:39 +0000)]
Merge "Handling invalid section headers" am: a7fc7f9909 am: a8f8cbb3fc
am: fd7abc5dc9

* commit 'fd7abc5dc9d384edb5b75faa97d96a1d56164e52':
  Handling invalid section headers

8 years agoMerge "Handling invalid section headers" am: a7fc7f9909
Dimitry Ivanov [Mon, 23 Nov 2015 07:36:26 +0000 (07:36 +0000)]
Merge "Handling invalid section headers" am: a7fc7f9909
am: a8f8cbb3fc

* commit 'a8f8cbb3fcfcb654474ff041013cc081a70f4812':
  Handling invalid section headers

8 years agoMerge "Handling invalid section headers"
Dimitry Ivanov [Mon, 23 Nov 2015 07:33:23 +0000 (07:33 +0000)]
Merge "Handling invalid section headers"
am: a7fc7f9909

* commit 'a7fc7f9909c221a0f64c5c5ecc5fadd5fba467c5':
  Handling invalid section headers

8 years agoMerge "Handling invalid section headers"
Dimitry Ivanov [Mon, 23 Nov 2015 07:28:32 +0000 (07:28 +0000)]
Merge "Handling invalid section headers"

8 years agoHandling invalid section headers
Dmitriy Ivanov [Sat, 21 Nov 2015 01:28:12 +0000 (17:28 -0800)]
Handling invalid section headers

The linker crashes if native library has invalid section
headers. This change adds boundary checks on target offsets
and generates dlerror instead of crash.

Bug: http://b/25800330
Change-Id: Ibe282029997302b9b557637c3aad064d7d0febc5

8 years agoMerge "Use FUTEX_WAIT_BITSET to avoid converting timeouts." am: 74ed96d597 am: 4469973bfb
Yabin Cui [Sat, 21 Nov 2015 02:01:54 +0000 (02:01 +0000)]
Merge "Use FUTEX_WAIT_BITSET to avoid converting timeouts." am: 74ed96d597 am: 4469973bfb
am: 386aa431b5

* commit '386aa431b539feb537b9fd3a5f64b1ab45a635e6':
  Use FUTEX_WAIT_BITSET to avoid converting timeouts.

8 years agoMerge "Use FUTEX_WAIT_BITSET to avoid converting timeouts." am: 74ed96d597
Yabin Cui [Sat, 21 Nov 2015 01:58:35 +0000 (01:58 +0000)]
Merge "Use FUTEX_WAIT_BITSET to avoid converting timeouts." am: 74ed96d597
am: 4469973bfb

* commit '4469973bfbfc672e006a24242a149c2e03d623f1':
  Use FUTEX_WAIT_BITSET to avoid converting timeouts.

8 years agoMerge "Use FUTEX_WAIT_BITSET to avoid converting timeouts."
Yabin Cui [Sat, 21 Nov 2015 01:55:27 +0000 (01:55 +0000)]
Merge "Use FUTEX_WAIT_BITSET to avoid converting timeouts."
am: 74ed96d597

* commit '74ed96d59731aa3661494330804d866e825209d3':
  Use FUTEX_WAIT_BITSET to avoid converting timeouts.

8 years agoMerge "Use FUTEX_WAIT_BITSET to avoid converting timeouts."
Yabin Cui [Sat, 21 Nov 2015 01:50:29 +0000 (01:50 +0000)]
Merge "Use FUTEX_WAIT_BITSET to avoid converting timeouts."

8 years agoChange _stdio_handles_locking into _caller_handles_locking.
Yabin Cui [Thu, 19 Nov 2015 21:52:16 +0000 (13:52 -0800)]
Change _stdio_handles_locking into _caller_handles_locking.

It is reported by tsan that funlockfile() can unlock an unlocked mutex.
It happens when printf() is called before fopen() or other stdio stuff.
As FLOCKFILE(fp) is called before __sinit(), _stdio_handles_locking is false,
and _FLOCK(fp) will not be locked. But then cantwrite(fp) in __vfprintf()
calls__sinit(), which makes _stdio_handles_locking become true, and
FUNLOCKFILE(fp) unlocks _FLOCK(fp).

Change _stdio_handles_locking into _caller_handles_locking,
so __sinit() won't change its value. Add test due to my previous fault.

Bug: 25392375
Change-Id: I483e3c3cdb28da65e62f1fd9615bf58c5403b4dd

8 years agoMerge "Move some utility functions to linker_utils" am: fb3219fbd1 am: 8bd9e9ec69
Dimitry Ivanov [Fri, 20 Nov 2015 21:50:43 +0000 (21:50 +0000)]
Merge "Move some utility functions to linker_utils" am: fb3219fbd1 am: 8bd9e9ec69
am: 1299ef37f7

* commit '1299ef37f772500a325b2920e46d1a4b69942f2f':
  Move some utility functions to linker_utils

8 years agoMerge "Move some utility functions to linker_utils" am: fb3219fbd1
Dimitry Ivanov [Fri, 20 Nov 2015 21:48:21 +0000 (21:48 +0000)]
Merge "Move some utility functions to linker_utils" am: fb3219fbd1
am: 8bd9e9ec69

* commit '8bd9e9ec697c052f4de00903188f6d01ff688cef':
  Move some utility functions to linker_utils

8 years agoMerge "Move some utility functions to linker_utils"
Dimitry Ivanov [Fri, 20 Nov 2015 21:45:36 +0000 (21:45 +0000)]
Merge "Move some utility functions to linker_utils"
am: fb3219fbd1

* commit 'fb3219fbd1dbb0a369d52cbd0200330fd8852bc1':
  Move some utility functions to linker_utils

8 years agoMerge "Move some utility functions to linker_utils"
Dimitry Ivanov [Fri, 20 Nov 2015 21:42:18 +0000 (21:42 +0000)]
Merge "Move some utility functions to linker_utils"

8 years agoMove some utility functions to linker_utils
Dmitriy Ivanov [Fri, 20 Nov 2015 21:34:11 +0000 (13:34 -0800)]
Move some utility functions to linker_utils

Also adds unit-tests for page_start, page_offset, and safe_add

Change-Id: Ia1325b4682d367328a01599a19848e4ffcd2c0ea

8 years agoMerge "Improve error message for files with no sections" am: a1ab0d8ed1 am: d34c33764e
Dimitry Ivanov [Fri, 20 Nov 2015 19:26:11 +0000 (19:26 +0000)]
Merge "Improve error message for files with no sections" am: a1ab0d8ed1 am: d34c33764e
am: d1487e9169

* commit 'd1487e9169362a2736c33e7da8c67a7a901ebcb4':
  Improve error message for files with no sections

8 years agoMerge "Improve error message for files with no sections" am: a1ab0d8ed1
Dimitry Ivanov [Fri, 20 Nov 2015 19:23:51 +0000 (19:23 +0000)]
Merge "Improve error message for files with no sections" am: a1ab0d8ed1
am: d34c33764e

* commit 'd34c33764e0af32f9065c506b8bfb801156e8f98':
  Improve error message for files with no sections

8 years agoMerge "Improve error message for files with no sections"
Dimitry Ivanov [Fri, 20 Nov 2015 19:19:40 +0000 (19:19 +0000)]
Merge "Improve error message for files with no sections"
am: a1ab0d8ed1

* commit 'a1ab0d8ed1c4025233b0d816164eefb1b84159b9':
  Improve error message for files with no sections

8 years agoMerge "Improve error message for files with no sections"
Dimitry Ivanov [Fri, 20 Nov 2015 19:16:14 +0000 (19:16 +0000)]
Merge "Improve error message for files with no sections"

8 years agoMerge "Disable clang for mips/mips64 libc." am: 8d5fb0d787 am: bb06a84672
Chih-hung Hsieh [Fri, 20 Nov 2015 19:07:09 +0000 (19:07 +0000)]
Merge "Disable clang for mips/mips64 libc." am: 8d5fb0d787 am: bb06a84672
am: d8adbe4a9c

* commit 'd8adbe4a9ccf99135341704386ff167f126f4e21':
  Disable clang for mips/mips64 libc.

8 years agoMerge "Disable clang for mips/mips64 libc." am: 8d5fb0d787
Chih-hung Hsieh [Fri, 20 Nov 2015 19:02:58 +0000 (19:02 +0000)]
Merge "Disable clang for mips/mips64 libc." am: 8d5fb0d787
am: bb06a84672

* commit 'bb06a846727ecdda6227d95d4fa8570e0cdf3e11':
  Disable clang for mips/mips64 libc.

8 years agoMerge "Disable clang for mips/mips64 libc."
Chih-hung Hsieh [Fri, 20 Nov 2015 18:57:17 +0000 (18:57 +0000)]
Merge "Disable clang for mips/mips64 libc."
am: 8d5fb0d787

* commit '8d5fb0d78716379d07eddbd75c88c9b7082436ef':
  Disable clang for mips/mips64 libc.

8 years agoImprove error message for files with no sections
Dmitriy Ivanov [Fri, 20 Nov 2015 18:42:02 +0000 (10:42 -0800)]
Improve error message for files with no sections

Bug: http://b/25801618
Change-Id: I4f4f368e727ff48c84781279e3d17d4ac2d1b6b0

8 years agoMerge "Disable clang for mips/mips64 libc."
Chih-hung Hsieh [Fri, 20 Nov 2015 18:27:14 +0000 (18:27 +0000)]
Merge "Disable clang for mips/mips64 libc."

8 years agoDisable clang for mips/mips64 libc.
Chih-Hung Hsieh [Fri, 20 Nov 2015 17:55:35 +0000 (09:55 -0800)]
Disable clang for mips/mips64 libc.

* Many processes, including adbd, failed to start in mips/mips64
  emulator when libc.so was compiled by clang.

BUG: 25291096
Change-Id: If3434ebdca4a3a6bf6102b120ee838a7ab66cd74

8 years agoMerge "mmap: fix calculation of is_private_anonymous variable" am: 43c9045017 am...
Elliott Hughes [Fri, 20 Nov 2015 17:41:21 +0000 (17:41 +0000)]
Merge "mmap: fix calculation of is_private_anonymous variable" am: 43c9045017 am: cb3af215dc
am: 5cecfce9ff

* commit '5cecfce9ff049300c015fc12d3e966e0ed772e62':
  mmap: fix calculation of is_private_anonymous variable

8 years agoMerge "mmap: fix calculation of is_private_anonymous variable" am: 43c9045017
Elliott Hughes [Fri, 20 Nov 2015 17:37:33 +0000 (17:37 +0000)]
Merge "mmap: fix calculation of is_private_anonymous variable" am: 43c9045017
am: cb3af215dc

* commit 'cb3af215dc67899728bc3ef9d33f82358bee1335':
  mmap: fix calculation of is_private_anonymous variable

8 years agoMerge "mmap: fix calculation of is_private_anonymous variable"
Elliott Hughes [Fri, 20 Nov 2015 17:34:03 +0000 (17:34 +0000)]
Merge "mmap: fix calculation of is_private_anonymous variable"
am: 43c9045017

* commit '43c90450174ab8839c05702ac01c4092f5b6cd19':
  mmap: fix calculation of is_private_anonymous variable

8 years agoMerge "mmap: fix calculation of is_private_anonymous variable"
Elliott Hughes [Fri, 20 Nov 2015 17:19:19 +0000 (17:19 +0000)]
Merge "mmap: fix calculation of is_private_anonymous variable"

8 years agommap: fix calculation of is_private_anonymous variable
Vitaly Vul [Thu, 24 Sep 2015 12:28:59 +0000 (14:28 +0200)]
mmap: fix calculation of is_private_anonymous variable

Currently is_private_anonymous is calculated as true if _either_
MAP_PRIVATE or MAP_ANONYMOUS is set, which is a mistake.
According to Documentation/vm/ksm.txt, "KSM only merges anonymous
(private) pages, never pagecache (file) pages". MAP_PRIVATE can
still be set on file cache pages so in order to not redundantly
set MADV_MERGEABLE on pages that are not fitted for it, both
MAP_PRIVATE and MAP_ANONYMOUS should be set.

Along with this fix, add an extra check that the mapped page is
not a stack page before setting MADV_MERGEABLE for it. Stack pages
change too quickly and always end up in KSM 'page_volatile' list.

Change-Id: If4954142852f17cc61f02985ea1cb625a7f3dec6

8 years agoMerge changes I73a39c6d,Iab2af242 am: f30170dfa5 am: 8af9a739c9
Josh Gao [Fri, 20 Nov 2015 03:57:30 +0000 (03:57 +0000)]
Merge changes I73a39c6d,Iab2af242 am: f30170dfa5 am: 8af9a739c9
am: ca82808542

* commit 'ca82808542999a01bf20ab50fd2c0e23605feb4b':
  Fix test build break.
  extend the PTRDIFF_MAX size check to mremap

8 years agoMerge "Fix tsan abort for lake of __libc_auxv initialization." am: 79f8d64632 am...
Yabin Cui [Fri, 20 Nov 2015 03:49:50 +0000 (03:49 +0000)]
Merge "Fix tsan abort for lake of __libc_auxv initialization." am: 79f8d64632 am: b690cae8dd
am: 269fd4c6ff

* commit '269fd4c6ff67ba0015ea5cb2ec76338bf3fe72ef':
  Fix tsan abort for lake of __libc_auxv initialization.

8 years agoMerge changes I73a39c6d,Iab2af242 am: f30170dfa5
Josh Gao [Fri, 20 Nov 2015 02:04:44 +0000 (02:04 +0000)]
Merge changes I73a39c6d,Iab2af242 am: f30170dfa5
am: 8af9a739c9

* commit '8af9a739c985d63fcf0e3b5ddd051b597f1af44e':
  Fix test build break.
  extend the PTRDIFF_MAX size check to mremap

8 years agoMerge changes I73a39c6d,Iab2af242
Josh Gao [Fri, 20 Nov 2015 02:00:16 +0000 (02:00 +0000)]
Merge changes I73a39c6d,Iab2af242
am: f30170dfa5

* commit 'f30170dfa514266a0bf007091aa54a866920208c':
  Fix test build break.
  extend the PTRDIFF_MAX size check to mremap

8 years agoMerge changes I73a39c6d,Iab2af242
Josh Gao [Fri, 20 Nov 2015 01:55:56 +0000 (01:55 +0000)]
Merge changes I73a39c6d,Iab2af242

* changes:
  Fix test build break.
  extend the PTRDIFF_MAX size check to mremap

8 years agoMerge "Fix tsan abort for lake of __libc_auxv initialization." am: 79f8d64632
Yabin Cui [Fri, 20 Nov 2015 00:53:21 +0000 (00:53 +0000)]
Merge "Fix tsan abort for lake of __libc_auxv initialization." am: 79f8d64632
am: b690cae8dd

* commit 'b690cae8ddf0e88b4c118495ad5a9c6251c622f2':
  Fix tsan abort for lake of __libc_auxv initialization.

8 years agoMerge "Fix tsan abort for lake of __libc_auxv initialization."
Yabin Cui [Fri, 20 Nov 2015 00:48:40 +0000 (00:48 +0000)]
Merge "Fix tsan abort for lake of __libc_auxv initialization."
am: 79f8d64632

* commit '79f8d64632a57ccd62315286b809819de09e0317':
  Fix tsan abort for lake of __libc_auxv initialization.

8 years agoMerge "Fix tsan abort for lake of __libc_auxv initialization."
Yabin Cui [Fri, 20 Nov 2015 00:40:00 +0000 (00:40 +0000)]
Merge "Fix tsan abort for lake of __libc_auxv initialization."

8 years agoAdd getgrgid_r/getgrnam_r. am: 62a8339051 -s ours
Yabin Cui [Fri, 20 Nov 2015 00:16:55 +0000 (00:16 +0000)]
Add getgrgid_r/getgrnam_r. am: 62a8339051  -s ours
am: 6daf1e1c57

* commit '6daf1e1c57a2714a17dfc5ddcce38fa5515784f4':
  Add getgrgid_r/getgrnam_r.

8 years agoAdd all the glibc one-line "synonym" header files. am: 2375fd7868
Elliott Hughes [Fri, 20 Nov 2015 00:16:49 +0000 (00:16 +0000)]
Add all the glibc one-line "synonym" header files. am: 2375fd7868
am: f27dba5ca0

* commit 'f27dba5ca0e18c3559f39cac226872c6510314bc':
  Add all the glibc one-line "synonym" header files.

8 years agoMerge "Update libc/Android.bp to match libc/Android.mk" am: 9c6157c81d am: 75ba57de43
Colin Cross [Fri, 20 Nov 2015 00:16:17 +0000 (00:16 +0000)]
Merge "Update libc/Android.bp to match libc/Android.mk" am: 9c6157c81d am: 75ba57de43
am: 277a0af23c

* commit '277a0af23cbdb026b25015d28fe4e7fdb81f9999':
  Update libc/Android.bp to match libc/Android.mk

8 years agoMerge "Add /odm/lib to shared lib search path" am: 0ebe2f07c3 am: ce77e47b2f
Hung-ying Tyan [Fri, 20 Nov 2015 00:16:11 +0000 (00:16 +0000)]
Merge "Add /odm/lib to shared lib search path" am: 0ebe2f07c3 am: ce77e47b2f
am: cae410a18d

* commit 'cae410a18d24ee9ea82d0cac6142028120d3573f':
  Add /odm/lib to shared lib search path

8 years agoAdd getgrgid_r/getgrnam_r.
Yabin Cui [Thu, 19 Nov 2015 23:17:21 +0000 (23:17 +0000)]
Add getgrgid_r/getgrnam_r.
am: 62a8339051  -s ours

* commit '62a83390514eb1623192f08f4e12769f77a8941c':
  Add getgrgid_r/getgrnam_r.

8 years agoAdd all the glibc one-line "synonym" header files.
Elliott Hughes [Thu, 19 Nov 2015 23:13:12 +0000 (23:13 +0000)]
Add all the glibc one-line "synonym" header files.
am: 2375fd7868

* commit '2375fd7868c5b8c6f5d364e3c70efc024c545566':
  Add all the glibc one-line "synonym" header files.

8 years agoAdd some glibc-like #defines for libchrome. am: e87ff2ba0d
Elliott Hughes [Thu, 19 Nov 2015 23:10:19 +0000 (23:10 +0000)]
Add some glibc-like #defines for libchrome. am: e87ff2ba0d
am: 316d134bb6

* commit '316d134bb640b65abab70f3f06d87d90d1c8c5b9':

8 years agoAdd timespec/timeval conversion helpers. am: 102d83fa99
Bertrand SIMONNET [Thu, 19 Nov 2015 23:10:14 +0000 (23:10 +0000)]
Add timespec/timeval conversion helpers. am: 102d83fa99
am: 37eb8589f6

* commit '37eb8589f6975f0abd3f4142c347405f42322068':

8 years agolibc: Add sys/fcntl.h for compatibility. am: 950d3e9909
Daniel Erat [Thu, 19 Nov 2015 23:10:09 +0000 (23:10 +0000)]
libc: Add sys/fcntl.h for compatibility. am: 950d3e9909
am: cdb3bfeb34

* commit 'cdb3bfeb34780a97d9a71420ee5508dc8e667033':