OSDN Git Service

android-x86/bionic.git
7 years agoDo not send 0 byte string content. am: cafd355375
Dimitry Ivanov [Wed, 25 Jan 2017 03:58:50 +0000 (03:58 +0000)]
Do not send 0 byte string content. am: cafd355375
am: 6fd88344a5

Change-Id: If8fd7fac36d145cf6f611cc562ab5b5b345e33d9

7 years agoRevert "Revert "Remove limit of system property name length"" am: 16b2a4de14
Dimitry Ivanov [Wed, 25 Jan 2017 03:58:46 +0000 (03:58 +0000)]
Revert "Revert "Remove limit of system property name length"" am: 16b2a4de14
am: d91e7766ec

Change-Id: I19be17e5aec71182a9b83e3720e3fc3dd0cf5d0e

7 years agoDo not send 0 byte string content.
Dimitry Ivanov [Wed, 25 Jan 2017 03:56:47 +0000 (03:56 +0000)]
Do not send 0 byte string content.
am: cafd355375

Change-Id: I8c2cc596f4f5d6e9ecc0de6130be8bdfcb19c1ec

7 years agoRevert "Revert "Remove limit of system property name length""
Dimitry Ivanov [Wed, 25 Jan 2017 03:56:42 +0000 (03:56 +0000)]
Revert "Revert "Remove limit of system property name length""
am: 16b2a4de14

Change-Id: I585a55769cdca1d7f9edee479b5ec94d8821b673

7 years agoDo not send 0 byte string content.
Dimitry Ivanov [Tue, 24 Jan 2017 20:39:33 +0000 (12:39 -0800)]
Do not send 0 byte string content.

Trying to send even 0 bytes to closed socket leads to
broken pipe error. Sometimes property service is just
quick enough and closes the socket between send(valuelen)
and send(value) in the case where valuelen is 0.

Bug: http://b/34670529
Test: adb reboot 20 times and make sure phone service did not fail
Test: run bionic-unit-tests --gtest_filter=prop*
Change-Id: I96f90ca6fe1790614e7efd3015bffed1ef1e9040

7 years agoMerge "[cfi] Handle large libraries correctly." am: d8388cd303
Evgenii Stepanov [Tue, 24 Jan 2017 21:04:11 +0000 (21:04 +0000)]
Merge "[cfi] Handle large libraries correctly." am: d8388cd303
am: 7eb9bb3099

Change-Id: I4d5fe54ae8f26fdfc2a0baf6b391575a8be82c5a

7 years agoMerge "[cfi] Handle large libraries correctly."
Evgenii Stepanov [Tue, 24 Jan 2017 21:02:40 +0000 (21:02 +0000)]
Merge "[cfi] Handle large libraries correctly."
am: d8388cd303

Change-Id: I3032727f90e26837b69b558551ccd420ae7bc680

7 years agoRevert "Revert "Remove limit of system property name length""
Dimitry Ivanov [Tue, 24 Jan 2017 20:43:29 +0000 (20:43 +0000)]
Revert "Revert "Remove limit of system property name length""

This reverts commit 489f58b5eaedd5a80635bb3a7b39e97037c585f6.
Bug: http://b/33926793
Bug: http://b/34670529
Test: Run bionic-unit-tests --gtest_filter=prop*

Change-Id: Id4e94652dc2310a21f5b7bd3af098bf79df3f380

7 years agoMerge "[cfi] Handle large libraries correctly."
Evgenii Stepanov [Tue, 24 Jan 2017 20:56:28 +0000 (20:56 +0000)]
Merge "[cfi] Handle large libraries correctly."

7 years agoMerge "Revert "Remove limit of system property name length"" am: 40250bb683
Dimitry Ivanov [Tue, 24 Jan 2017 20:07:38 +0000 (20:07 +0000)]
Merge "Revert "Remove limit of system property name length"" am: 40250bb683
am: e3a684f858

Change-Id: Idbd449ff4c4990695a09badc53faab34470f3737

7 years agoMerge "Revert "Remove limit of system property name length""
Dimitry Ivanov [Tue, 24 Jan 2017 20:05:38 +0000 (20:05 +0000)]
Merge "Revert "Remove limit of system property name length""
am: 40250bb683

Change-Id: Ic2565a4ad5d42146378364c06250260ca466cc98

7 years agoMerge "Revert "Remove limit of system property name length""
Dimitry Ivanov [Tue, 24 Jan 2017 20:00:43 +0000 (20:00 +0000)]
Merge "Revert "Remove limit of system property name length""

7 years agoRevert "Remove limit of system property name length"
Dimitry Ivanov [Tue, 24 Jan 2017 18:39:04 +0000 (18:39 +0000)]
Revert "Remove limit of system property name length"

