OSDN Git Service

android-x86/bionic.git
8 years agolinker: Improve elf-file validation
Dimitry Ivanov [Thu, 14 Jul 2016 00:06:36 +0000 (17:06 -0700)]
linker: Improve elf-file validation

1. Make sure that the .dynamic section offset and size matches
   PT_DYNAMIC segment offset and filesz
2. No section offset can be 0

Bug: http://b/16548758
Bug: http://b/29637134
Change-Id: I11bc2567b0cff89f48699ec74015991fee5b137b
Test: Install and start the app from http://b/29637134

8 years agoMerge "Use trivial types to avoid calls to new for globals"
Dimitry Ivanov [Wed, 13 Jul 2016 18:45:00 +0000 (18:45 +0000)]
Merge "Use trivial types to avoid calls to new for globals"

8 years agoUse trivial types to avoid calls to new for globals
Dimitry Ivanov [Wed, 13 Jul 2016 17:24:06 +0000 (10:24 -0700)]
Use trivial types to avoid calls to new for globals

To avoid initialization ordering problem avoid constructing
non-trivial global objects for linker_logger.

This patch also adds explicit check for bloc_size_ on alloc

Change-Id: I2cb3b13a10b7fac1f52a20038af77266d3e1da96

8 years agoMerge "linker: Enable debug logging via properties"
Treehugger Robot [Tue, 12 Jul 2016 22:27:19 +0000 (22:27 +0000)]
Merge "linker: Enable debug logging via properties"

8 years agolinker: Enable debug logging via properties
Dimitry Ivanov [Tue, 12 Jul 2016 01:11:39 +0000 (18:11 -0700)]
linker: Enable debug logging via properties

This patch lets developers tune logging of dlopen/dlerror with
setting system property.

Note that for security purposes this option is disabled on user build
for non-debuggable apps.

For starters there are 3 debug options:
 dlerror - enables logging of all dlerrors
 dlopen - traces dlopen calls

To enable system-wide logging (works only for userdebug/eng builds)
use debug.ld.all property.

To enable logging for particular app use debug.ld.app.<appname> property.

Example: Running "adb shell setprop debug.ld.all dlerror,dlopen" will log all
dlerror message as well as trace all calls to dlopen.

Bug: http://b/29458203
Change-Id: I2392c80a795509e16fe5689d0500d18b99772a64

8 years agoMerge "Rename Android.soong.mk to Android.mk"
Colin Cross [Tue, 12 Jul 2016 16:15:53 +0000 (16:15 +0000)]
Merge "Rename Android.soong.mk to Android.mk"

8 years agoRename Android.soong.mk to Android.mk
Colin Cross [Mon, 11 Jul 2016 23:54:20 +0000 (16:54 -0700)]
Rename Android.soong.mk to Android.mk

Soong is always on now, so we don't have to distinguish between
makefiles that should be ignored because Soong is handling them with an
Android.bp file, and makefiles that are still needed with Soong.  All
obsolete Android.mk files have been removed, rename all Android.soong.mk
files to Android.mk.

Change-Id: Ic0494e1800dec13a9f5714559cffe3a5ebe49418

8 years agoMerge "Update the kernel header documentation."
Christopher Ferris [Fri, 8 Jul 2016 22:31:14 +0000 (22:31 +0000)]
Merge "Update the kernel header documentation."

8 years agoUpdate the kernel header documentation.
Christopher Ferris [Fri, 8 Jul 2016 22:25:21 +0000 (15:25 -0700)]
Update the kernel header documentation.

Change the references to using the android kernel source, to use
the linux stable source code repository.

Change-Id: Ibc6c90fc67c80bef235459bb3af31656f4d403ac

8 years agoMerge "Add the record alloc option."
Treehugger Robot [Fri, 8 Jul 2016 21:59:18 +0000 (21:59 +0000)]
Merge "Add the record alloc option."

8 years agoAdd the record alloc option.
Christopher Ferris [Wed, 20 Apr 2016 19:30:58 +0000 (12:30 -0700)]
Add the record alloc option.

This option adds the ability to record all of the allocation requests
and dump them to a file when a signal is sent to the process.

Included in this change, redo the option processing to add a new
string option.

Bug: 27747898

Change-Id: Ida043362e38b5eb1d459c99db9c2581015dab366

8 years agoMerge "Update timezone data to 2016f"
Neil Fuller [Thu, 7 Jul 2016 12:57:02 +0000 (12:57 +0000)]
Merge "Update timezone data to 2016f"

