OSDN Git Service

android-x86/bionic.git
8 years agoMerge "Ensure that readlink has access to /proc/self/fd"
Dimitry Ivanov [Thu, 15 Oct 2015 01:27:17 +0000 (01:27 +0000)]
Merge "Ensure that readlink has access to /proc/self/fd"

8 years agoEnsure that readlink has access to /proc/self/fd
Dmitriy Ivanov [Wed, 14 Oct 2015 18:15:45 +0000 (11:15 -0700)]
Ensure that readlink has access to /proc/self/fd

/proc/self/fd is not available when PR_DUMPABLE is set to 0
which is default for the user builds. It leads to permission
denials on readlink.

This change fixes the problem by setting PR_DUMPABLE flag to 1
for readlink and restoring it's previous value after the call.

Bug: http://b/24912743
Change-Id: I3fd179c5c6b56af96d6a15ee597024ccb15e1a13
(cherry picked from commit cf92738fa5dee24050028a1235f815f2a0fd33b5)

8 years agoMerge "Move malloc dispatch table to __libc_globals."
Josh Gao [Wed, 14 Oct 2015 23:47:41 +0000 (23:47 +0000)]
Merge "Move malloc dispatch table to __libc_globals."

8 years agoMerge "make mmap fail on requests larger than PTRDIFF_MAX"
Josh Gao [Wed, 14 Oct 2015 02:17:10 +0000 (02:17 +0000)]
Merge "make mmap fail on requests larger than PTRDIFF_MAX"

8 years agoMerge "Log dlopen failures caused by text relocations"
Dimitry Ivanov [Tue, 13 Oct 2015 22:50:05 +0000 (22:50 +0000)]
Merge "Log dlopen failures caused by text relocations"

8 years agoLog dlopen failures caused by text relocations
Dmitriy Ivanov [Tue, 13 Oct 2015 18:07:56 +0000 (11:07 -0700)]
Log dlopen failures caused by text relocations

Some apps will fail to load native libraries with
text relocations when switching target sdk version to M.
It could be hard to diagnose because some of them
suppress dlerror and/or UnsatisfiedLinkError.

This change unconditionally logs the error message making
the cause of the failure more visible to developers.

Bug: http://b/24876001
Change-Id: I0477a0d1307d0879000f3a3a43b974b4cf34bdb2
(cherry picked from commit f32b689d3dbe7a1317bce58d1d9bef9bba173c66)

8 years agoMerge "Correctly resolve realpath for absolute paths"
Dimitry Ivanov [Tue, 13 Oct 2015 20:37:55 +0000 (20:37 +0000)]
Merge "Correctly resolve realpath for absolute paths"

8 years agoCorrectly resolve realpath for absolute paths
Lazar Trsic [Tue, 13 Oct 2015 14:43:00 +0000 (16:43 +0200)]
Correctly resolve realpath for absolute paths

Introduced by: https://android-review.googlesource.com/174475

Change-Id: I44e00040b28be167d5141454f919340afec6084e

8 years agoMerge "Update timezone data to 2015g"
Neil Fuller [Tue, 13 Oct 2015 08:26:44 +0000 (08:26 +0000)]
Merge "Update timezone data to 2015g"

8 years agoMerge "linker: Switch to clang"
Dimitry Ivanov [Tue, 13 Oct 2015 01:34:59 +0000 (01:34 +0000)]
Merge "linker: Switch to clang"

8 years agolinker: Switch to clang
Dmitriy Ivanov [Mon, 12 Oct 2015 23:27:32 +0000 (16:27 -0700)]
linker: Switch to clang

x86_64 gcc exports malloc/free and co functions because they
are defined with visibility "default" somewhere in gcc builtins;
and vector d-tors for some reason. Switching to clang fixes
this problem.

Bug: http://b/24785482
Change-Id: I741503b4b446523e7ff3fb16de13ed99991fd0c0

8 years agoMove malloc dispatch table to __libc_globals.
Josh Gao [Thu, 8 Oct 2015 21:49:26 +0000 (14:49 -0700)]
Move malloc dispatch table to __libc_globals.

Change-Id: Ic20b980d1e8b6c2d4b773ebe336658fd17c737cb

8 years agoMerge "Make struct FILE opaque."
Elliott Hughes [Mon, 12 Oct 2015 20:33:04 +0000 (20:33 +0000)]
Merge "Make struct FILE opaque."

8 years agoMake struct FILE opaque.
Elliott Hughes [Mon, 12 Oct 2015 19:44:23 +0000 (12:44 -0700)]
Make struct FILE opaque.

Bug: http://b/24807045
Change-Id: I3cb4e436325a65bef3b203e3970e4d967101fcce

8 years agoMerge "Fix stdio read after EOF behavior."
Elliott Hughes [Mon, 12 Oct 2015 15:20:29 +0000 (15:20 +0000)]
Merge "Fix stdio read after EOF behavior."

8 years agoFix stdio read after EOF behavior.
Elliott Hughes [Sat, 10 Oct 2015 00:57:26 +0000 (17:57 -0700)]
Fix stdio read after EOF behavior.

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