This reverts commit 5c1ce278f31bc6fc338b9b951f1adc7c2b343d7c.
Bug: http://b/33926793
Bug: http://b/34670529

Change-Id: I0dc4a8ae55576c69b34b2958d8e664f7066b9c54

7 years agoMerge "Removed include log\logger.h from log_fake.cpp" am: f0b42ae973
Vijay Venkatraman [Tue, 24 Jan 2017 17:42:50 +0000 (17:42 +0000)]
Merge "Removed include log\logger.h from log_fake.cpp" am: f0b42ae973
am: 6529a136e7

Change-Id: I83bef9a2dca60c16ae8e850db01f4431099ab985

7 years agoMerge "Removed include log\logger.h from log_fake.cpp"
Vijay Venkatraman [Tue, 24 Jan 2017 17:40:50 +0000 (17:40 +0000)]
Merge "Removed include log\logger.h from log_fake.cpp"
am: f0b42ae973

Change-Id: Iba9012e9206234e104c355443803d278a861b336

7 years agoMerge "Removed include log\logger.h from log_fake.cpp"
Vijay Venkatraman [Tue, 24 Jan 2017 17:36:08 +0000 (17:36 +0000)]
Merge "Removed include log\logger.h from log_fake.cpp"

7 years agoMerge "Remove limit of system property name length" am: 440d6c7644
Dimitry Ivanov [Tue, 24 Jan 2017 02:58:21 +0000 (02:58 +0000)]
Merge "Remove limit of system property name length" am: 440d6c7644
am: 87190c845e

Change-Id: I3ba27bdf237f750195ce4829bd5c6181f174000c

7 years agoRemoved include log\logger.h from log_fake.cpp
Vijay Venkatraman [Tue, 24 Jan 2017 02:56:53 +0000 (18:56 -0800)]
Removed include log\logger.h from log_fake.cpp

Test: Compile malloc_debug_unit_tests
Change-Id: I635687016570ba52c571435b87d8e89f7f04d609

7 years agoMerge "Remove limit of system property name length"
Dimitry Ivanov [Tue, 24 Jan 2017 02:56:24 +0000 (02:56 +0000)]
Merge "Remove limit of system property name length"
am: 440d6c7644

Change-Id: I3ff9fb98065166cb53dfe153448e059df9ca6a71

7 years agoMerge "Remove limit of system property name length"
Dimitry Ivanov [Tue, 24 Jan 2017 02:54:33 +0000 (02:54 +0000)]
Merge "Remove limit of system property name length"

7 years agoMerge "Remove libc++ dependency from prebuilt test-libs" am: 8bb01c0719
Dimitry Ivanov [Tue, 24 Jan 2017 00:44:03 +0000 (00:44 +0000)]
Merge "Remove libc++ dependency from prebuilt test-libs" am: 8bb01c0719
am: 865ceb0c1b

Change-Id: If2705b362d4fd2fede3fc7d2f416038da18a2501

7 years agoMerge "Remove libc++ dependency from prebuilt test-libs"
Dimitry Ivanov [Tue, 24 Jan 2017 00:42:31 +0000 (00:42 +0000)]
Merge "Remove libc++ dependency from prebuilt test-libs"
am: 8bb01c0719

Change-Id: I2d28e3f2be50a9726e4712bf7f731c1ecd215e47

7 years agoMerge "Remove libc++ dependency from prebuilt test-libs"
Treehugger Robot [Tue, 24 Jan 2017 00:35:59 +0000 (00:35 +0000)]
Merge "Remove libc++ dependency from prebuilt test-libs"

7 years agoMerge "Mark ifunc tests failing on arm as known failures" am: 3685e4515f
Dimitry Ivanov [Tue, 24 Jan 2017 00:29:01 +0000 (00:29 +0000)]
Merge "Mark ifunc tests failing on arm as known failures" am: 3685e4515f
am: c3f26cb41e

Change-Id: I044b68ab0fa4f22e9263e49d48c390f7ac440fed

7 years agoMerge "Mark ifunc tests failing on arm as known failures"
Dimitry Ivanov [Tue, 24 Jan 2017 00:27:32 +0000 (00:27 +0000)]
Merge "Mark ifunc tests failing on arm as known failures"
am: 3685e4515f

Change-Id: I1bf5509ecb820df66e28aff3b80b8c1cdb857b53

7 years agoMerge "Mark ifunc tests failing on arm as known failures"
Treehugger Robot [Tue, 24 Jan 2017 00:24:40 +0000 (00:24 +0000)]
Merge "Mark ifunc tests failing on arm as known failures"

7 years agoMark ifunc tests failing on arm as known failures
Dimitry Ivanov [Mon, 23 Jan 2017 22:48:21 +0000 (14:48 -0800)]
Mark ifunc tests failing on arm as known failures