8 years agoUpdate timezone data to 2016f
Neil Fuller [Wed, 6 Jul 2016 14:26:15 +0000 (15:26 +0100)]
Update timezone data to 2016f

The 2016f release of the tz code and data is available. It reflects the
following changes, which were either circulated on the tz mailing list
or are relatively minor technical or administrative changes:

   Changes affecting future time stamps

     The Egyptian government changed its mind on short notice, and
     Africa/Cairo will not introduce DST starting 2016-07-07 after all.
     (Thanks to Mina Samuel.)

     Asia/Novosibirsk switches from +06 to +07 on 2016-07-24 at 02:00.
     (Thanks to Stepan Golosunov.)

   Changes to past and future time stamps

     Asia/Novokuznetsk and Asia/Novosibirsk now use numeric time zone
     abbreviations instead of invented ones.

   Changes affecting past time stamps

     Europe/Minsk's 1992-03-29 spring-forward transition was at 02:00
not 00:00.
     (Thanks to Stepan Golosunov.)

Note: Paul Eggert changed the key used to sign the tzdata bundle and
the new public key cannot be found. The changes to the data since
2016e have been verified visually.

Change-Id: I11b49d9916e67313978fd893acf091e9f99f6d33
Test: Ran CTS/android.core.tests.libcore.package.harmony_java_util
Test: Ran CTS/android.core.tests.libcore.package.harmony_java_text
Test: Ran CTS/android.core.tests.libcore.package.libcore
Bug: 29991153

8 years agoMerge "x86-64's va_list is not a pointer type."
Elliott Hughes [Thu, 30 Jun 2016 20:48:04 +0000 (20:48 +0000)]
Merge "x86-64's va_list is not a pointer type."

8 years agox86-64's va_list is not a pointer type.
Elliott Hughes [Thu, 30 Jun 2016 20:47:16 +0000 (13:47 -0700)]
x86-64's va_list is not a pointer type.

Change-Id: I680feeb641d5411ac481daaae6fa1580e74c5563

8 years agoMerge "Revert "Skip Clang's integrated-as for hand-coded assembly""
Treehugger Robot [Thu, 30 Jun 2016 20:33:41 +0000 (20:33 +0000)]
Merge "Revert "Skip Clang's integrated-as for hand-coded assembly""

8 years agoMerge "Apparently mips and x86's va_list is a pointer type."
Elliott Hughes [Thu, 30 Jun 2016 19:48:19 +0000 (19:48 +0000)]
Merge "Apparently mips and x86's va_list is a pointer type."

8 years agoApparently mips and x86's va_list is a pointer type.
Elliott Hughes [Thu, 30 Jun 2016 19:46:21 +0000 (12:46 -0700)]
Apparently mips and x86's va_list is a pointer type.

And clang won't let you have a function declaration where some arguments
have nullability specifiers and others don't.

Change-Id: I450b0221a3f7f068d5fe971dfbc0ba91d25710e8

8 years agoMerge "Remove __nonnull (in favor of _Nonnull)."
Treehugger Robot [Thu, 30 Jun 2016 18:04:38 +0000 (18:04 +0000)]
Merge "Remove __nonnull (in favor of _Nonnull)."

8 years agoRemove __nonnull (in favor of _Nonnull).
Elliott Hughes [Thu, 30 Jun 2016 16:12:40 +0000 (09:12 -0700)]
Remove __nonnull (in favor of _Nonnull).

It's a dangerous pain in the ass, and we're only using it in one place, and
that's a mistake too.

Change-Id: Ida1d1286aaa1343bdee95fa092fcb45ff3258f77

8 years agoRevert "Skip Clang's integrated-as for hand-coded assembly"
Pirama Arumuga Nainar [Thu, 30 Jun 2016 00:16:54 +0000 (00:16 +0000)]
Revert "Skip Clang's integrated-as for hand-coded assembly"

This reverts commit 8d414dd2b1d9503f6d4b3d9310796be50a824ede.

Reverting this since https://android-review.googlesource.com/#/c/244800/ adds -fno-integrated-as globally.

Change-Id: I29f53a385c16f44ead5dc744b0f2dd18a4af1731

8 years agoMerge changes I98c9329f,I40936f7b,I09d20ff1
Treehugger Robot [Wed, 29 Jun 2016 21:45:34 +0000 (21:45 +0000)]
Merge changes I98c9329f,I40936f7b,I09d20ff1

* changes:
  Defer registration of the arc4random fork-detect handler.
  Make getpid work before the main thread is initialized.
  Take the arc4random lock before forking.