8 years agoMerge "Fix inet_aton on LP32."
Elliott Hughes [Sat, 10 Oct 2015 00:39:11 +0000 (00:39 +0000)]
Merge "Fix inet_aton on LP32."

8 years agoFix inet_aton on LP32.
Elliott Hughes [Sat, 10 Oct 2015 00:27:41 +0000 (17:27 -0700)]
Fix inet_aton on LP32.

I wasn't checking for overflow. Luckily, I had a test that overflows on LP32.

Change-Id: If2cf33d88f459eb26d0ce75f3c5ed192f516ab7a

8 years agoMerge "utmp.h: add more ut_type defines"
Mike Frysinger [Fri, 9 Oct 2015 23:33:37 +0000 (23:33 +0000)]
Merge "utmp.h: add more ut_type defines"

8 years agoMerge "Move setjmp cookie to a shared globals struct."
Josh Gao [Fri, 9 Oct 2015 23:27:07 +0000 (23:27 +0000)]
Merge "Move setjmp cookie to a shared globals struct."

8 years agoMerge "Move VDSO pointers to a shared globals struct."
Josh Gao [Fri, 9 Oct 2015 23:26:53 +0000 (23:26 +0000)]
Merge "Move VDSO pointers to a shared globals struct."

8 years agoMove setjmp cookie to a shared globals struct.
Josh Gao [Wed, 7 Oct 2015 21:32:36 +0000 (14:32 -0700)]
Move setjmp cookie to a shared globals struct.

Change-Id: I59a4c187d61524c4e48655c4c6376dba0d41eee2

8 years agoMove VDSO pointers to a shared globals struct.
Josh Gao [Tue, 6 Oct 2015 18:08:13 +0000 (11:08 -0700)]
Move VDSO pointers to a shared globals struct.

Change-Id: I01cbc9cf0917dc1fac52d9205bda2c68529d12ef

8 years agoutmp.h: add more ut_type defines
Mike Frysinger [Fri, 9 Oct 2015 22:48:51 +0000 (18:48 -0400)]
utmp.h: add more ut_type defines

This fills out the defines that utmp.h normally offers on other systems
such as glibc.

BUG=24810744

Change-Id: If57f9ced22e8673f072245fce3f5c0f8e1f591e5

8 years agoMerge "Fix inet_addr/inet_aton/inet_network."
Elliott Hughes [Fri, 9 Oct 2015 22:48:13 +0000 (22:48 +0000)]
Merge "Fix inet_addr/inet_aton/inet_network."

8 years agoFix inet_addr/inet_aton/inet_network.
Elliott Hughes [Fri, 9 Oct 2015 01:04:49 +0000 (18:04 -0700)]
Fix inet_addr/inet_aton/inet_network.

Rewrite inet_addr and inet_network in terms of inet_aton, and reimplement
that to include all the missing error checks.

Bug: http://b/24754503
Change-Id: I5dfa971c87201968985a0894df419f0fbf54768a

8 years agoMerge "Sync with upstream tzcode (2015g)."
Elliott Hughes [Fri, 9 Oct 2015 22:35:24 +0000 (22:35 +0000)]
Merge "Sync with upstream tzcode (2015g)."

8 years agoSync with upstream tzcode (2015g).
Elliott Hughes [Thu, 8 Oct 2015 00:13:40 +0000 (17:13 -0700)]
Sync with upstream tzcode (2015g).

This is quite a large patch because we haven't updated for some time,
but the good news is that upstream is now thread-safe so a lot of our
changes go away in this update and the remaining diff is a lot smaller.

(Note that our whitespace still doesn't match upstream. I use diff -wub
to compare. Upstream doesn't even really have a consistent style. New
code seems to be two spaces, old code tabs.)