Bug: http://b/27930475
Test: run bionic-unit-tests on arm and arm64
Change-Id: I5084b6a5ef4b56ca9985da63a5e6896f771810f0

7 years agoRemove libc++ dependency from prebuilt test-libs
Dimitry Ivanov [Fri, 20 Jan 2017 23:47:03 +0000 (15:47 -0800)]
Remove libc++ dependency from prebuilt test-libs

Bug: http://b/27549327
Test: run bionic-unit-tests --gtest_filter=dl*:Dl* on angler
Change-Id: Ia09ed2c00213bc07bf2a4c772e675419f7a30cb3

7 years agoRemove limit of system property name length
Dimitry Ivanov [Thu, 3 Dec 2015 19:26:38 +0000 (11:26 -0800)]
Remove limit of system property name length

This change introduces new __system_property_read_callback
method to use in place of deprecated __system_property_read
__system_property_set() and get() should just work but now
do not have limit on system property names.

Bug: http://b/33926793
Test: boot device, run adb shell propget
Test: boot device with old version of init (protocol v1)
Test: run bionic-unit-tests --gtest_filter=prop*
Change-Id: I619fb5a7e27a272aac30011579665f6160888bc7

7 years ago[cfi] Handle large libraries correctly.
Evgenii Stepanov [Fri, 20 Jan 2017 21:47:04 +0000 (13:47 -0800)]
[cfi] Handle large libraries correctly.

Fallback to unchecked if the shadow offset overflows int16_t.
This may happen when a library's data segment is larger than 256MB.

Also updated some comments.

Bug: 22033465
Test: bionic device tests

Change-Id: I8eef42f75099f24aed566499ff1731a0bbf01ff3

7 years agoMerge "Add props files for each partition" am: 7844b4c5db
Jaekyun Seok [Fri, 20 Jan 2017 04:05:47 +0000 (04:05 +0000)]
Merge "Add props files for each partition" am: 7844b4c5db
am: 291192fb15

Change-Id: I6dd5a0cc06c8e5f7c5d8cb1177e24aba114bd8f2

7 years agoMerge "Add props files for each partition"
Jaekyun Seok [Fri, 20 Jan 2017 04:02:14 +0000 (04:02 +0000)]
Merge "Add props files for each partition"
am: 7844b4c5db

Change-Id: I25c7789f689e3aadcca99e5fd8a6908db9bc57d2

7 years agoMerge "Add props files for each partition"
Treehugger Robot [Fri, 20 Jan 2017 03:58:51 +0000 (03:58 +0000)]
Merge "Add props files for each partition"

7 years agoAdd props files for each partition
Jaekyun Seok [Tue, 17 Jan 2017 05:44:31 +0000 (14:44 +0900)]
Add props files for each partition

The following files will be added.
- /vendor/default.prop for default prop overrides from vendor
 partition.
- /odm/default.prop for default prop overrides from odm partition.
- /odm/build.prop for build prop overrides from odm partition.

Test: tested default/build prop files with enabling early mount, but
didn't test files of odm partition because odm partition doesn't
exist now.
Bug: 34116668
Change-Id: Ia99895a0afcdc522463d95b2f3e2841dcf2e3516

7 years agoMerge "Add seccomp support library" am: ad3b3995e7
Paul Lawrence [Thu, 19 Jan 2017 23:32:59 +0000 (23:32 +0000)]
Merge "Add seccomp support library" am: ad3b3995e7
am: 9ef18d5752

Change-Id: I07efd9bf2dc2e9c040a51265d5be6d6e8ad5c779

7 years agoMerge "Add seccomp support library"
Paul Lawrence [Thu, 19 Jan 2017 23:30:28 +0000 (23:30 +0000)]
Merge "Add seccomp support library"
am: ad3b3995e7

Change-Id: I1115c8c39de622d594447a56d2cd0893991effac

7 years agoMerge "Add seccomp support library"
Treehugger Robot [Thu, 19 Jan 2017 23:26:09 +0000 (23:26 +0000)]
Merge "Add seccomp support library"

7 years agoAdd seccomp support library
Paul Lawrence [Fri, 11 Nov 2016 19:33:42 +0000 (11:33 -0800)]
Add seccomp support library

Policy library which exports an autogenerated policy from SYSCALLS.TXT
blocking any other calls.

Test: Generate policy, install onto Sailfish, check boots, Chrome runs,
calls are blocked.
Bug: 32313202

Change-Id: Ib590704e50122f077eeae26561eb9b0a70386551

7 years agoMerge "Runtime support for CFI" am: 082bec5b41
Evgenii Stepanov [Wed, 18 Jan 2017 23:54:34 +0000 (23:54 +0000)]
Merge "Runtime support for CFI" am: 082bec5b41
am: adcec1585b