8 years agoDefer registration of the arc4random fork-detect handler.
Josh Gao [Fri, 24 Jun 2016 23:18:21 +0000 (16:18 -0700)]
Defer registration of the arc4random fork-detect handler.

Previously, arc4random would register a fork-detecting pthread_atfork
handler to not have to call getpid() after a fork. pthread_atfork uses
pthread_mutex_lock, which requires the current thread to be initialized,
preventing the use of arc4random for initializing the global stack guard,
which needs to happen before the main thread has been initialized.

Extract the arc4random fork-detection flag and use the existing
arc4random fork handler to set it.

Bug: http://b/29622562
Change-Id: I98c9329fa0e489c3f78cad52747eaaf2f5226b80

8 years agoMake getpid work before the main thread is initialized.
Josh Gao [Fri, 24 Jun 2016 23:13:33 +0000 (16:13 -0700)]
Make getpid work before the main thread is initialized.

Bug: http://b/29622562
Test: code dependent on this change no longer crashes
Change-Id: I40936f7b35d9e58182aeb2e34e52f54088700825

8 years agoTake the arc4random lock before forking.
Josh Gao [Fri, 24 Jun 2016 20:04:09 +0000 (13:04 -0700)]
Take the arc4random lock before forking.

Bug: http://b/24675038
Test: stepped through a fork call in gdb
Change-Id: I09d20ff1d103d0c005f2a0cdd9b0a8710ab2392c

8 years agoMerge "Skip Clang's integrated-as for hand-coded assembly"
Treehugger Robot [Mon, 27 Jun 2016 22:39:48 +0000 (22:39 +0000)]
Merge "Skip Clang's integrated-as for hand-coded assembly"

8 years agoSkip Clang's integrated-as for hand-coded assembly
Pirama Arumuga Nainar [Sat, 25 Jun 2016 19:53:06 +0000 (12:53 -0700)]
Skip Clang's integrated-as for hand-coded assembly

Bug: http://b/28149048
Bug: http://b/29771478

Clang recently switched to using integrated assembler for Mips.
However, it fails to compile some of the hand-coded assembly files in
bionic.  Disable integrated-as for the time being.

Change-Id: I2eed4391f6827224da74383387bdd9105de5a857

8 years agoMerge "Update timezone data to 2016e"
Neil Fuller [Fri, 24 Jun 2016 09:02:03 +0000 (09:02 +0000)]
Merge "Update timezone data to 2016e"

8 years agoUpdate timezone data to 2016e
Neil Fuller [Wed, 15 Jun 2016 13:55:44 +0000 (14:55 +0100)]
Update timezone data to 2016e

  Changes affecting future time stamps

    Africa/Cairo observes DST in 2016 from July 7 to the end of October.
    Guess October 27 and 24:00 transitions. (Thanks to Steffen Thorsen.)
    For future years, guess April's last Thursday to October's last
    Thursday except for Ramadan.

  Changes affecting past time stamps

    Locations while uninhabited now use '-00', not 'zzz', as a
    placeholder time zone abbreviation.  This is inspired by Internet
    RFC 3339 and is more consistent with numeric time zone
    abbreviations already used elsewhere.  The change affects several
    arctic and antarctic locations, e.g., America/Cambridge_Bay before
    1920 and Antarctica/Troll before 2005.

    Asia/Baku's 1992-09-27 transition from +04 (DST) to +04 (non-DST) was
    at 03:00, not 23:00 the previous day.  (Thanks to Michael Deckers.)

Bug: 29354265
Test: Ran CTS/android.core.tests.libcore.package.harmony_java_util
Test: Ran CTS/android.core.tests.libcore.package.harmony_java_text
Test: Ran CTS/android.core.tests.libcore.package.libcore
(cherry picked from commit 1b0ee2041c5ccf4053be8648e0cfbe45c102aeb7)

Change-Id: I00b892b160769faae6fc8e0df2a58211a43bc1a0

8 years agoMerge "Fix misc-macro-parentheses warnings in bionic."
Chih-hung Hsieh [Tue, 21 Jun 2016 18:15:36 +0000 (18:15 +0000)]
Merge "Fix misc-macro-parentheses warnings in bionic."

8 years agoMerge "Lose debuggerd client code to libdebuggerd_client."
Treehugger Robot [Mon, 20 Jun 2016 20:22:18 +0000 (20:22 +0000)]
Merge "Lose debuggerd client code to libdebuggerd_client."

8 years agoMerge "Make missing public soname error message clear."
Treehugger Robot [Mon, 20 Jun 2016 19:33:23 +0000 (19:33 +0000)]
Merge "Make missing public soname error message clear."