From the intervening changelogs (eliding the changes that only affected
the tools, which we don't use):

2014a:
     An uninitialized-storage bug in 'localtime' has been fixed.
     (Thanks to Logan Chien.)

2014b:
     'zic' and 'localtime' no longer reject locations needing four
     transitions per year for the forseeable future.  (Thanks to Andrew
     Main (Zefram).)

2014c:
     <None>

2014d:
     <None>

2014e:
     <None>

2014f:
     'localtime', 'mktime', etc. now use much less stack space if
     ALL_STATE is defined.  (Thanks to Elliott Hughes for reporting the
     problem.)

     Some lint has been removed when using GCC_DEBUG_FLAGS with GCC
     4.9.0.

2014g:
     Unless NETBSD_INSPIRED is defined to 0, the tz library now
     supplies functions for creating and using objects that represent
     time zones. The new functions are tzalloc, tzfree, localtime_rz,
     mktime_z, and (if STD_INSPIRED is also defined) posix2time_z and
     time2posix_z.  They are intended for performance: for example,
     localtime_rz (unlike localtime_r) is trivially thread-safe without
     locking.  (Thanks to Christos Zoulas for proposing NetBSD-inspired
     functions, and to Alan Barrett and Jonathan Lennox for helping to
     debug the change.)

     If THREAD_SAFE is defined to 1, the tz library is now thread-safe.
     Although not needed for tz's own applications, which are single-threaded,
     this supports POSIX better if the tz library is used in multithreaded apps.

     Some crashes have been fixed when zdump or the tz library is given
     invalid or outlandish input.

     The tz library no longer mishandles leap seconds on platforms with
     unsigned time_t in time zones that lack ordinary transitions after 1970.

     The tz code now attempts to infer TM_GMTOFF and TM_ZONE if not
     already defined, to make it easier to configure on common platforms.
     Define NO_TM_GMTOFF and NO_TM_ZONE to suppress this.

     Unless the new macro UNINIT_TRAP is defined to 1, the tz code now
     assumes that reading uninitialized memory yields garbage values
     but does not cause other problems such as traps.

     If TM_GMTOFF is defined and UNINIT_TRAP is 0, mktime is now
     more likely to guess right for ambiguous time stamps near
     transitions where tm_isdst does not change.

     If HAVE_STRFTIME_L is defined to 1, the tz library now defines
     strftime_l for compatibility with recent versions of POSIX.
     Only the C locale is supported, though.  HAVE_STRFTIME_L defaults
     to 1 on recent POSIX versions, and to 0 otherwise.

     tzselect -c now uses a hybrid distance measure that works better
     in Africa.  (Thanks to Alan Barrett for noting the problem.)

     The C source code now ports to NetBSD when GCC_DEBUG_FLAGS is used,
     or when time_tz is defined.

     When HAVE_UTMPX_H is set the 'date' command now builds on systems
     whose <utmpx.h> file does not define WTMPX_FILE, and when setting
     the date it updates the wtmpx file if _PATH_WTMPX is defined.
     This affects GNU/Linux and similar systems.

     For easier maintenance later, some C code has been simplified,
     some lint has been removed, and the code has been tweaked so that
     plain 'make' is more likely to work.

     The C type 'bool' is now used for boolean values, instead of 'int'.

     The long-obsolete LOCALE_HOME code has been removed.

     The long-obsolete 'gtime' function has been removed.

2014h:
     The tz library's localtime and mktime functions now set tzname to a value
     appropriate for the requested time stamp, and zdump now uses this
     on platforms not defining TM_ZONE, fixing a 2014g regression.
     (Thanks to Tim Parenti for reporting the problem.)

     The tz library no longer sets tzname if localtime or mktime fails.

     An access to uninitalized data has been fixed.
     (Thanks to Jörg Richter for reporting the problem.)

     When THREAD_SAFE is defined, the code ports to the C11 memory model.
     A memory leak has been fixed if ALL_STATE and THREAD_SAFE are defined
     and two threads race to initialize data used by gmtime-like functions.
     (Thanks to Andy Heninger for reporting the problems.)

2014i:
     The time-related library functions now set errno on failure,
     and some crashes in the new tzalloc-related library functions
     have been fixed.  (Thanks to Christos Zoulas for reporting
     most of these problems and for suggesting fixes.)

     If USG_COMPAT is defined and the requested time stamp is
     standard time, the tz library's localtime and mktime functions
     now set the extern variable timezone to a value appropriate
     for that time stamp; and similarly for ALTZONE, daylight
     saving time, and the altzone variable.  This change is a
     companion to the tzname change in 2014h, and is designed to
     make timezone and altzone more compatible with tzname.

     The tz library's functions now set errno to EOVERFLOW if they
     fail because the result cannot be represented.  ctime and
     ctime_r now return NULL and set errno when a time stamp is out
     of range, rather than having undefined behavior.

     Some bugs associated with the new 2014g functions have been
     fixed.  This includes a bug that largely incapacitated the new
     functions time2posix_z and posix2time_z.  (Thanks to Christos
     Zoulas.)  It also includes some uses of uninitialized
     variables after tzalloc.  The new code uses the standard type
     'ssize_t', which the Makefile now gives porting advice about.

2014j:
     <None>

2015a:
     tzalloc now scrubs time zone abbreviations compatibly with the way
     that tzset always has, by replacing invalid bytes with '_' and by
     shortening too-long abbreviations.

2015b:
     Fix integer overflow bug in reference 'mktime' implementation.
     (Problem reported by Jörg Richter.)

     Allow -Dtime_tz=time_t compilations, and allow -Dtime_tz=... libraries
     to be used in the same executable as standard-library time_t functions.
     (Problems reported by Bradley White.)

2015c:
     <None>

2015d:
     <None>

2015e:
     <None>

2015f:
     <None>

2015g:
    localtime no longer mishandles America/Anchorage after 2037.
    (Thanks to Bradley White for reporting the bug.)

    On hosts with signed 32-bit time_t, localtime no longer mishandles
    Pacific/Fiji after 2038-01-16 14:00 UTC.

    The localtime module allows the variables 'timezone', 'daylight',
    and 'altzone' to be in common storage shared with other modules,
    and declares them in case the system <time.h> does not.
    (Problems reported by Kees Dekker.)

    On platforms with tm_zone, strftime.c now assumes it is not NULL.
    This simplifies the code and is consistent with zdump.c.
    (Problem reported by Christos Zoulas.)

Change-Id: I9eb0a8323cb8bd9968fcfe612dc14f45aa3b59d2

8 years agoMerge "Remove textrels support for platform libs"
Dimitry Ivanov [Fri, 9 Oct 2015 21:09:46 +0000 (21:09 +0000)]
Merge "Remove textrels support for platform libs"

8 years agoRemove textrels support for platform libs
Dmitriy Ivanov [Fri, 9 Oct 2015 20:58:46 +0000 (13:58 -0700)]
Remove textrels support for platform libs

Bug: http://b/20013628
Change-Id: Ia9382c7113e09bb6aed65072543e4ebe33026cf8

8 years agoMerge "Implement setjmp cookies on MIPS and MIPS64"
Josh Gao [Fri, 9 Oct 2015 18:32:20 +0000 (18:32 +0000)]
Merge "Implement setjmp cookies on MIPS and MIPS64"

8 years agoUpdate timezone data to 2015g
Neil Fuller [Fri, 9 Oct 2015 16:58:58 +0000 (17:58 +0100)]
Update timezone data to 2015g

  Changes affecting future time stamps

    Turkey's 2015 fall-back transition is scheduled for Nov. 8, not Oct. 25.
    (Thanks to Fatih.)

    Norfolk moves from +1130 to +1100 on 2015-10-04 at 02:00 local time.
    (Thanks to Alexander Krivenyshev.)

    Fiji's 2016 fall-back transition is scheduled for January 17, not 24.
    (Thanks to Ken Rylander.)

    Fort Nelson, British Columbia will not fall back on 2015-11-01. It has
    effectively been on MST (-0700) since it advanced its clocks on 2015-03-08.
    New zone America/Fort_Nelson.  (Thanks to Matt Johnson.)

  Changes affecting past time stamps

    Norfolk observed DST from 1974-10-27 02:00 to 1975-03-02 02:00.

Bug: 24595281
Change-Id: I7e4e4c53b4843110540f573ba82d3761c871c096

8 years agoImplement setjmp cookies on MIPS and MIPS64
Nikola Veljkovic [Tue, 6 Oct 2015 16:39:49 +0000 (18:39 +0200)]
Implement setjmp cookies on MIPS and MIPS64

Bug: http://b/23942752
Change-Id: Ie58892a97b5075d30d7607667251007cda99d38c

8 years agoMerge "Fix bionic_coverage for kati."
Dan Albert [Thu, 8 Oct 2015 21:35:12 +0000 (21:35 +0000)]
Merge "Fix bionic_coverage for kati."

8 years agoFix bionic_coverage for kati.
Dan Albert [Thu, 8 Oct 2015 21:04:53 +0000 (14:04 -0700)]
Fix bionic_coverage for kati.

Kati won't override something set with :=, only ?=.

Note that the actually reveals that our coverage build has been broken
for... some time. The issue is that we have static libraries built
with clang and others built with gcc linked into the same .so. If we
use both libclang_rt.profile and libgcov together, we get duplicate
symbol errors. If we only use one or the other, we don't have all the
symbols we need.

This will be fixed once chh's TLS stuff makes it into our clang and we
can start building libc_thread_atexit_impl with clang.

Change-Id: I45d0f2e558a881ad8be71088102320724ced8fe5

8 years agoMerge "Make dt_runpath work for libraries opened from apk"
Dimitry Ivanov [Thu, 8 Oct 2015 19:45:45 +0000 (19:45 +0000)]
Merge "Make dt_runpath work for libraries opened from apk"

8 years agoMerge "Add missing register preserve in x86/x86_64 longjmp."
Josh Gao [Wed, 7 Oct 2015 21:17:47 +0000 (21:17 +0000)]
Merge "Add missing register preserve in x86/x86_64 longjmp."

8 years agoAdd missing register preserve in x86/x86_64 longjmp.
Josh Gao [Wed, 7 Oct 2015 20:51:59 +0000 (13:51 -0700)]
Add missing register preserve in x86/x86_64 longjmp.

Change-Id: I3fc442f819229640e9c0ec4f9c865d9bf0e70881

8 years agoMake dt_runpath work for libraries opened from apk
Dmitriy Ivanov [Fri, 2 Oct 2015 01:41:57 +0000 (18:41 -0700)]
Make dt_runpath work for libraries opened from apk

This patch also fixes realpath for libraries opened directly
from apks.

Bug: http://b/21960914
Bug: http://b/21961857
Change-Id: I35ade661c87f1d448191f385811f6e9fd3cacf11

8 years agoMerge "Remove the workaround which fixes JOB_COUNT in CTS test."
Yabin Cui [Wed, 7 Oct 2015 17:05:29 +0000 (17:05 +0000)]
Merge "Remove the workaround which fixes JOB_COUNT in CTS test."

8 years agoRemove the workaround which fixes JOB_COUNT in CTS test.
Yabin Cui [Tue, 6 Oct 2015 23:30:14 +0000 (16:30 -0700)]
Remove the workaround which fixes JOB_COUNT in CTS test.

Bug: 24376925
Change-Id: Ib195ce1577ee9412068cc1b6223fc051b5bcfcaa

8 years agoam 748421be: Merge "Fix linker tests"
Dimitry Ivanov [Mon, 5 Oct 2015 20:17:39 +0000 (20:17 +0000)]
am 748421be: Merge "Fix linker tests"

* commit '748421beef0ed8625920a27b3753a79c2652b6ef':
  Fix linker tests

8 years agoMerge "Fix linker tests"
Dimitry Ivanov [Mon, 5 Oct 2015 20:10:26 +0000 (20:10 +0000)]
Merge "Fix linker tests"

8 years agoFix linker tests
Dmitriy Ivanov [Mon, 5 Oct 2015 19:06:40 +0000 (12:06 -0700)]
Fix linker tests

Change-Id: I4794f2d9dcc5ceb419e1bf9151607a650eb801d9

8 years agoam 5c50449b: Merge "Use const auto& in for loops."
Elliott Hughes [Sat, 3 Oct 2015 16:29:55 +0000 (16:29 +0000)]
am 5c50449b: Merge "Use const auto& in for loops."

* commit '5c50449b0c098cb8191fe3f7791e91a7ec4f7029':
  Use const auto& in for loops.

8 years agoMerge "Use const auto& in for loops."
Elliott Hughes [Sat, 3 Oct 2015 16:23:19 +0000 (16:23 +0000)]
Merge "Use const auto& in for loops."

8 years agoUse const auto& in for loops.
Elliott Hughes [Sat, 3 Oct 2015 01:25:19 +0000 (18:25 -0700)]
Use const auto& in for loops.

Change-Id: Ic437c59797ee4e7dc38291da35c72d827bc89c8d

8 years agoam f7cf8b2c: Merge "bionic: tzset running hot"
Mark Salyzyn [Fri, 2 Oct 2015 21:10:18 +0000 (21:10 +0000)]
am f7cf8b2c: Merge "bionic: tzset running hot"

* commit 'f7cf8b2c1fbf6250e12d1e59aa353990eca4f109':
  bionic: tzset running hot

8 years agoMerge "bionic: tzset running hot"
Mark Salyzyn [Fri, 2 Oct 2015 21:04:50 +0000 (21:04 +0000)]
Merge "bionic: tzset running hot"

8 years agobionic: tzset running hot
Mark Salyzyn [Fri, 2 Oct 2015 20:15:07 +0000 (13:15 -0700)]
bionic: tzset running hot

logd makes a non-insignificant number of calls to localtime, 3% of
the time in logd is spent performing __system_property_get within the
context of tzset_locked().

Bug: 23685592
Change-Id: I75f8c2d436b60374e92c166b87393abda9487af7

8 years agoam cf92ebcf: Merge "Use foreach loop to match setuid unsafe env vars."
Josh Gao [Fri, 2 Oct 2015 18:37:22 +0000 (18:37 +0000)]
am cf92ebcf: Merge "Use foreach loop to match setuid unsafe env vars."

* commit 'cf92ebcfe323ee2ea58168ed008d2a08565809ce':
  Use foreach loop to match setuid unsafe env vars.

8 years agoMerge "Use foreach loop to match setuid unsafe env vars."
Josh Gao [Fri, 2 Oct 2015 18:32:44 +0000 (18:32 +0000)]
Merge "Use foreach loop to match setuid unsafe env vars."

8 years agoUse foreach loop to match setuid unsafe env vars.
Josh Gao [Thu, 1 Oct 2015 22:50:16 +0000 (15:50 -0700)]
Use foreach loop to match setuid unsafe env vars.

Change-Id: I1e94daefac8e601281f38c7ce29ba3172a4a60bb

8 years agoam 143409d7: Merge "Fix the comment"
Dimitry Ivanov [Thu, 1 Oct 2015 22:11:31 +0000 (22:11 +0000)]
am 143409d7: Merge "Fix the comment"

* commit '143409d75b093c89042e25cab1757d6b2bae8ec5':
  Fix the comment

8 years agoMerge "Fix the comment"
Dimitry Ivanov [Thu, 1 Oct 2015 21:18:36 +0000 (21:18 +0000)]
Merge "Fix the comment"

8 years agoFix the comment
Dmitriy Ivanov [Thu, 1 Oct 2015 21:02:19 +0000 (14:02 -0700)]
Fix the comment

Change-Id: Ic8126cf92d12851cccaa3e2e781f075c9f6c283a

8 years agoam 4a65557d: Merge "Remove invalid left shifts of -1."
Stephen Hines [Thu, 1 Oct 2015 05:33:49 +0000 (05:33 +0000)]
am 4a65557d: Merge "Remove invalid left shifts of -1."

* commit '4a65557d0ebd167e557958687f50510742cb238a':
  Remove invalid left shifts of -1.

8 years agoMerge "Remove invalid left shifts of -1."
Stephen Hines [Thu, 1 Oct 2015 05:23:14 +0000 (05:23 +0000)]
Merge "Remove invalid left shifts of -1."

8 years agoam ad157a3c: Merge "Add a no dwarf version of assembler macros."
Christopher Ferris [Wed, 30 Sep 2015 23:44:34 +0000 (23:44 +0000)]
am ad157a3c: Merge "Add a no dwarf version of assembler macros."

* commit 'ad157a3c3353ba69d3bd155a7c09f9943a22f8d2':
  Add a no dwarf version of assembler macros.

8 years agoam 3230d96a: Merge "libc: krait: Use performance version of memcpy"
Christopher Ferris [Wed, 30 Sep 2015 23:44:12 +0000 (23:44 +0000)]
am 3230d96a: Merge "libc: krait: Use performance version of memcpy"

* commit '3230d96a10ab0cfa128487ef03fa5f08c77ebf20':
  libc: krait: Use performance version of memcpy

8 years agoMerge "Add a no dwarf version of assembler macros."
Christopher Ferris [Wed, 30 Sep 2015 23:18:32 +0000 (23:18 +0000)]
Merge "Add a no dwarf version of assembler macros."

8 years agoMerge "libc: krait: Use performance version of memcpy"
Christopher Ferris [Wed, 30 Sep 2015 22:54:09 +0000 (22:54 +0000)]
Merge "libc: krait: Use performance version of memcpy"

8 years agoAdd a no dwarf version of assembler macros.
Christopher Ferris [Wed, 30 Sep 2015 22:32:15 +0000 (15:32 -0700)]
Add a no dwarf version of assembler macros.

For the __release and __release_rt functions, the previous macros
would add a dwarf cfi entry for the function with no values. This works
with libunwind since it always tries the arm unwind information first.

This change removes those entries by creating a no dwarf version of the
assembler macro.

Change-Id: Ib93e42fff5a79b8d770eab0071fdee7d2afa988d

8 years agolibc: krait: Use performance version of memcpy
Brent DeGraaf [Wed, 2 Oct 2013 13:47:11 +0000 (13:47 +0000)]
libc: krait: Use performance version of memcpy

Change-Id: Iaa52635240da8b8746693186b66b69778e833c32

8 years agoam a0b9cad0: Merge "Optimize dlopen from a zip file"
Dimitry Ivanov [Wed, 30 Sep 2015 20:10:49 +0000 (20:10 +0000)]
am a0b9cad0: Merge "Optimize dlopen from a zip file"

* commit 'a0b9cad07629439bab926373515d964253426a69':
  Optimize dlopen from a zip file

8 years agoMerge "Optimize dlopen from a zip file"
Dimitry Ivanov [Wed, 30 Sep 2015 19:11:30 +0000 (19:11 +0000)]
Merge "Optimize dlopen from a zip file"

8 years agoOptimize dlopen from a zip file
Dmitriy Ivanov [Mon, 28 Sep 2015 23:38:31 +0000 (16:38 -0700)]
Optimize dlopen from a zip file

This change makes dynamic linker reuse ZipArchiveHandles in
ld_library_path on dlopen to optimize the lookup of dt_needed
libraries.

Bug: http://b/21960534
Change-Id: I65f897910d46dd2ffabdcb0b7842db2f127eee30

8 years agoam c1eebd5f: Merge "Fix the way to count online cpus."
Yabin Cui [Wed, 30 Sep 2015 01:23:33 +0000 (01:23 +0000)]
am c1eebd5f: Merge "Fix the way to count online cpus."

* commit 'c1eebd5ff42cdf8f8a08be76bfdeaad6a327976c':
  Fix the way to count online cpus.

8 years agoMerge "Fix the way to count online cpus."
Yabin Cui [Wed, 30 Sep 2015 01:17:32 +0000 (01:17 +0000)]
Merge "Fix the way to count online cpus."

8 years agoFix the way to count online cpus.
Yabin Cui [Tue, 29 Sep 2015 23:11:45 +0000 (16:11 -0700)]
Fix the way to count online cpus.

Read /proc/stat to count online cpus is not correct for all android
kernels. Change to reading /sys/devices/system/cpu/online instead.

Bug: 24376925
Change-Id: I3785a6c7aa15a467022a9a261b457194d688fb38

8 years agoRemove invalid left shifts of -1.
Stephen Hines [Tue, 29 Sep 2015 16:28:41 +0000 (09:28 -0700)]
Remove invalid left shifts of -1.

Bug: 24492248

Shifting sign bits left is considered undefined behavior, so we need to
switch these uses to unsigned equivalents. The time_t-related code is
updated relative to upstream sources.

Change-Id: I226e5a929a10f5c57dfcb90c748fdac34eb377c2

8 years agoam 8b279ead: Merge "Pass -q is zip for test"
Colin Cross [Mon, 28 Sep 2015 23:11:58 +0000 (23:11 +0000)]
am 8b279ead: Merge "Pass -q is zip for test"

* commit '8b279eadd3a635c31df9c570ab2144212bfd07cc':
  Pass -q is zip for test

8 years agoMerge "Pass -q is zip for test"
Colin Cross [Mon, 28 Sep 2015 23:07:04 +0000 (23:07 +0000)]
Merge "Pass -q is zip for test"

8 years agoPass -q is zip for test
Colin Cross [Mon, 28 Sep 2015 22:56:18 +0000 (15:56 -0700)]
Pass -q is zip for test

Pass -q to zip for dlext_testzip to avoid printing:
  adding: empty_file.txt (stored 0%)
on every compile.

Bug: 24409581
Change-Id: I2320f31182a9a332b3ef8b32a22561092ab5aceb

8 years agoam c80aa3f9: Merge "Turn common INFO messages down to VLOG(1)"
Colin Cross [Mon, 28 Sep 2015 22:52:32 +0000 (22:52 +0000)]
am c80aa3f9: Merge "Turn common INFO messages down to VLOG(1)"

* commit 'c80aa3f9e2be9f9390b1e11f8f2b67a2adbd1faa':
  Turn common INFO messages down to VLOG(1)

8 years agoMerge "Turn common INFO messages down to VLOG(1)"
Colin Cross [Mon, 28 Sep 2015 22:46:11 +0000 (22:46 +0000)]
Merge "Turn common INFO messages down to VLOG(1)"

8 years agoTurn common INFO messages down to VLOG(1)
Colin Cross [Mon, 28 Sep 2015 22:30:37 +0000 (15:30 -0700)]
Turn common INFO messages down to VLOG(1)

Turn messages that are printed on every run of relocation_packer down to
VLOG(1) to clean up ninja build output.

Bug: 24409581
Change-Id: I040aed6a7b4261eefa6f7278fa451180115b0716

8 years agoam f16f4f8a: Merge "Fix file-check-cxx to handle quoted arguments"
Dan Willemsen [Mon, 28 Sep 2015 20:43:06 +0000 (20:43 +0000)]
am f16f4f8a: Merge "Fix file-check-cxx to handle quoted arguments"

* commit 'f16f4f8a6bac035db5f25538ddb4fe810d0719db':
  Fix file-check-cxx to handle quoted arguments

8 years agoMerge "Fix file-check-cxx to handle quoted arguments"
Dan Willemsen [Mon, 28 Sep 2015 20:37:07 +0000 (20:37 +0000)]
Merge "Fix file-check-cxx to handle quoted arguments"

8 years agoFix file-check-cxx to handle quoted arguments
Dan Willemsen [Mon, 28 Sep 2015 20:09:04 +0000 (13:09 -0700)]
Fix file-check-cxx to handle quoted arguments

If the OVERRIDE_C_DATE_TIME environment variable is set, the build
system will add a macro to the global cflags that contains a static
quoted date, like:

  -D__DATE__="\"Sep 28 2015\""

file-check-cxx needs to properly pass that through as a single, still
quoted argument. So use the quoted "$@" instead of turning each word
into an argument.

Change-Id: I6929d712c280d0452062640e0cba8a176d045c97

8 years agoam d5e8a049: Merge "Fix bug number for linker related workarounds"
Dimitry Ivanov [Mon, 28 Sep 2015 18:23:48 +0000 (18:23 +0000)]
am d5e8a049: Merge "Fix bug number for linker related workarounds"

* commit 'd5e8a0499b9efa147d45aabd47cfb2d2204c2323':
  Fix bug number for linker related workarounds

8 years agoMerge "Fix bug number for linker related workarounds"
Dimitry Ivanov [Mon, 28 Sep 2015 17:54:23 +0000 (17:54 +0000)]
Merge "Fix bug number for linker related workarounds"

8 years agoFix bug number for linker related workarounds
Dmitriy Ivanov [Mon, 28 Sep 2015 17:14:17 +0000 (10:14 -0700)]
Fix bug number for linker related workarounds

Bug: 24425865
Change-Id: I2021674a9df0e768f312ca024d906302db1c494f

8 years agoam 55f87a0c: Merge "Force non-color output for bionic FileCheck tests"
Colin Cross [Fri, 25 Sep 2015 22:33:53 +0000 (22:33 +0000)]
am 55f87a0c: Merge "Force non-color output for bionic FileCheck tests"

* commit '55f87a0c0bb587ee85b5662967563462d52db560':
  Force non-color output for bionic FileCheck tests

8 years agoam 4a54ec82: Merge "Add .PHONY for phony bionic test targets"
Colin Cross [Fri, 25 Sep 2015 22:33:51 +0000 (22:33 +0000)]
am 4a54ec82: Merge "Add .PHONY for phony bionic test targets"

* commit '4a54ec8200356a755aeeb212c4dd9cefad39754c':
  Add .PHONY for phony bionic test targets

8 years agoMerge "Force non-color output for bionic FileCheck tests"
Colin Cross [Fri, 25 Sep 2015 22:27:16 +0000 (22:27 +0000)]
Merge "Force non-color output for bionic FileCheck tests"

8 years agoMerge "Add .PHONY for phony bionic test targets"
Colin Cross [Fri, 25 Sep 2015 22:25:58 +0000 (22:25 +0000)]
Merge "Add .PHONY for phony bionic test targets"

8 years agoam b48ca46d: Merge "Force cts to only run one test at a time."
Christopher Ferris [Fri, 25 Sep 2015 22:11:46 +0000 (22:11 +0000)]
am b48ca46d: Merge "Force cts to only run one test at a time."

* commit 'b48ca46d88d9e664763eff39604f772a57d8e2fb':
  Force cts to only run one test at a time.

8 years agoMerge "Force cts to only run one test at a time."
Christopher Ferris [Fri, 25 Sep 2015 21:50:35 +0000 (21:50 +0000)]
Merge "Force cts to only run one test at a time."

8 years agoForce non-color output for bionic FileCheck tests
Colin Cross [Fri, 25 Sep 2015 21:42:07 +0000 (14:42 -0700)]
Force non-color output for bionic FileCheck tests

Turning on color output will break the bionic compilation tests that
check for expected warnings, as they will be matching color output
against non-color expected values.  Turn off color locally.

Bug: 24273983
Change-Id: Ia3b3262ccece121217f0dc0997734b3ad65b928b

8 years agoAdd .PHONY for phony bionic test targets
Colin Cross [Fri, 25 Sep 2015 21:36:15 +0000 (14:36 -0700)]
Add .PHONY for phony bionic test targets

Bug: 24384320
Change-Id: I41038ff8b34391d03ce1e204e30e5ae34ec56614

8 years agoam 931e1399: Merge "Add cortex-a53.a57 target for 32 bit big/little."
Christopher Ferris [Fri, 25 Sep 2015 16:35:53 +0000 (16:35 +0000)]
am 931e1399: Merge "Add cortex-a53.a57 target for 32 bit big/little."

* commit '931e1399f13b35a139977354e179403184c649fa':
  Add cortex-a53.a57 target for 32 bit big/little.

8 years agoMerge "Add cortex-a53.a57 target for 32 bit big/little."
Christopher Ferris [Fri, 25 Sep 2015 16:29:33 +0000 (16:29 +0000)]
Merge "Add cortex-a53.a57 target for 32 bit big/little."

8 years agoForce cts to only run one test at a time.
Christopher Ferris [Fri, 25 Sep 2015 01:45:53 +0000 (18:45 -0700)]
Force cts to only run one test at a time.

Also, slightly increase the timeout for each test run.

Bug: 24198050
Change-Id: I2b0ebdebb909023d0f179e0a433c564266a99161

8 years agoam 70a9f0a3: Merge "Fix over read in strcpy/stpcpy/strcat."
Christopher Ferris [Thu, 24 Sep 2015 21:38:47 +0000 (21:38 +0000)]
am 70a9f0a3: Merge "Fix over read in strcpy/stpcpy/strcat."

* commit '70a9f0a3bc310c863b5c90c9860aae842f82e47f':
  Fix over read in strcpy/stpcpy/strcat.

8 years agoMerge "Fix over read in strcpy/stpcpy/strcat."
Christopher Ferris [Thu, 24 Sep 2015 21:26:40 +0000 (21:26 +0000)]
Merge "Fix over read in strcpy/stpcpy/strcat."

8 years agoFix over read in strcpy/stpcpy/strcat.
Christopher Ferris [Thu, 24 Sep 2015 05:09:09 +0000 (22:09 -0700)]
Fix over read in strcpy/stpcpy/strcat.

This bug will happen when these circumstances are met:

- Destination address & 0x7 == 1, strlen of src is 11, 12, 13.
- Destination address & 0x7 == 2, strlen of src is 10, 11, 12.
- Destination address & 0x7 == 3, strlen of src is 9, 10, 11.
- Destination address & 0x7 == 4, strlen of src is 8, 9, 10.

In these cases, the dest alignment code does a ldr which reads 4 bytes,
and it will read past the end of the source. In most cases, this is
probably benign, but if this crosses into a new page it could cause a
crash.

Fix the labels in the cortex-a9 strcat.

Modify the overread test to vary the dst alignment to expost this bug.
Also, shrink the strcat/strlcat overread cases since the dst alignment
variation increases the runtime too much.

Bug: 24345899
Change-Id: Ib34a559bfcebd89861985b29cae6c1e47b5b5855

8 years agoAdd cortex-a53.a57 target for 32 bit big/little.
Christopher Ferris [Thu, 17 Sep 2015 21:11:05 +0000 (14:11 -0700)]
Add cortex-a53.a57 target for 32 bit big/little.

The routines optimized for cortex-a7 and cortex-a53 cause performance
drops on cortex-a57. Instead create a target that is the middle ground
that works relatively well on either core.

Change-Id: Ie2b6cc9a59a01c7b30602ee368b2b90f5e886289

8 years agoam c38cee59: Merge "Prevent the build system from hiding our ABI."
Dan Albert [Wed, 23 Sep 2015 20:15:35 +0000 (20:15 +0000)]
am c38cee59: Merge "Prevent the build system from hiding our ABI."

* commit 'c38cee59dcba23576cc01bfbb97cecc5eb01a75c':
  Prevent the build system from hiding our ABI.

8 years agoMerge "Prevent the build system from hiding our ABI."
Dan Albert [Wed, 23 Sep 2015 20:08:09 +0000 (20:08 +0000)]
Merge "Prevent the build system from hiding our ABI."