Change-Id: I4eafd03da458f1672991fe14dfa71667ae2bc686

7 years agoMerge changes from topic 'kill_debuggerd' am: 2d261e8e9e
Josh Gao [Wed, 18 Jan 2017 23:54:24 +0000 (23:54 +0000)]
Merge changes from topic 'kill_debuggerd' am: 2d261e8e9e
am: 05ad7e11be

Change-Id: If272e532157203faf8750454c94eb0058c2a145d

7 years agoMerge "Runtime support for CFI"
Evgenii Stepanov [Wed, 18 Jan 2017 23:45:54 +0000 (23:45 +0000)]
Merge "Runtime support for CFI"
am: 082bec5b41

Change-Id: I47ea89f7161ff7c00a89a291ba7386c2b6f5c191

7 years agoRename libdebuggerd_client to libdebuggerd_handler. am: 2a3b4fa6ec
Josh Gao [Wed, 18 Jan 2017 23:42:31 +0000 (23:42 +0000)]
Rename libdebuggerd_client to libdebuggerd_handler. am: 2a3b4fa6ec
am: 3560ff90f0

Change-Id: I454eceb8b3507581bda6901349940fc201467d02

7 years agoReserve a realtime signal for debuggerd. am: f8a6d4745d
Josh Gao [Wed, 18 Jan 2017 23:42:24 +0000 (23:42 +0000)]
Reserve a realtime signal for debuggerd. am: f8a6d4745d
am: 3d8c6aa3a1

Change-Id: I24d59d8b77a8df6658637ae44afc2af5bc109f5c

7 years agoMerge "Runtime support for CFI"
Evgenii Stepanov [Wed, 18 Jan 2017 23:39:07 +0000 (23:39 +0000)]
Merge "Runtime support for CFI"

7 years agoMerge changes from topic 'kill_debuggerd'
Josh Gao [Wed, 18 Jan 2017 23:25:03 +0000 (23:25 +0000)]
Merge changes from topic 'kill_debuggerd'
am: 2d261e8e9e

Change-Id: Ibec7e7093bbe580cc126225c2f2d1f280de51a43

7 years agoRename libdebuggerd_client to libdebuggerd_handler.
Josh Gao [Wed, 18 Jan 2017 23:16:47 +0000 (23:16 +0000)]
Rename libdebuggerd_client to libdebuggerd_handler.
am: 2a3b4fa6ec

Change-Id: Iac8466c0995571ce51a81f903903115442f5bc17

7 years agoReserve a realtime signal for debuggerd.
Josh Gao [Wed, 18 Jan 2017 23:16:39 +0000 (23:16 +0000)]
Reserve a realtime signal for debuggerd.
am: f8a6d4745d

Change-Id: If7eced969434e50beec04625c905ef374cdcdfb1

7 years agoMerge changes from topic 'kill_debuggerd'
Josh Gao [Wed, 18 Jan 2017 23:04:08 +0000 (23:04 +0000)]
Merge changes from topic 'kill_debuggerd'

* changes:
  Rename libdebuggerd_client to libdebuggerd_handler.
  Reserve a realtime signal for debuggerd.

7 years agoRuntime support for CFI
Evgenii Stepanov [Wed, 6 Jul 2016 20:20:59 +0000 (13:20 -0700)]
Runtime support for CFI

Control Flow Integrity support in bionic.

General design:
http://clang.llvm.org/docs/ControlFlowIntegrityDesign.html#shared-library-support

This CL implements subsections "CFI Shadow" and "CFI_SlowPath" in the above document.

Bug: 22033465
Test: bionic device tests
Change-Id: I14dfea630de468eb5620e7f55f92b1397ba06217

7 years agoMerge "Declare dependency on android_filesystem_config.h" am: 2f238b32cd
Colin Cross [Wed, 18 Jan 2017 17:06:18 +0000 (17:06 +0000)]
Merge "Declare dependency on android_filesystem_config.h" am: 2f238b32cd
am: 5b91973fb7

Change-Id: I4ede35c4deab0b6cbe59a958633ac89b4cee0204

7 years agoMerge "Declare dependency on android_filesystem_config.h"
Colin Cross [Wed, 18 Jan 2017 16:59:52 +0000 (16:59 +0000)]
Merge "Declare dependency on android_filesystem_config.h"
am: 2f238b32cd

Change-Id: Ia69ebf6c7d1aeefc61ff301197d3d994a009b477

7 years agoMerge "Declare dependency on android_filesystem_config.h"
Colin Cross [Wed, 18 Jan 2017 16:53:25 +0000 (16:53 +0000)]
Merge "Declare dependency on android_filesystem_config.h"