8 years agoMake missing public soname error message clear.
Christopher Ferris [Fri, 17 Jun 2016 20:46:36 +0000 (13:46 -0700)]
Make missing public soname error message clear.

If a public library is missing, make it clear that there is no
library with that soname that is missing. This can help diagnose
problems if a library exists, but the library doesn't have the right
soname.

Bug: 29400363
(cherry picked from commit 9a84d90c753dd934c3086322f6ba6b7a1f580c8c)

Change-Id: Ie2306a2e28aff779d07441dc8af078256b184f8a

8 years agoLose debuggerd client code to libdebuggerd_client.
Josh Gao [Thu, 16 Jun 2016 01:33:26 +0000 (18:33 -0700)]
Lose debuggerd client code to libdebuggerd_client.

Bug: http://b/24414818
Change-Id: I524714e081a27df4d2046f0c8eb853a1b20592e6

8 years agoMerge "Don't expose all BSD extensions."
Treehugger Robot [Mon, 13 Jun 2016 23:55:22 +0000 (23:55 +0000)]
Merge "Don't expose all BSD extensions."

8 years agoDon't expose all BSD extensions.
Elliott Hughes [Mon, 13 Jun 2016 20:23:42 +0000 (13:23 -0700)]
Don't expose all BSD extensions.

Just expose the ones that bionic historically leaked.

Also, many of the M_* constants in <math.h> are actually POSIX.

Change-Id: I6275df84c5866b872b71f1c8ed14e2aada12b793

8 years agoMerge "Update symbol versions."
Treehugger Robot [Mon, 13 Jun 2016 07:55:08 +0000 (07:55 +0000)]
Merge "Update symbol versions."

8 years agoUpdate symbol versions.
Josh Gao [Fri, 10 Jun 2016 23:33:05 +0000 (16:33 -0700)]
Update symbol versions.

Bug: http://b/28178111
Change-Id: I8e9fb919d96693dd320962775e991caf5aeb0107

8 years agoFix misc-macro-parentheses warnings in bionic.
Chih-Hung Hsieh [Fri, 10 Jun 2016 18:07:21 +0000 (11:07 -0700)]
Fix misc-macro-parentheses warnings in bionic.

Add parentheses around macro arguments used beside operators,
or use constexpr for simple constants.
Bug: 28705665

Change-Id: I378c8aad92d3ec8e8c4b0440b5c2c99dfe01ce79

8 years agoMerge "Rationalize visibility."
Treehugger Robot [Fri, 10 Jun 2016 20:41:16 +0000 (20:41 +0000)]
Merge "Rationalize visibility."

8 years agoMerge "Remove obsolete GCC workaround."
Treehugger Robot [Fri, 10 Jun 2016 20:29:37 +0000 (20:29 +0000)]
Merge "Remove obsolete GCC workaround."

8 years agoRemove obsolete GCC workaround.
Elliott Hughes [Fri, 10 Jun 2016 19:49:04 +0000 (12:49 -0700)]
Remove obsolete GCC workaround.

bionic is no longer built with GCC.

Change-Id: If01c53d8f6ec7e801bfcdc61775cc24356eb8434

8 years agoRationalize visibility.
Elliott Hughes [Thu, 9 Jun 2016 01:11:23 +0000 (18:11 -0700)]
Rationalize visibility.

If it's C or POSIX, it's in. If it's BSD or GNU, it's guarded by __USE_BSD
or __USE_GNU.

Bug: https://code.google.com/p/android/issues/detail?id=194631
Change-Id: Ife51a21c2b37b060db56780d29c929805b199cb6

8 years agoMerge "Fix the SIZE_T_MAX SSIZE_MAX defines."
Treehugger Robot [Fri, 10 Jun 2016 00:35:37 +0000 (00:35 +0000)]
Merge "Fix the SIZE_T_MAX SSIZE_MAX defines."

8 years agoFix the SIZE_T_MAX SSIZE_MAX defines.
Christopher Ferris [Thu, 9 Jun 2016 23:32:54 +0000 (16:32 -0700)]
Fix the SIZE_T_MAX SSIZE_MAX defines.

This should not affect the underlying values, just the types used
by the defines.

This fixes any warnings where code does something like:

  printf("%zx", SIZE_T_MAX);

Change-Id: I4beb6d382f30261e4fe133a88fb503984911326d

8 years agoMerge "Add ctermid."
Treehugger Robot [Thu, 9 Jun 2016 23:21:22 +0000 (23:21 +0000)]
Merge "Add ctermid."