7 years agoMerge "Revert "property_contexts: split into platform and non-platform components...
Jorim Jaggi [Wed, 18 Jan 2017 16:53:16 +0000 (16:53 +0000)]
Merge "Revert "property_contexts: split into platform and non-platform components"" am: dbfa1bd292
am: e6a17b4baf

Change-Id: I3124b8b82cf42f116322082d53462863a97cca09

7 years agoRevert "property_contexts: split into platform and non-platform components" am: e2f5e...
Jorim Jaggi [Wed, 18 Jan 2017 16:47:36 +0000 (16:47 +0000)]
Revert "property_contexts: split into platform and non-platform components" am: e2f5ea14c5
am: 860a1db8fd

Change-Id: I98f7277d7f8e4f3eb6474ec62f82a80fbf63f1b4

7 years agoMerge "Revert "property_contexts: split into platform and non-platform components""
Jorim Jaggi [Wed, 18 Jan 2017 16:47:31 +0000 (16:47 +0000)]
Merge "Revert "property_contexts: split into platform and non-platform components""
am: dbfa1bd292

Change-Id: I7279216d6987fa853ee759997e2c571fc01ce5ed

7 years agoRevert "property_contexts: split into platform and non-platform components"
Jorim Jaggi [Wed, 18 Jan 2017 16:41:36 +0000 (16:41 +0000)]
Revert "property_contexts: split into platform and non-platform components"
am: e2f5ea14c5

Change-Id: I9a794b93b077791ce46016cb9f8965a52c98b88e

7 years agoMerge "Revert "property_contexts: split into platform and non-platform components""
Jorim Jaggi [Wed, 18 Jan 2017 16:33:31 +0000 (16:33 +0000)]
Merge "Revert "property_contexts: split into platform and non-platform components""

7 years agoRevert "property_contexts: split into platform and non-platform components"
Jorim Jaggi [Wed, 18 Jan 2017 15:37:18 +0000 (15:37 +0000)]
Revert "property_contexts: split into platform and non-platform components"

This reverts commit 8213615461f7d39620e44f73980acc6107c76ac7.

Change-Id: Id2982eafadc5d1c307b60c1f8abe78df8dc8b82e

7 years agoMerge "property_contexts: split into platform and non-platform components" am: 0b6d0a8b38
Sandeep Patil [Wed, 18 Jan 2017 06:21:38 +0000 (06:21 +0000)]
Merge "property_contexts: split into platform and non-platform components" am: 0b6d0a8b38
am: dbfa403a75

Change-Id: I66db487ba16d0fcad7a5c67385c69de05419e07f

7 years agoproperty_contexts: split into platform and non-platform components am: 8213615461
Sandeep Patil [Wed, 18 Jan 2017 06:16:51 +0000 (06:16 +0000)]
property_contexts: split into platform and non-platform components am: 8213615461
am: 045ba4b249

Change-Id: Ie92f9de186e3ff723e67ee17f4d6224569dee65f

7 years agoMerge "property_contexts: split into platform and non-platform components"
Sandeep Patil [Wed, 18 Jan 2017 06:16:50 +0000 (06:16 +0000)]
Merge "property_contexts: split into platform and non-platform components"
am: 0b6d0a8b38

Change-Id: I10c9caa9f85f21e681b8ab02cd3ea5e8ef489eb0

7 years agoproperty_contexts: split into platform and non-platform components
Sandeep Patil [Wed, 18 Jan 2017 06:12:19 +0000 (06:12 +0000)]
property_contexts: split into platform and non-platform components
am: 8213615461

Change-Id: Ifa1bb1e295cef8ecf74a4a4702114a88f3e6859e

7 years agoMerge "property_contexts: split into platform and non-platform components"
Treehugger Robot [Wed, 18 Jan 2017 06:09:02 +0000 (06:09 +0000)]
Merge "property_contexts: split into platform and non-platform components"

7 years agoDeclare dependency on android_filesystem_config.h
Colin Cross [Wed, 18 Jan 2017 02:16:07 +0000 (18:16 -0800)]
Declare dependency on android_filesystem_config.h

android_filesystem_config.h comes from a directory outside bionic/libc
so it can't be referenced directly, add it as a source file through
a filegroup module.

Bug: 34283327
Test: builds
Test: libc rebuilds after touch system/core/include/private/android_filesystem_config.h
Change-Id: I90f6b7b25b70842b8619d558074449f13e6e6b03

7 years agoRename libdebuggerd_client to libdebuggerd_handler.
Josh Gao [Thu, 27 Oct 2016 00:55:49 +0000 (17:55 -0700)]
Rename libdebuggerd_client to libdebuggerd_handler.

Bug: http://b/30705528
Test: debuggerd_test
Change-Id: I625a9a2e7304d172873ba9344b74efa57ad7bdad

7 years agoReserve a realtime signal for debuggerd.
Josh Gao [Wed, 26 Oct 2016 20:27:19 +0000 (13:27 -0700)]
Reserve a realtime signal for debuggerd.

Allocate __SIGRTMIN + 3 for triggering native stack dumps (like SIGQUIT
for Java processes).

Bug: http://b/30705528
Test: debuggerd_test
Change-Id: I81d622fba32a651555268a8a2ba6721c61c93a58

7 years agoMerge "linker: convert 'mov pc' instruction to 'bx'" am: 8d0e0d4952
Elliott Hughes [Sat, 14 Jan 2017 18:38:50 +0000 (18:38 +0000)]
Merge "linker: convert 'mov pc' instruction to 'bx'" am: 8d0e0d4952
am: 3fecb76551

Change-Id: Ia0d5a55bfbf555b17e56167ffc53d291d8397bbc

7 years agoMerge "linker: convert 'mov pc' instruction to 'bx'"
Elliott Hughes [Sat, 14 Jan 2017 18:35:50 +0000 (18:35 +0000)]
Merge "linker: convert 'mov pc' instruction to 'bx'"
am: 8d0e0d4952

Change-Id: I8664911d4c068c9c719f85e44b7a5ac99670581f

7 years agoMerge "linker: convert 'mov pc' instruction to 'bx'"
Elliott Hughes [Sat, 14 Jan 2017 18:30:09 +0000 (18:30 +0000)]
Merge "linker: convert 'mov pc' instruction to 'bx'"

7 years agolinker: convert 'mov pc' instruction to 'bx'
Park Ju Hyung [Thu, 12 Jan 2017 20:52:06 +0000 (05:52 +0900)]
linker: convert 'mov pc' instruction to 'bx'

From Linux 3.17 6ebbf2ce437b33022d30badd49dc94d33ecfa498:

    ARMv6 and greater introduced a new instruction ("bx") which can be used
    to return from function calls.  Recent CPUs perform better when the
    "bx lr" instruction is used rather than the "mov pc, lr" instruction,
    and this sequence is strongly recommended to be used by the ARM
    architecture manual (section A.4.1.1).

Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com>
Test: No regressions detected
Test: Passes full CTS run

Change-Id: Ie268f9893e3df0f68fbfe82a13f3c7cc5c5909d8
Signed-off-by: Alex Naidis <alex.naidis@linux.com>
7 years agoMerge "Switch bionic-unit-tests to libc++_static." am: 37f1d11482
Yabin Cui [Sat, 14 Jan 2017 02:27:04 +0000 (02:27 +0000)]
Merge "Switch bionic-unit-tests to libc++_static." am: 37f1d11482
am: 820c7fae07

Change-Id: I2cff12af37fa0888246498c91deda74cd92e4d1a

7 years agoMerge "Switch bionic-unit-tests to libc++_static."
Yabin Cui [Sat, 14 Jan 2017 02:24:35 +0000 (02:24 +0000)]
Merge "Switch bionic-unit-tests to libc++_static."
am: 37f1d11482

Change-Id: Ie427d277e5f1997a170e90cf98846cf1244d7a84

7 years agoMerge "Switch bionic-unit-tests to libc++_static."
Yabin Cui [Sat, 14 Jan 2017 02:20:19 +0000 (02:20 +0000)]
Merge "Switch bionic-unit-tests to libc++_static."

7 years agoMerge "Describe our dynamic linker compatibility policy." am: 98d200899b
Elliott Hughes [Fri, 13 Jan 2017 21:18:29 +0000 (21:18 +0000)]
Merge "Describe our dynamic linker compatibility policy." am: 98d200899b
am: b74e48c4d6

Change-Id: Id608d6597a29a6a16224bb865364e8393d570e60

7 years agoMerge "Describe our dynamic linker compatibility policy."
Elliott Hughes [Fri, 13 Jan 2017 21:16:00 +0000 (21:16 +0000)]
Merge "Describe our dynamic linker compatibility policy."
am: 98d200899b

Change-Id: I247f8d16edb201e251670e699a3a16244a4e510e

7 years agoMerge "Describe our dynamic linker compatibility policy."
Elliott Hughes [Fri, 13 Jan 2017 21:12:14 +0000 (21:12 +0000)]
Merge "Describe our dynamic linker compatibility policy."

7 years agoSwitch bionic-unit-tests to libc++_static.
Yabin Cui [Fri, 13 Jan 2017 20:31:59 +0000 (12:31 -0800)]
Switch bionic-unit-tests to libc++_static.

Bug: http://b/27549327
Test: run bionic-unit-tests, bionic-unit-tests-glibc.
Change-Id: I719899624dec83728a3d5b8169079e5c91c63c04