8 years agoMerge "Clean up obsolete libm makefile cruft."
Treehugger Robot [Thu, 9 Jun 2016 22:56:18 +0000 (22:56 +0000)]
Merge "Clean up obsolete libm makefile cruft."

8 years agoAdd ctermid.
Elliott Hughes [Thu, 9 Jun 2016 22:16:32 +0000 (15:16 -0700)]
Add ctermid.

Change-Id: I7c7c815c2725df222932db923632c8b6419741ab

8 years agoClean up obsolete libm makefile cruft.
Elliott Hughes [Thu, 9 Jun 2016 22:04:27 +0000 (15:04 -0700)]
Clean up obsolete libm makefile cruft.

Change-Id: I52a80c182546168bc31ccc04d8bf815350dba28c

8 years agoMerge "Add futimes, futimesat, and lutimes."
Elliott Hughes [Thu, 9 Jun 2016 17:34:41 +0000 (17:34 +0000)]
Merge "Add futimes, futimesat, and lutimes."

8 years agoAdd futimes, futimesat, and lutimes.
Elliott Hughes [Thu, 9 Jun 2016 02:51:20 +0000 (19:51 -0700)]
Add futimes, futimesat, and lutimes.

Spotted these while cleaning up <sys/cdefs.h> --- if we remove __USE_XOPEN2K8,
libchrome decides you "must" have futimes. Adding the missing functions (all
just alternative interfaces to utimensat(2) system call) lets us clean up
without breaking anything.

Change-Id: If44fab08ee3de0e31066d650d128a3c96323529b

8 years agoMerge "Move /vendor/bin down with /vendor/xbin."
Elliott Hughes [Wed, 8 Jun 2016 19:53:21 +0000 (19:53 +0000)]
Merge "Move /vendor/bin down with /vendor/xbin."

8 years agoMerge "More C compatibility."
Treehugger Robot [Wed, 8 Jun 2016 19:44:29 +0000 (19:44 +0000)]
Merge "More C compatibility."

8 years agoMore C compatibility.
Elliott Hughes [Wed, 8 Jun 2016 17:52:15 +0000 (10:52 -0700)]
More C compatibility.

Add C11 static_assert to <assert.h>. Remove uses of __dead while we're there:
__noreturn already does the same thing on those functions.

Fix <uchar.h> so it works from C.

<stdalign.h> and <stdnoreturn.h> are provided by clang, so there's nothing
for us to do.

Bug: http://b/29178582
Change-Id: Iebc46223868729a26d1a61eb125b76cbcb83a22d

8 years agoMove /vendor/bin down with /vendor/xbin.
Elliott Hughes [Wed, 8 Jun 2016 17:17:26 +0000 (10:17 -0700)]
Move /vendor/bin down with /vendor/xbin.