7 years agoDescribe our dynamic linker compatibility policy.
Elliott Hughes [Fri, 13 Jan 2017 19:07:00 +0000 (11:07 -0800)]
Describe our dynamic linker compatibility policy.

Bug: N/A
Test: N/A
Change-Id: I6f472d1ab22636de74fd103e9a480fb1ab51e314

7 years agoMerge "Beef up process_vm_readv/writev tests" am: a970ac50d1
Pavel Labath [Fri, 13 Jan 2017 10:27:15 +0000 (10:27 +0000)]
Merge "Beef up process_vm_readv/writev tests" am: a970ac50d1
am: 8557ee78ec

Change-Id: I8bfb670a70fcd1f9c46525388a0d5a814a02777e

7 years agoMerge "Beef up process_vm_readv/writev tests"
Pavel Labath [Fri, 13 Jan 2017 10:24:46 +0000 (10:24 +0000)]
Merge "Beef up process_vm_readv/writev tests"
am: a970ac50d1

Change-Id: Ic1628705232788fdd871c0e91afe933707a15169

7 years agoMerge "Beef up process_vm_readv/writev tests"
Pavel Labath [Fri, 13 Jan 2017 10:21:31 +0000 (10:21 +0000)]
Merge "Beef up process_vm_readv/writev tests"

7 years agoBeef up process_vm_readv/writev tests
Pavel Labath [Thu, 12 Jan 2017 11:56:39 +0000 (11:56 +0000)]
Beef up process_vm_readv/writev tests

LLDB uses process_vm_readv quite extensively (it's an order of
magnitude faster than PTRACE_PEEKDATA). Add a bit more tests of
the function to make sure it stays working.

Change-Id: I64e17e6d56842f118a9485e3a18f42ca5e1b7577
Test: run the new test

7 years agoMerge "localtime_r(3) should act as if it calls tzset(3)." am: 1b2975d54b
Elliott Hughes [Thu, 12 Jan 2017 23:28:04 +0000 (23:28 +0000)]
Merge "localtime_r(3) should act as if it calls tzset(3)." am: 1b2975d54b
am: e767a92c57

Change-Id: I16eed5cb28e1df287f748d0028f8198f2861b428

7 years agoMerge "localtime_r(3) should act as if it calls tzset(3)."
Elliott Hughes [Thu, 12 Jan 2017 23:23:34 +0000 (23:23 +0000)]
Merge "localtime_r(3) should act as if it calls tzset(3)."
am: 1b2975d54b

Change-Id: I85c99ed325efbd119b5a7513b4cd997f9dc6b5aa

7 years agoMerge "localtime_r(3) should act as if it calls tzset(3)."
Elliott Hughes [Thu, 12 Jan 2017 23:19:50 +0000 (23:19 +0000)]
Merge "localtime_r(3) should act as if it calls tzset(3)."

7 years agoFix streaming(memcpy) performance on Cortex-A7
Chitti Babu Theegala [Thu, 12 Jan 2017 18:44:16 +0000 (18:44 +0000)]
Fix streaming(memcpy) performance on Cortex-A7
am: b7ec7cac7d

Change-Id: Ie82fd9c00bf072252e6b5a3e42a36a01531bb489

7 years agoAdd cortex-a7 specific routines.
Christopher Ferris [Thu, 12 Jan 2017 18:44:13 +0000 (18:44 +0000)]
Add cortex-a7 specific routines.
am: 8402b42312  -s ours

Change-Id: I4e2e7919270dc41365a64c4afa2f1d923b9407bb

7 years agoMerge "Improve fmemopen tests." am: 27fa754287
Josh Gao [Thu, 12 Jan 2017 00:14:54 +0000 (00:14 +0000)]
Merge "Improve fmemopen tests." am: 27fa754287
am: bbacec3f5d

Change-Id: I9a4fd254094c06efa21a0808b3c2ae73bfcc9e97

7 years agoMerge "Improve fmemopen tests."
Josh Gao [Thu, 12 Jan 2017 00:09:24 +0000 (00:09 +0000)]
Merge "Improve fmemopen tests."
am: 27fa754287

Change-Id: Ie62d2d2850fc4dee566317d5e0fcde54693694a1

7 years agoFix streaming(memcpy) performance on Cortex-A7
Chitti Babu Theegala [Thu, 15 Dec 2016 20:43:28 +0000 (02:13 +0530)]
Fix streaming(memcpy) performance on Cortex-A7

Stream-mode detection for L1 in A7-core is failing for
non cache-line-size (non 64 byte) aligned addresses.
This leads to destination data getting cached unnecessarily.
This A7 issue is confirmed by ARM

This issue is solved by aligning destination address to 64 byte before
entering the loop in memcpy routine.
Though we get lower score for micro_bench memcpy when L1 cache is bypassed,
it is desirable since it avoids unnecessary eviction of other process data
from L1 which is good for overall system performance.

Higher micro_bench memcpy numbers for < 64byte alignment shows good numbers
but this is at the cost of L1 cache pollution. During memcpy/memset,
unnecessary data is filled in L1 cache, this causes eviction of other
process data from L1.
For example during msmset(0), L1 cache gets filled with 0s which should be
avoided.

Additionally, there is another issue with cortex A7 that impacts performance
for all alignments / all Android Wear versions:
Store Buffer on A7 is 32 byte which limits the 32-byte back to back stores.
In the current implementation back to back 32bytes writes is causing CPU stalls.
This issue can be solved by interleaved Loads and Stores.
This helps in avoiding CPU stalls during memcpy by utilizing efficiently the
A7 internal load and store buffers.

Bug: 31917556

Change-Id: Ie5f12f2bb5d86f627686730416279057e4f5f6d0
(cherry picked from commit cbfdc7f9054e0bc8071aaf3a70afc00273a8a869)

7 years agoMerge "Improve fmemopen tests."
Josh Gao [Wed, 11 Jan 2017 23:59:01 +0000 (23:59 +0000)]
Merge "Improve fmemopen tests."

7 years agolocaltime_r(3) should act as if it calls tzset(3).
Elliott Hughes [Wed, 11 Jan 2017 22:34:16 +0000 (14:34 -0800)]
localtime_r(3) should act as if it calls tzset(3).

See code comment.

Bug: http://b/31339449
Test: ran tests & benchmarks
Change-Id: I6b6a63750ef41664dc4698207e6a53e77cc28cdf

7 years agoMerge "Add support for expected failures to gtest runner." am: 94ea19895c
Josh Gao [Wed, 11 Jan 2017 22:43:36 +0000 (22:43 +0000)]
Merge "Add support for expected failures to gtest runner." am: 94ea19895c
am: 6b767b91cc

Change-Id: I792f935c1e7571ad7ccd8c904fe0d310d6ae08ab

7 years agoMerge "Add support for expected failures to gtest runner."
Josh Gao [Wed, 11 Jan 2017 22:38:08 +0000 (22:38 +0000)]
Merge "Add support for expected failures to gtest runner."
am: 94ea19895c

Change-Id: I91e4f3673d6715326a2f1a43937343e59e15048c

7 years agoMerge "Add support for expected failures to gtest runner."
Treehugger Robot [Wed, 11 Jan 2017 22:32:17 +0000 (22:32 +0000)]
Merge "Add support for expected failures to gtest runner."

7 years agoImprove fmemopen tests.
Josh Gao [Tue, 10 Jan 2017 21:00:37 +0000 (13:00 -0800)]
Improve fmemopen tests.

Tag fmemopen_NULL as a known failure, and make it reliably fail by
memsetting the buffer we read to.

Bug: http://b/33251022
Test: bionic-unit-tests/bionic-unit-tests64 on bullhead
Test: bionic-unit-tests-glibc --gtest_filter="*memopen*"
Change-Id: I381783282359851c9de47146dafbb5a291960c2a

7 years agoMerge "Hide __system_property_add/update, deprecate find_nth" am: 907fcc98b2
Dimitry Ivanov [Wed, 11 Jan 2017 02:08:21 +0000 (02:08 +0000)]
Merge "Hide __system_property_add/update, deprecate find_nth" am: 907fcc98b2
am: ee062c3577

Change-Id: Ife3992252e7d979772126ee806fdd3f2957508a1

7 years agoMerge "Hide __system_property_add/update, deprecate find_nth"
Dimitry Ivanov [Wed, 11 Jan 2017 02:03:20 +0000 (02:03 +0000)]
Merge "Hide __system_property_add/update, deprecate find_nth"
am: 907fcc98b2

Change-Id: I68bbcf32432de9dba91116faae981701e122dbaa

7 years agoMerge "Hide __system_property_add/update, deprecate find_nth"
Treehugger Robot [Wed, 11 Jan 2017 01:57:56 +0000 (01:57 +0000)]
Merge "Hide __system_property_add/update, deprecate find_nth"

7 years agoHide __system_property_add/update, deprecate find_nth
Dimitry Ivanov [Mon, 9 Jan 2017 19:05:52 +0000 (11:05 -0800)]
Hide __system_property_add/update, deprecate find_nth

These functions are supposed to be used only by the
property service.

__system_property_find_nth is deprecated and no longer part
of NDK. Call to this function will result in abort for apps
targeting Android O.

Bug: http://b/34114501
Test: bionic-unit-tests --gtest_filter=prop*
Change-Id: I9846965bf248e2ddf45cd7b293618245bbd87145