The intention is that /vendor/*bin _extends_ rather than overrides.

Change-Id: Iad7db78f653345d79aa6f87abe0a3c2a797f71a3

8 years agoMerge "Add /vendor/xbin to root's path."
Treehugger Robot [Wed, 8 Jun 2016 01:06:48 +0000 (01:06 +0000)]
Merge "Add /vendor/xbin to root's path."

8 years agoMerge "Preliminary cleanup of <sys/cdefs.h>."
Elliott Hughes [Tue, 7 Jun 2016 20:16:26 +0000 (20:16 +0000)]
Merge "Preliminary cleanup of <sys/cdefs.h>."

8 years agoPreliminary cleanup of <sys/cdefs.h>.
Elliott Hughes [Tue, 7 Jun 2016 00:35:53 +0000 (17:35 -0700)]
Preliminary cleanup of <sys/cdefs.h>.

We don't support anything other than Clang and GCC, and we don't support
GCC earlier than 4.9.

Move the various synonyms for __attribute__(__whatever__) together.

Fix a __STDC__VERSION__ (for __STDC_VERSION__) typo.

Drop support for BSD _ANSI_SOURCE and _C99_SOURCE; there's enough confusing
nonsense here already, and plenty of other ways to ask for obsolete standards.

There are plenty more problems here -- what I really want to do is rationalize
our treatment of __STDC_VERSION__ -- but let's get some of this easy stuff
out of the way first.

Bug: https://code.google.com/p/android/issues/detail?id=194631
Change-Id: I7526b9770fdc01f8a4667781b65e2fb08287b20b

8 years agoMerge "Fix infinite loop if semaphore test is not run."
Treehugger Robot [Mon, 6 Jun 2016 22:26:55 +0000 (22:26 +0000)]
Merge "Fix infinite loop if semaphore test is not run."

8 years agoFix infinite loop if semaphore test is not run.
Christopher Ferris [Mon, 6 Jun 2016 21:13:17 +0000 (14:13 -0700)]
Fix infinite loop if semaphore test is not run.

When using the --benchmark_filter option, all of the test objects
get created, but not all are run. Previously, if this test didn't run
it would get into an infinite loop waiting for the test to complete.
This change only waits for the test to complete if it was actually
executed.

Change-Id: I5151a0b4b3d5349b978e716ec4a02ebd8b4eae00

8 years agoMerge "Just use libstdc++ for the cxa stuff inside bionic."
Treehugger Robot [Mon, 6 Jun 2016 18:04:54 +0000 (18:04 +0000)]
Merge "Just use libstdc++ for the cxa stuff inside bionic."

8 years agoMerge changes I32e726c7,I1dc9a708,I09cc335b,Ifb8a66ab,I0e2c25bc, ...
Josh Gao [Sat, 4 Jun 2016 06:06:02 +0000 (06:06 +0000)]
Merge changes I32e726c7,I1dc9a708,I09cc335b,Ifb8a66ab,I0e2c25bc, ...

* changes:
  versioner: whitelist atexit, turn on symbol checking by default.
  versioner: add missing test.
  versioner: fix false positive with functions only available as inlines.
  versioner: improve error output slightly.
  versioner: merge stdout and stderr in the test runner.
  versioner: clean up tests, test runner.
  versioner: ignore functions that are __INTRODUCED_IN_FUTURE.
  versioner: autodetect paths when no specified.
  versioner: improve usage messages.
  Remove __cachectl.

8 years agoversioner: whitelist atexit, turn on symbol checking by default.
Josh Gao [Fri, 3 Jun 2016 20:54:28 +0000 (13:54 -0700)]
versioner: whitelist atexit, turn on symbol checking by default.

Change-Id: I32e726c74ee618ace3a4329d46408a42732a8d9d

8 years agoversioner: add missing test.
Josh Gao [Fri, 3 Jun 2016 20:46:06 +0000 (13:46 -0700)]
versioner: add missing test.

Change-Id: I1dc9a708b53dbb46af9e4b8ab69bf8ed46ab045f

8 years agoversioner: fix false positive with functions only available as inlines.
Josh Gao [Fri, 3 Jun 2016 20:44:00 +0000 (13:44 -0700)]
versioner: fix false positive with functions only available as inlines.

Change-Id: I09cc335b4006c6ceafcbd1bec9e50161f8262942

8 years agoversioner: improve error output slightly.
Josh Gao [Fri, 3 Jun 2016 20:38:00 +0000 (13:38 -0700)]
versioner: improve error output slightly.

Print [introduced = 9, deprecated = 10, obsoleted = 11] instead of
[9,10,11].

Change-Id: Ifb8a66abbcec92aa13086d220af7ee6fa17b0897

8 years agoversioner: merge stdout and stderr in the test runner.
Josh Gao [Thu, 2 Jun 2016 22:59:44 +0000 (15:59 -0700)]
versioner: merge stdout and stderr in the test runner.

Some of the error messages emitted by versioner (the ones where it was
invoked incorrectly) go to stderr, which meant that the test runner
ignored them. Merge stdout and stderr, and switch from testing for
exact equality to endswith, because of the compilation errors test.

Change-Id: I0e2c25bcc9dea4c12ea82a6a05b29e561a61a902

8 years agoversioner: clean up tests, test runner.
Josh Gao [Thu, 2 Jun 2016 22:59:32 +0000 (15:59 -0700)]
versioner: clean up tests, test runner.

Git doesn't track empty directories, so most of the tests would fail on
a fresh checkout because of dependencies/common being missing. Remove
the use of dependencies from all of the non-dependency related tests.

Change-Id: I09cc5765aae1576914c1c5d7dfa3fb666eab4a3f

8 years agoversioner: ignore functions that are __INTRODUCED_IN_FUTURE.
Josh Gao [Thu, 2 Jun 2016 22:21:14 +0000 (15:21 -0700)]
versioner: ignore functions that are __INTRODUCED_IN_FUTURE.

Bug: http://b/28178111
Change-Id: I8026181e08ed8f2d59b31a37adcf8b469fb6bdaf

8 years agoversioner: autodetect paths when no specified.
Josh Gao [Thu, 2 Jun 2016 21:29:13 +0000 (14:29 -0700)]
versioner: autodetect paths when no specified.

Search for the header/dependency/platform directories in a hard-coded
path relative to $ANDROID_BUILD_TOP when they're not specified.

Change-Id: I476385cfc0247e3b2009348ec37c1810a0e9a7f7

8 years agoversioner: improve usage messages.
Josh Gao [Thu, 2 Jun 2016 21:27:21 +0000 (14:27 -0700)]
versioner: improve usage messages.

Don't spew all of usage when called improperly, and add a -h option
that exits cleanly.

Change-Id: I1a4517edce75afe0f9a80bc8d6c81353d6c12e99

8 years agoRemove __cachectl.
Josh Gao [Thu, 2 Jun 2016 23:04:20 +0000 (16:04 -0700)]
Remove __cachectl.

bionic doesn't have an implementation for this function, but neither
does the kernel. cachectl has existed in the kernel as a stub that
returns ENOSYS for over a decade.

Bug: http://b/28178111
Change-Id: Id35f85fd143c5ea0d45d04b1021893cf5c0c749d

8 years agoMerge "Fix __errordecl on clang."
Treehugger Robot [Fri, 3 Jun 2016 19:29:12 +0000 (19:29 +0000)]
Merge "Fix __errordecl on clang."

8 years agoMerge "Fix misc-macro-parentheses warnings in bionic/tests."
Chih-hung Hsieh [Fri, 3 Jun 2016 18:46:42 +0000 (18:46 +0000)]
Merge "Fix misc-macro-parentheses warnings in bionic/tests."

8 years agoMerge "Remove __brk"
Treehugger Robot [Fri, 3 Jun 2016 18:27:45 +0000 (18:27 +0000)]
Merge "Remove __brk"

8 years agoFix __errordecl on clang.
Josh Gao [Mon, 25 Apr 2016 21:53:13 +0000 (14:53 -0700)]
Fix __errordecl on clang.

__attribute__((__error__)) doesn't exist on clang.

Bug: http://b/28381737
Change-Id: I75f39308ecfd60164811958fa40c9b96c92fd329

8 years agoFix misc-macro-parentheses warnings in bionic/tests.
Chih-Hung Hsieh [Fri, 3 Jun 2016 17:18:07 +0000 (10:18 -0700)]
Fix misc-macro-parentheses warnings in bionic/tests.

Bug: 28705665
Change-Id: I532205b94e30acbdc97f3f4db0660c9a16a7de89

8 years agoRemove __brk
Dimitry Ivanov [Fri, 3 Jun 2016 15:33:51 +0000 (08:33 -0700)]
Remove __brk

The symbol is unused and deprecated

Bug: http://b/29005114
Change-Id: I5e99c8b029514e8b2405a1eec23ac8941374a8a4

8 years agoMerge "Do not return with stack address in global variable."
Treehugger Robot [Thu, 2 Jun 2016 22:57:51 +0000 (22:57 +0000)]
Merge "Do not return with stack address in global variable."

8 years agoDo not return with stack address in global variable.
Chih-Hung Hsieh [Thu, 2 Jun 2016 21:40:09 +0000 (14:40 -0700)]
Do not return with stack address in global variable.

Clang static analyzer gives warning when address of
local variable 'attr' is saved in a global variable.
This change passes required values down to signal handler
instead of saving local variable address in a signal handler.

Change-Id: I7955939487a5afdf7b1f47eb74a92eb5aa76cfc9

8 years agoMerge changes I1bb1925a,Icd638673
Treehugger Robot [Thu, 2 Jun 2016 21:29:48 +0000 (21:29 +0000)]
Merge changes I1bb1925a,Icd638673

* changes:
  versioner: introduce.
  Update header versions for NDK platform fixes.

8 years agoversioner: introduce.
Josh Gao [Fri, 27 May 2016 18:59:09 +0000 (11:59 -0700)]
versioner: introduce.

Add a clang-based tool to inspect header availability attributes and
verify them against the NDK platform definitions.

Bug: http://b/28178111
Change-Id: I1bb1925a620e98cc9606cb5a3360b1224c700bd0

8 years agoUpdate header versions for NDK platform fixes.
Josh Gao [Fri, 27 May 2016 18:14:16 +0000 (11:14 -0700)]
Update header versions for NDK platform fixes.

Bug: http://b/28178111
Change-Id: Icd638673b409aa43a91490f77c6b4d79c9ea20d9

8 years agoMerge "Remove deprecated Android.mk files"
Colin Cross [Thu, 2 Jun 2016 16:31:39 +0000 (16:31 +0000)]
Merge "Remove deprecated Android.mk files"

8 years agoMerge "Remove declaration for __brk."
Treehugger Robot [Thu, 2 Jun 2016 02:25:58 +0000 (02:25 +0000)]
Merge "Remove declaration for __brk."

8 years agoMerge "Fix .clang-format ContinuationIndentWidth."
Josh Gao [Thu, 2 Jun 2016 01:21:42 +0000 (01:21 +0000)]
Merge "Fix .clang-format ContinuationIndentWidth."

8 years agoRemove declaration for __brk.
Josh Gao [Fri, 27 May 2016 18:46:19 +0000 (11:46 -0700)]
Remove declaration for __brk.

Bug: http://b/28178111
Change-Id: I972789cd5da552000c32fd107b9df98330323d89

8 years agoFix .clang-format ContinuationIndentWidth.
Josh Gao [Wed, 1 Jun 2016 01:17:14 +0000 (18:17 -0700)]
Fix .clang-format ContinuationIndentWidth.

Change-Id: If41900122accb2c1ebf012bfa07de9b0fa9690fc

8 years agoAdd /vendor/xbin to root's path.
Erik Kline [Mon, 30 May 2016 03:06:11 +0000 (12:06 +0900)]
Add /vendor/xbin to root's path.

Bug: 28850734
Change-Id: Ibfc5ae019bec2efe6d188bacdd7fb009178fc837

8 years agoJust use libstdc++ for the cxa stuff inside bionic.
Elliott Hughes [Sat, 28 May 2016 00:57:46 +0000 (17:57 -0700)]
Just use libstdc++ for the cxa stuff inside bionic.

We have an explicit link map now, so we don't need a separate copy of libstdc++
that's built with -fvisibility=hidden.

Bug: http://b/29009180
Change-Id: I2d794d62f52621e6ad258ca6d455f9bd3830d829

8 years agoMerge "Remove libstdc++ include files."
Treehugger Robot [Fri, 27 May 2016 23:36:18 +0000 (23:36 +0000)]
Merge "Remove libstdc++ include files."

8 years agoRemove libstdc++ include files.
Elliott Hughes [Fri, 27 May 2016 00:35:00 +0000 (17:35 -0700)]
Remove libstdc++ include files.

We still need <new> for bionic, and to build libstdc++.

Change-Id: Ic7b26340576a5355007a06db9c1bec395be49ae1

8 years agoMerge "Improve diagnostics from the assembler __strcpy_chk routines."
Elliott Hughes [Fri, 27 May 2016 15:19:09 +0000 (15:19 +0000)]
Merge "Improve diagnostics from the assembler __strcpy_chk routines."

8 years agoRemove deprecated Android.mk files
Colin Cross [Thu, 26 May 2016 23:11:51 +0000 (16:11 -0700)]
Remove deprecated Android.mk files

These directories all have Android.bp files that are always used now,
delete the Android.mk files.

Change-Id: Ib0ba2d28bff88483b505426ba61606da314e03ab

8 years agoImprove diagnostics from the assembler __strcpy_chk routines.
Elliott Hughes [Thu, 26 May 2016 23:38:34 +0000 (16:38 -0700)]
Improve diagnostics from the assembler __strcpy_chk routines.

Change-Id: Ib95b598f7f8338cc1a618c00232a4259dc4a6319

8 years agoMerge "Improve diagnostics from the assembler __strcat_chk routines."
Treehugger Robot [Thu, 26 May 2016 23:01:25 +0000 (23:01 +0000)]
Merge "Improve diagnostics from the assembler __strcat_chk routines."

8 years agoImprove diagnostics from the assembler __strcat_chk routines.
Elliott Hughes [Thu, 26 May 2016 00:01:31 +0000 (17:01 -0700)]
Improve diagnostics from the assembler __strcat_chk routines.

Change-Id: I44cbe5389c66de6618e581a6e302eea22c39d6fb

8 years agoMerge "Update the "adding a syscall" docs."
Treehugger Robot [Thu, 26 May 2016 21:41:20 +0000 (21:41 +0000)]
Merge "Update the "adding a syscall" docs."

8 years agoUpdate the "adding a syscall" docs.
Elliott Hughes [Thu, 26 May 2016 20:55:37 +0000 (13:55 -0700)]
Update the "adding a syscall" docs.

Change-Id: I78adafb1c1c491f641a82a02ad7f03cd3f8c7d1e

8 years agoMerge "Don't use __u64/__u32 in <sys/user.h>."
Treehugger Robot [Thu, 26 May 2016 00:19:14 +0000 (00:19 +0000)]
Merge "Don't use __u64/__u32 in <sys/user.h>."