OSDN Git Service

android-x86/bionic.git
8 years agoMerge "Fix dlopen of main executable by absolute path" into nyc-dev
Dimitry Ivanov [Wed, 18 May 2016 07:33:50 +0000 (07:33 +0000)]
Merge "Fix dlopen of main executable by absolute path" into nyc-dev

8 years agolinker: Allow caller to specify parent namespace
Dimitry Ivanov [Thu, 12 May 2016 22:20:21 +0000 (15:20 -0700)]
linker: Allow caller to specify parent namespace

This change enables apps to share libraries opened
with RTLD_GLOBAL between different classloader namespaces.

The new parameter to create_namespace allows native_loader
to instruct the linker to share libraries belonging to
global group from a specified namespace instead of
using the caller_ns.

Bug: http://b/28560538
Bug: https://code.google.com/p/android/issues/detail?id=208458
Change-Id: I5d0c62730bbed19cdeb16c7559c74aa262a2475f
(cherry picked from commit fc2da53440383fe1026e0eb287d643b577c2707d)

8 years agoFix dlopen of main executable by absolute path
Dimitry Ivanov [Tue, 17 May 2016 20:29:37 +0000 (13:29 -0700)]
Fix dlopen of main executable by absolute path

This CL adds initialization of inode for the main executable
which enables linker to resolve the correct soinfo when
application calls dlopen with absolute path to the
main executable.

Bug: http://b/28420266
Change-Id: I102e07bde454bd44c6e46075e3faeeb5092830d8
(cherry picked from commit 2ba1cf39ae6087249a839ec7b3793d4d4fa75438)

8 years agoFix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154 -s ours am: d95336ac42...
Christopher Ferris [Tue, 17 May 2016 19:12:23 +0000 (19:12 +0000)]
Fix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154  -s ours am: d95336ac42 am: 0993319651 am: 0ae30d9af8 am: 83b0671a33 am: 10a48fb557 am: fd84d78b1e am: b4d92e1362 am: ad80daaab5
am: 7189a4ccc2

* commit '7189a4ccc23598eeca0d769bc70916b6a9fe3bf6':
  Fix overflow testing in sbrk.

Change-Id: I3ede782a21037ce189b093dc4448ac5154a11f1b

8 years agoFix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4 -s ours am: f3a1f4244d...
Elliott Hughes [Tue, 17 May 2016 19:06:53 +0000 (19:06 +0000)]
Fix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4  -s ours am: f3a1f4244d am: c0c1abe518 am: b6789dc3b5 am: d54ed72cd8 am: 02f7869aef am: 1d59a2d6c3 am: 2f78cab202 am: b472137abf
am: 0d7fdf1499

* commit '0d7fdf149998059f4b3ac115d191ab53bf1b2f43':
  Fix brk/sbrk error checking.

Change-Id: I8ef9e4a387599a330e75985f740973f941cc335f

8 years agoFix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154 -s ours am: d95336ac42...
Christopher Ferris [Tue, 17 May 2016 19:06:52 +0000 (19:06 +0000)]
Fix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154  -s ours am: d95336ac42 am: 0993319651 am: 0ae30d9af8 am: 83b0671a33 am: 10a48fb557 am: fd84d78b1e am: b4d92e1362
am: ad80daaab5

* commit 'ad80daaab5cd1fc86ec2b61f0ed1eb8918a74a74':
  Fix overflow testing in sbrk.

Change-Id: Iacf234b6d224df38dc59fde9c3c9f8a82ba1ad0a

8 years agoFix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4 -s ours am: f3a1f4244d...
Elliott Hughes [Tue, 17 May 2016 19:04:02 +0000 (19:04 +0000)]
Fix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4  -s ours am: f3a1f4244d am: c0c1abe518 am: b6789dc3b5 am: d54ed72cd8 am: 02f7869aef am: 1d59a2d6c3 am: 2f78cab202
am: b472137abf

* commit 'b472137abf6159bd963381befbf4516242cbea0c':
  Fix brk/sbrk error checking.

Change-Id: Ibc660adf87cc5c61debd3e2e6e0ac58a4d661668

8 years agoFix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154 -s ours am: d95336ac42...
Christopher Ferris [Tue, 17 May 2016 19:03:59 +0000 (19:03 +0000)]
Fix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154  -s ours am: d95336ac42 am: 0993319651 am: 0ae30d9af8 am: 83b0671a33 am: 10a48fb557 am: fd84d78b1e
am: b4d92e1362

* commit 'b4d92e1362009637a1d0fb7ee7f96d2812a09202':
  Fix overflow testing in sbrk.

Change-Id: I0e8c70deedb9f43204d306a5fdad22b14703dbe5

8 years agoFix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4 -s ours am: f3a1f4244d...
Elliott Hughes [Tue, 17 May 2016 19:00:49 +0000 (19:00 +0000)]
Fix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4  -s ours am: f3a1f4244d am: c0c1abe518 am: b6789dc3b5 am: d54ed72cd8 am: 02f7869aef am: 1d59a2d6c3
am: 2f78cab202

* commit '2f78cab2026db556b166386323542708a3bc6ba3':
  Fix brk/sbrk error checking.

Change-Id: I20fce57c0bb3ee7fb99d2a9b10286b79c9458bd2

8 years agoFix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154 -s ours am: d95336ac42...
Christopher Ferris [Tue, 17 May 2016 19:00:48 +0000 (19:00 +0000)]
Fix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154  -s ours am: d95336ac42 am: 0993319651 am: 0ae30d9af8 am: 83b0671a33 am: 10a48fb557
am: fd84d78b1e

* commit 'fd84d78b1e0840905b80a4c4072db27b5e3aa2c9':
  Fix overflow testing in sbrk.

Change-Id: I8bf29354a9a631ad7c33a1eab3f66124546b7331

8 years agoFix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4 -s ours am: f3a1f4244d...
Elliott Hughes [Tue, 17 May 2016 18:57:30 +0000 (18:57 +0000)]
Fix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4  -s ours am: f3a1f4244d am: c0c1abe518 am: b6789dc3b5 am: d54ed72cd8 am: 02f7869aef
am: 1d59a2d6c3

* commit '1d59a2d6c3836e8f3a85062ce6725ae489c0122b':
  Fix brk/sbrk error checking.

Change-Id: I3cc097839dfc3534f31c114c15bc89dedb6ba866

8 years agoFix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154 -s ours am: d95336ac42...
Christopher Ferris [Tue, 17 May 2016 18:57:23 +0000 (18:57 +0000)]
Fix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154  -s ours am: d95336ac42 am: 0993319651 am: 0ae30d9af8 am: 83b0671a33
am: 10a48fb557

* commit '10a48fb5576d44326e35ee01d6163ba78faab9e4':
  Fix overflow testing in sbrk.

Change-Id: Ie5de1ba25e3a769ff57bd9280ae4d4d9625fe4ee

8 years agoFix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4 -s ours am: f3a1f4244d...
Elliott Hughes [Tue, 17 May 2016 18:52:47 +0000 (18:52 +0000)]
Fix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4  -s ours am: f3a1f4244d am: c0c1abe518 am: b6789dc3b5 am: d54ed72cd8
am: 02f7869aef

* commit '02f7869aefb851d721c3020fca5b35c0ad9de713':
  Fix brk/sbrk error checking.

Change-Id: I31322f99f91feb450792baa2781ad87873a0adc1

8 years agoFix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154 -s ours am: d95336ac42...
Christopher Ferris [Tue, 17 May 2016 18:52:47 +0000 (18:52 +0000)]
Fix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154  -s ours am: d95336ac42 am: 0993319651 am: 0ae30d9af8
am: 83b0671a33

* commit '83b0671a33a0da3d0ed962f8f01ff166069093dd':
  Fix overflow testing in sbrk.

Change-Id: Id325431f9de4bdfe102381da21445fa0781ccc82

8 years agoFix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4 -s ours am: f3a1f4244d...
Elliott Hughes [Tue, 17 May 2016 18:49:14 +0000 (18:49 +0000)]
Fix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4  -s ours am: f3a1f4244d am: c0c1abe518 am: b6789dc3b5
am: d54ed72cd8

* commit 'd54ed72cd89cb66211a011e92acd645dcc0c2243':
  Fix brk/sbrk error checking.

Change-Id: I630c562d6642cce13cb1697e4dfed2432323f57e

8 years agoFix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154 -s ours am: d95336ac42...
Christopher Ferris [Tue, 17 May 2016 18:49:09 +0000 (18:49 +0000)]
Fix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154  -s ours am: d95336ac42 am: 0993319651
am: 0ae30d9af8

* commit '0ae30d9af8c55d95edf7ddb1c2cb4f9dc0579f83':
  Fix overflow testing in sbrk.

Change-Id: I2d63124f58990f8ae3db35789bdd993d98d389ab

8 years agoFix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4 -s ours am: f3a1f4244d...
Elliott Hughes [Tue, 17 May 2016 18:44:48 +0000 (18:44 +0000)]
Fix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4  -s ours am: f3a1f4244d am: c0c1abe518
am: b6789dc3b5

* commit 'b6789dc3b5fbf8bbd6b407ffe53668138e828655':
  Fix brk/sbrk error checking.

Change-Id: Ief90c1e5bac313ff5a2d18117e70b67e62ced301

8 years agoFix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154 -s ours am: d95336ac42
Christopher Ferris [Tue, 17 May 2016 18:44:48 +0000 (18:44 +0000)]
Fix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154  -s ours am: d95336ac42
am: 0993319651

* commit '099331965176b368af627858f087dc0eccd0fc18':
  Fix overflow testing in sbrk.

Change-Id: I4bb6ccba7238bb786eee22cb96b0bc64c3f534b8

8 years agoFix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154 -s ours
Christopher Ferris [Tue, 17 May 2016 18:41:21 +0000 (18:41 +0000)]
Fix overflow testing in sbrk. am: 1944780b62 am: 3a5ebf3154  -s ours
am: d95336ac42

* commit 'd95336ac42e910e9dd11f01f5af65e8e1f4505cb':
  Fix overflow testing in sbrk.

Change-Id: I60e5637cf560af8b95ccc585f86c2f0fa04481f1

8 years agoFix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4 -s ours am: f3a1f4244d
Elliott Hughes [Tue, 17 May 2016 18:41:19 +0000 (18:41 +0000)]
Fix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4  -s ours am: f3a1f4244d
am: c0c1abe518

* commit 'c0c1abe518ae6a7470aaf50f2170c588eca0c69a':
  Fix brk/sbrk error checking.

Change-Id: I8e622e884c0fe5c7262bae9d42971c30f9b2e4a2

8 years agoFix overflow testing in sbrk. am: 1944780b62
Christopher Ferris [Tue, 17 May 2016 18:37:25 +0000 (18:37 +0000)]
Fix overflow testing in sbrk. am: 1944780b62
am: 3a5ebf3154  -s ours

* commit '3a5ebf3154f4ff22b9196f0cc43986a458b6cadc':
  Fix overflow testing in sbrk.

Change-Id: I48cdfd2a6d05fa81bcd3dc3415c078b5f79c1f0f

8 years agoFix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4 -s ours
Elliott Hughes [Tue, 17 May 2016 18:37:10 +0000 (18:37 +0000)]
Fix brk/sbrk error checking. am: f36b5088a3 am: 1d358c8ed4  -s ours
am: f3a1f4244d

* commit 'f3a1f4244dd53aa9ff5f3c13578c52d3f74aae86':
  Fix brk/sbrk error checking.

Change-Id: Iedd0f7a24a709b4ee7e9b39fd293d56d71d7ec6f

8 years agoFix brk/sbrk error checking. am: f36b5088a3
Elliott Hughes [Tue, 17 May 2016 18:34:36 +0000 (18:34 +0000)]
Fix brk/sbrk error checking. am: f36b5088a3
am: 1d358c8ed4  -s ours

* commit '1d358c8ed4443d358f8a6141071c2445b52c8077':
  Fix brk/sbrk error checking.

Change-Id: I8514cee9e52d38fe8aa92310d9566e8041c58efb

8 years agoFix overflow testing in sbrk.
Christopher Ferris [Tue, 17 May 2016 18:20:00 +0000 (18:20 +0000)]
Fix overflow testing in sbrk.
am: 1944780b62

* commit '1944780b62f84acb660f46c8ae37e10928de8dab':
  Fix overflow testing in sbrk.

Change-Id: I25d6ec44731e53b098b3d6a70ae7eb37e5821ed1

8 years agoFix brk/sbrk error checking.
Elliott Hughes [Tue, 17 May 2016 18:19:59 +0000 (18:19 +0000)]
Fix brk/sbrk error checking.
am: f36b5088a3

* commit 'f36b5088a32775c44661fb6b348ed0b6b3b67e65':
  Fix brk/sbrk error checking.

Change-Id: Ie98e3cd7f1f742a22f0f3f0bd1182e95c55a4280

8 years agoFix overflow testing in sbrk.
Christopher Ferris [Thu, 22 May 2014 02:03:34 +0000 (19:03 -0700)]
Fix overflow testing in sbrk.

Modify the overflow testing for sbrk.

Bug: 15188366
Bug: 28740702

(cherry picked from commit 738b0cc5e95a9a650e9621603f4dd8dd16b07568)

Change-Id: Id79a2314d86333d689b291bc32e513664df7e058

8 years agoFix brk/sbrk error checking.
Elliott Hughes [Sat, 26 Apr 2014 01:27:38 +0000 (18:27 -0700)]
Fix brk/sbrk error checking.

Note that the kernel returns the current break on error or if the requested
break is smaller than the minimum break, or the new break. I don't know where
we got the idea that the kernel could return -1.

Also optimizes the query case.

Also hides an accidentally-exported symbol for LP64.

Bug: 28740702

(cherry picked from commit 533dde4dbf87d6615952be3654fc74e5ff2e1003)

Change-Id: Ied16987756a501acf292368a14e3727ad631efa5

8 years agoAlways update search domain paths.
Pierre Imai [Fri, 6 May 2016 08:56:57 +0000 (17:56 +0900)]
Always update search domain paths.

_resolv_set_nameservers_for_net() so far did not update the search
paths, unless the servers changed as well.

BUG: 28437641
Change-Id: Id31f2d97c173e00357fb2ba95908afb4572c0fc1
(cherry picked from commit 06e2202a4cc6d9a0f382a0bbdcdbd2d527734d5f)

8 years agoRemove linker-namespace functions from the header
Dimitry Ivanov [Tue, 10 May 2016 00:37:39 +0000 (17:37 -0700)]
Remove linker-namespace functions from the header

They are intended for platform use only and we shouldn't have them
in the public header file.

Bug: http://b/28174921
Change-Id: Ib9b3d0fa9442cfa2e784a693ad567d1444d774e5
(cherry picked from commit 41fd29532b52bb66e3e1f4620053713fd0299f6e)

8 years agoFix linker crash on trying to unload main executable
Dimitry Ivanov [Thu, 5 May 2016 00:19:14 +0000 (17:19 -0700)]
Fix linker crash on trying to unload main executable

Linker crashed if linking of the main executable fails
instead of aborting with readable error message.

This patch modifies unload to soinfo_unload it all at once
in this particular case. This helps avoid situations when
one of the libraries on the DT_NEEDED list of main executable
has gotten unloaded by previous library unload because it
DT_NEEDED it too.

Example (consider following dependency tree):
main_executable
|-> liba.so
  |-> libb.so
|-> libb.so

The list of the libraries need to be unloaded in this case
is [liba.so, libb.so], but if linker does unload one by one
by the time it gets to libb.so - the soinfo for the library
is already unloaded (and the segments were unmapped).

Passing everything as an array helps soinfo_unload to check
if a library was already unloaded by looking into local_unload_list.

Bug: http://b/28565608
Change-Id: I7199290e10a186057dcf3b7b68dbce954af7dba1
(cherry picked from commit 83fcb542088db7874a387f4f41caac2019821fd2)

8 years agoMerge "Revert "Add a test exercising ptrace watchpoint functionality"" into nyc-dev
TreeHugger Robot [Tue, 3 May 2016 16:43:00 +0000 (16:43 +0000)]
Merge "Revert "Add a test exercising ptrace watchpoint functionality"" into nyc-dev

8 years agoRevert "Add a test exercising ptrace watchpoint functionality"
Pavel Labath [Tue, 3 May 2016 14:46:03 +0000 (14:46 +0000)]
Revert "Add a test exercising ptrace watchpoint functionality"

This test appears to be failing on shamu devices. Revert until we figure out what's the problem.

This reverts commit 88ce78d93a465c1c635901d26542d5ec07b6b6ee.

Bug: 28514348
Change-Id: I0d91ca5eb59eb3ccb5d48b02b245e0f1bcffb5bb

8 years agoMerge "Record the resolution start time on errors." into nyc-dev
Lorenzo Colitti [Mon, 2 May 2016 12:46:17 +0000 (12:46 +0000)]
Merge "Record the resolution start time on errors." into nyc-dev

8 years agoRecord the resolution start time on errors.
Pierre Imai [Wed, 27 Apr 2016 08:30:30 +0000 (17:30 +0900)]
Record the resolution start time on errors.

Also only record samples on the first try for a server.

BUG: 25731675

Change-Id: I10a68813c6636874e63aca1db661e63e1af72a2d
(cherry picked from commit 8b8611a0e6f1928b793c17e80d22c1e2810eadc0)

8 years agoMerge "Add a test exercising ptrace watchpoint functionality" into nyc-dev
Vince Harron [Thu, 28 Apr 2016 17:03:42 +0000 (17:03 +0000)]
Merge "Add a test exercising ptrace watchpoint functionality" into nyc-dev

8 years agoMerge "Make malloc debug symbols platform-private" into nyc-dev
TreeHugger Robot [Thu, 28 Apr 2016 03:53:53 +0000 (03:53 +0000)]
Merge "Make malloc debug symbols platform-private" into nyc-dev

8 years agoMerge "Add unwind information for r7 in arm syscalls." into nyc-dev
TreeHugger Robot [Thu, 28 Apr 2016 02:56:31 +0000 (02:56 +0000)]
Merge "Add unwind information for r7 in arm syscalls." into nyc-dev

8 years agoMake malloc debug symbols platform-private
Dimitry Ivanov [Thu, 28 Apr 2016 01:16:16 +0000 (18:16 -0700)]
Make malloc debug symbols platform-private

Bug: http://b/28432442
Change-Id: I96b9cb8b57726b4e8d53069e72666cf107cdeba2
(cherry picked from commit 54548d8cf91ba2e891b2dd0d25ae5956c62ad3ef)

8 years agoMerge "Add libvorbisidec.so to the grey-list" into nyc-dev
TreeHugger Robot [Thu, 28 Apr 2016 01:37:58 +0000 (01:37 +0000)]
Merge "Add libvorbisidec.so to the grey-list" into nyc-dev

8 years agoAdd unwind information for r7 in arm syscalls.
Christopher Ferris [Thu, 28 Apr 2016 01:31:02 +0000 (18:31 -0700)]
Add unwind information for r7 in arm syscalls.

It turns out that clang can emit code where the sp is saved in the r7
register on arm. Unfortunately, a lot of our syscalls overwrite that
value while the syscall is executing, so unwinding through that syscall
fails.

Update the syscall generation code to add unwinding information for
these uses.

Bug: 28411713
Change-Id: Id51a5d43c058631bb50834527f93fa299bbcf759

8 years agoAdd libvorbisidec.so to the grey-list
Dimitry Ivanov [Wed, 27 Apr 2016 23:55:45 +0000 (16:55 -0700)]
Add libvorbisidec.so to the grey-list

Bug: http://b/28403395
Change-Id: Ic718b1eea4616ca87b94eee211717c4475082cab

8 years agoDO NOT MERGE Fix DNS search path info.
Pierre Imai [Tue, 26 Apr 2016 13:08:40 +0000 (22:08 +0900)]
DO NOT MERGE Fix DNS search path info.

Fix the resolver information returned by
android_net_res_stats_get_info_for_net,
erroneously included MAXDNSRCH empty results if no search path was set.

BUG: 25731675
Change-Id: I97ef5d2d47dc62ca403a3323c7f14902e47b29b6
(cherry picked from commit 1b069a990ad783cd20327a35df59fcdc83e2e1e2)

8 years agoAdd a test exercising ptrace watchpoint functionality
Pavel Labath [Thu, 21 Apr 2016 14:13:22 +0000 (15:13 +0100)]
Add a test exercising ptrace watchpoint functionality

This adds a test which verifies that watchpoints work on devices
which support them. It is motivated by issues experienced by Nexus
5 devices, where watchpoints work only sporadically.

These tests spawn a process, trace it, and verify it hits a
watchpoint of various sizes while executing on all available CPUs
(to help catch a recent bug, where some debugging functionality
was not available on non-boot CPUs). All x86(_64) targets are
expected to support this functionality. In case of arm(64),
watchpoints are expected to work on devices where the relevant
syscall indicates watchpoint presence. In case of mips, this test
is skipped as I could not verify that the test would work
correctly due to lack of hardware, and this test is intrinsically
hardware-dependend.

cherry picked from commit 1faca6c95bc3e2c9456b9dc5362915be2a188340

Bug: 28395519
Change-Id: Ie5cbb16b9eef51f322c02ed8dce712c21cad94cf

8 years agoUpdate timezone data to 2016d
Neil Fuller [Thu, 21 Apr 2016 14:06:48 +0000 (15:06 +0100)]
Update timezone data to 2016d

Changes affecting future time stamps

    America/Caracas switches from -0430 to -04 on 2016-05-01 at 02:30.
    (Thanks to Alexander Krivenyshev for the heads-up.)

    Asia/Magadan switches from +10 to +11 on 2016-04-24 at 02:00.
    (Thanks to Alexander Krivenyshev and Matt Johnson.)

    New zone Asia/Tomsk, split off from Asia/Novosibirsk. It covers
    Tomsk Oblast, Russia, which switches from +06 to +07 on 2016-05-29
    at 02:00.  (Thanks to Stepan Golosunov.)

  Changes affecting past time stamps

    New zone Europe/Kirov, split off from Europe/Volgograd.  It covers
    Kirov Oblast, Russia, which switched from +04/+05 to +03/+04 on
    1989-03-26 at 02:00, roughly a year after Europe/Volgograd made
    the same change.  (Thanks to Stepan Golosunov.)

    Russia and nearby locations had daylight-saving transitions on
    1992-03-29 at 02:00 and 1992-09-27 at 03:00, instead of on
    1992-03-28 at 23:00 and 1992-09-26 at 23:00.  (Thanks to Stepan
    Golosunov.)

    Many corrections to historical time in Kazakhstan from 1991
    through 2005.  (Thanks to Stepan Golosunov.)  Replace Kazakhstan's
    invented time zone abbreviations with numeric abbreviations.

Bug: 28240832
Change-Id: If11e29f064f074f8b5812d397996322d007ab1d2

8 years agoDO NOT MERGE Add new info functions to resolver for use by Netd.
Pierre Imai [Mon, 18 Apr 2016 03:00:12 +0000 (12:00 +0900)]
DO NOT MERGE Add new info functions to resolver for use by Netd.

android_net_res_stats_get_info_for_net returns the current name servers, search
domains, parameters and stats for the given network ID.

android_net_res_stats_aggregate provides statistics such as errors counts from
the raw stats data reported by android_net_res_stats_get_info_for_net.

android_net_res_stats_get_usable_servers uses the data returned by
android_net_res_stats_aggregate to determine which of the servers are
considered valid or broken by the resolver.

BUG: 25731675
Change-Id: I6059b68e5e8b809027a4d3135f6081588bee8a7d

8 years agoDO NOT MERGE Store DNS server count in resolv_cache.
Pierre Imai [Mon, 18 Apr 2016 02:42:14 +0000 (11:42 +0900)]
DO NOT MERGE Store DNS server count in resolv_cache.

Instead of keeping a sentinel after nameservers[], nsaddrinfo[] and
nstats[], store the server count in the structure, freeing up memory and
eliminating the need to enumerate the server count every time
_resolv_is_nameservers_equal_locked() is invoked.

Also increase MAXNS from 3 to 4.

BUG: 28153323
Change-Id: I11a7257af695157c9e32019cd00c67b535b63c75
(cherry picked from commit fff356786f8a3a98c5c29f12bb7e59e6d98076a9)

8 years agoChange pointer to allocation in unit tests.
Christopher Ferris [Wed, 20 Apr 2016 23:44:39 +0000 (16:44 -0700)]
Change pointer to allocation in unit tests.

I changed the output from "pointer" to "allocation" for allocation
mismatches. I forgot to update the tests.

Bug: 28218530

(cherry picked from commit 97fd7d95f5abd3fbc3274b2591883ecdd9cc03cc)

Change-Id: I4076e4ddb5d2385e786e3ebca187d1e84e3c172c

8 years agoAdd malloc debug documentation.
Christopher Ferris [Fri, 18 Mar 2016 21:29:51 +0000 (14:29 -0700)]
Add malloc debug documentation.

Bug: 27902359
Bug: 28218530

(cherry picked from commit 713a8e36f863c27736ad4f29a5fd9bf84be83aaf)

Change-Id: I63c0cc53287d414ae6accd03c191f3474c02fc82

8 years agoSmall fixes to malloc debug.
Christopher Ferris [Fri, 15 Apr 2016 21:13:52 +0000 (14:13 -0700)]
Small fixes to malloc debug.

- Change the printed name from pointer to allocation to be explicit about
  what is wrong.
- Change the signal to be SIGRTMAX - 19 instead of SIGRTMIN. This should
  prevent problems if we have to reserve other real time signals.

Bug: 28218530

(cherry picked from commit ea26b33248663a836d2f0719cb4e46967b648fe2)

Change-Id: I707d5200c1804bdbf45fc46de0f2565016c48a82

8 years agoUpdate timezone data to 2016c
Neil Fuller [Fri, 15 Apr 2016 13:58:08 +0000 (14:58 +0100)]
Update timezone data to 2016c

 Changes affecting future time stamps

    Azerbaijan no longer observes DST.  (Thanks to Steffen Thorsen.)

    Chile reverts from permanent to seasonal DST.  (Thanks to Juan
    Correa for the heads-up, and to Tim Parenti for corrections.)
    Guess that future transitions are August's and May's second
    Saturdays at 24:00 mainland time.  Also, call the period from
    2014-09-07 through 2016-05-14 daylight saving time instead of
    standard time, as that seems more appropriate now.

  Changes affecting past time stamps

    Europe/Kaliningrad and Europe/Vilnius changed from +03/+04 to
    +02/+03 on 1989-03-26, not 1991-03-31.  Europe/Volgograd changed
    from +04/+05 to +03/+04 on 1988-03-27, not 1989-03-26.
    (Thanks to Stepan Golosunov.)

Bug: 27826144
Change-Id: I4353fa075e6cc0f277a72c928442a63835ec4d97

8 years agoMerge "Update timezone data to 2016b" into nyc-dev
Neil Fuller [Mon, 18 Apr 2016 08:09:57 +0000 (08:09 +0000)]
Merge "Update timezone data to 2016b" into nyc-dev

8 years agoRevert "Temporary move __udivdi3 back to LIBC for x86"
Dimitry Ivanov [Sat, 16 Apr 2016 00:58:12 +0000 (00:58 +0000)]
Revert "Temporary move __udivdi3 back to LIBC for x86"

This reverts commit bc02fb964a59983521c5f6cf80b1189434952780.

Bug: http://b/26406724
Bug: http://b/26423217
Change-Id: I8e3186fc76502d6818753e5d76a7c145207ed9a3
(cherry picked from commit 9f39326a740860a0cfd472115b929bf0ab83799b)

8 years agoRemove dangling links in secondary namespaces
Dimitry Ivanov [Mon, 11 Apr 2016 19:42:58 +0000 (12:42 -0700)]
Remove dangling links in secondary namespaces

linker didn't remove link to the soinfo from shared
namespaces on soinfo_unload, because it didn't keep
record of all namespaces the library is added to.

This change adds test for this and also fixes the
problem by introducing list of secondary namespaces
to soinfo, which is used to remove soinfo in
soinfo::remove_all_links().

Bug: http://b/28115950
Change-Id: Ifbf6e54f92fa6e88f86b6a8dd6dc22d4553afd22
(cherry picked from commit aca299ac4721809d6fc61e25c505bb59acd23fbc)

8 years agoMove linker-namespace functions to LIBC_PLATFORM
Dimitry Ivanov [Wed, 13 Apr 2016 22:01:37 +0000 (15:01 -0700)]
Move linker-namespace functions to LIBC_PLATFORM

Bug: http://b/28174921
Change-Id: I089dbeeea813fc2128b9c2f6268a578d23a1954a

8 years agolinker: unload RTLD_NODELETE libraries when loading fails
Dimitry Ivanov [Wed, 13 Apr 2016 18:46:59 +0000 (11:46 -0700)]
linker: unload RTLD_NODELETE libraries when loading fails

Linker was not unloading libraries marked with RTLD_NODELETE
even when there was a error on load. For example when one of
dt_needed libraries was not found.

Bug: http://b/27911891
Change-Id: Ibc0bf110aa41fbfdc9f327ad8c364f2e3600af71

8 years agoAdd libgui.so to the grey-list
Dimitry Ivanov [Tue, 12 Apr 2016 21:53:06 +0000 (14:53 -0700)]
Add libgui.so to the grey-list

Bug: http://b/28151000
Change-Id: I7ba8f78df7dbf32de4839cc5a95ef10e8444715c

8 years agoAdd libexpat.so to the grey-list
Dimitry Ivanov [Fri, 8 Apr 2016 16:49:07 +0000 (09:49 -0700)]
Add libexpat.so to the grey-list

Bug: http://b/28071598
Change-Id: I5545a06edfd8e0ab5b011392860ddccd6c04677f

8 years agoDO NOT MERGE: Reduce the amount of logging in Bionic's resolver.
Pierre Imai [Wed, 6 Apr 2016 02:30:02 +0000 (11:30 +0900)]
DO NOT MERGE: Reduce the amount of logging in Bionic's resolver.

Change-Id: I3b7b5ef5a5ee6ba3ad8654f792400d42d5ecd4b9

8 years agoDO NOT MERGE: Fix off-by-one error in res_cache.c
Pierre Imai [Tue, 5 Apr 2016 06:49:08 +0000 (15:49 +0900)]
DO NOT MERGE: Fix off-by-one error in res_cache.c

(cherry picked from commit 03844d8cdb43c351d2c94eb67242966019f7600d)

Change-Id: Ib5fff46ac9211716a1577ee25bb22461c489ea9f

8 years agoDO NOT MERGE: Ignore unreliable DNS servers.
Pierre Imai [Mon, 22 Feb 2016 08:50:41 +0000 (17:50 +0900)]
DO NOT MERGE: Ignore unreliable DNS servers.

Collect statistics about DNS query success state and delay. Ignore
servers that have been tried at least five times and have a success rate
of < 0.25. Retry these servers once every 180s.

Bug: 25731675

(cherry picked from commit 6b3f0d65f2c706625e5efb495df0f2c6178b965a)

Change-Id: Id989404b14fd885fb31a5a4de36a4186be1c9ad1

8 years agoFix the stack-protector test for x86/x86-64.
Elliott Hughes [Fri, 1 Apr 2016 21:51:10 +0000 (14:51 -0700)]
Fix the stack-protector test for x86/x86-64.

Built for fugu this was working fine, but built for generic x86/x86-64
the compiler was (a) optimizing out all the stack writes and (b) inserting
enough padding on x86-64 for the canary to be safely out of the way.

While here, let's tighten up this test so we test that it's sufficient to
only overwrite the buffer by one byte...

Bug: http://b/27815668
Change-Id: I80a646de4b30fd5c78df20fdaa7e3eb163585caf

8 years agoUse consistent quoting in linker messages.
Elliott Hughes [Fri, 1 Apr 2016 17:10:54 +0000 (10:10 -0700)]
Use consistent quoting in linker messages.

Using single quotes can be more convenient -- because there's no need to
escape -- but the vast majority of existing quoting was done with double
quotes, so move in that direction.

Bug: http://b/27524191
Change-Id: I8f58593120e4c8aeaec45e16fc0178e9c162454d

8 years agoMerge "CloseArchive() to free memory when OpenArchive fails." into nyc-dev
Yabin Cui [Wed, 30 Mar 2016 19:29:21 +0000 (19:29 +0000)]
Merge "CloseArchive() to free memory when OpenArchive fails." into nyc-dev

8 years agoCloseArchive() to free memory when OpenArchive fails.
Yabin Cui [Tue, 22 Mar 2016 00:10:12 +0000 (17:10 -0700)]
CloseArchive() to free memory when OpenArchive fails.

Bug: 26962895
Change-Id: I42418eee320ddae857b42572690316c53f638e85
(cherry picked from commit 722072d65abb1b9fa709f5c7ae8afd98ef5ab7af)

8 years agoMerge "Copy the entire zero-separated DNS seach domain string." into nyc-dev
Pierre Imai [Wed, 30 Mar 2016 07:38:26 +0000 (07:38 +0000)]
Merge "Copy the entire zero-separated DNS seach domain string." into nyc-dev

8 years agoMerge "Fix test getauxval.arm_has_AT_HWCAP2." into nyc-dev
Yabin Cui [Wed, 30 Mar 2016 01:24:12 +0000 (01:24 +0000)]
Merge "Fix test getauxval.arm_has_AT_HWCAP2." into nyc-dev

8 years agoAdd a checksum to jmp_buf on x86_64.
Josh Gao [Tue, 29 Mar 2016 21:53:26 +0000 (14:53 -0700)]
Add a checksum to jmp_buf on x86_64.

Bug: http://b/27856501
Bug: http://b/27417786
Change-Id: I541f5a7ce4972ef56b3f69e73927ca7df362609a
(cherry picked from commit 686e5f6f69c5c30a09d73e42657cb502a261ad6a)

8 years agoDelete lies from x86_64 setjmp implementation.
Josh Gao [Tue, 29 Mar 2016 21:34:03 +0000 (14:34 -0700)]
Delete lies from x86_64 setjmp implementation.

Previously, the implementation of setjmp on x86_64 claimed that
sigprocmask would write to two longs' worth of bytes.

Bug: http://b/27856501
Change-Id: I9f32b40ac773a0cd91a976aace5bfba6e67fb0f8
(cherry picked from commit c244fcb8a3396f94976a56379cce144c4451c3d4)

8 years agoAdd a checksum to jmp_buf on x86.
Josh Gao [Tue, 29 Mar 2016 21:03:09 +0000 (14:03 -0700)]
Add a checksum to jmp_buf on x86.

Bug: http://b/27856501
Bug: http://b/27417786
Change-Id: Id5a0a81fc38e311bff678cbc7dc2219bc0074503
(cherry picked from commit 926078539346f5d3cc864c9ba25993e8c6437c07)

8 years agoFix test getauxval.arm_has_AT_HWCAP2.
Yabin Cui [Tue, 29 Mar 2016 22:41:49 +0000 (15:41 -0700)]
Fix test getauxval.arm_has_AT_HWCAP2.

Bug: 27874785
Change-Id: Ibb39087c5353a0cca7783d39498b370e478fe91c
(cherry picked from commit 78f5eb0498e0bae7f64f749b252aee7e56621b34)

8 years agolibc: implement kernel vdso syscalls for i386
Mingwei Shi [Thu, 12 Nov 2015 07:02:14 +0000 (07:02 +0000)]
libc: implement kernel vdso syscalls for i386

This patch uses __kernel_vsyscall instead of "int 0x80"
as the syscall entry point. AT_SYSINFO points to
an adapter to mask the arch specific difference and gives a
performance boost on i386 architecture.

Bug: http://b/27533895
Change-ID: Ib340c604d02c6c25714a95793737e3cfdc3fc5d7
Signed-off-by: Mingwei Shi <mingwei.shi@intel.com>
(cherry picked from commit be910529322b461148debefd50b9e0d67ae84f8e)

8 years agoCopy the entire zero-separated DNS seach domain string.
Pierre Imai [Mon, 29 Feb 2016 07:31:55 +0000 (16:31 +0900)]
Copy the entire zero-separated DNS seach domain string.

The DNS search string contains zeros as domain separator. The resolver
code erroneously used strlcpy(), which resulted in only the first domain
to be copied. The code uses pointers into this string to access the
individual domains. Since the structure is zero-initialized, this bug only
resulted in zero-length domains instead of accessing unitialized memory.

BUG: 27312811
Change-Id: Ia9d066c405dfcc5e82d6766d93ead2ce574e7b0d
(cherry picked from commit 0967fc7e59cda0ea2561b0eaa58ed842da7c0eb9)

8 years agoMerge "linker: hide the pointer to soinfo" into nyc-dev
Dimitry Ivanov [Mon, 28 Mar 2016 23:36:40 +0000 (23:36 +0000)]
Merge "linker: hide the pointer to soinfo" into nyc-dev

8 years agoMerge changes Idd0fb06a,Ia17dd540,I96c6592a,I0eacb3f0,I8e2895ec, ... into nyc-dev
Dimitry Ivanov [Mon, 28 Mar 2016 22:39:39 +0000 (22:39 +0000)]
Merge changes Idd0fb06a,Ia17dd540,I96c6592a,I0eacb3f0,I8e2895ec, ... into nyc-dev

* changes:
  Do not add linker the _r_debug.r_map on link_image
  Improvements to dynamic linker messages
  Move gdb support functions to a separate file
  Use insert_link_map_into_debug_map for executable
  Update a comment for init_linker_info_for_gdb
  Initialize linker link_map for gdb directly

8 years agolinker: hide the pointer to soinfo
Dimitry Ivanov [Thu, 24 Mar 2016 22:30:30 +0000 (15:30 -0700)]
linker: hide the pointer to soinfo

Handle no longer is a pointer to soinfo of
a corresponding library. This is done to
prevent access to linker internal fields.

Bug: http://b/25593965
Change-Id: I62bff0d0e5b2dc842e6bf0babb30fcc4c000be24
(cherry picked from commit d88e1f350111b3dfd71c6492321f0503cb5540db)

8 years agoDo not add linker the _r_debug.r_map on link_image
Dimitry Ivanov [Tue, 1 Mar 2016 23:55:56 +0000 (15:55 -0800)]
Do not add linker the _r_debug.r_map on link_image

Bug: http://b/27533895
Change-Id: Idd0fb06a5d9f400c0608ae532cc4c575211810fa
(cherry picked from commit e97d8ed70e44db619de9975a43ed2d1509653d74)

8 years agoImprovements to dynamic linker messages
Dimitry Ivanov [Thu, 18 Feb 2016 22:37:44 +0000 (14:37 -0800)]
Improvements to dynamic linker messages

Error messages now include executable name,
also linker doesn't abort if called on itself.

Bug: http://b/27533895
Change-Id: Ia17dd540919544b28062ed71751a1d79ee865206
(cherry picked from commit 9f0a6954c602e63f85746237e1a333b4571d757d)

8 years agoMove gdb support functions to a separate file
Dimitry Ivanov [Thu, 18 Feb 2016 00:08:03 +0000 (16:08 -0800)]
Move gdb support functions to a separate file

Move gdb support functions and variables to
linker_gdb_support.h/cpp

Bug: http://b/27533895
Change-Id: I96c6592a7055715b18f1137367470fe80987263f
(cherry picked from commit 6b788eeff2ea0019849517e796b762ae790ca142)

8 years agoUse insert_link_map_into_debug_map for executable
Dimitry Ivanov [Wed, 17 Feb 2016 23:25:25 +0000 (15:25 -0800)]
Use insert_link_map_into_debug_map for executable

Use insert_link_map_into_debug_map to insert the main
executable's link_map to r_debug

Bug: http://b/27533895
Change-Id: I0eacb3f030ea3eb16ed50ad2011d604beece2d03
(cherry picked from commit f3064e4bc7f4dee351bc2eb9272db3e9792dc683)

8 years agoUpdate a comment for init_linker_info_for_gdb
Dimitry Ivanov [Wed, 17 Feb 2016 22:13:06 +0000 (14:13 -0800)]
Update a comment for init_linker_info_for_gdb

Bug: http://b/27533895
Change-Id: I8e2895ecfcc6f77a180c3735342afc93be5923d3
(cherry picked from commit 6400129628ef24adb57fc4822d4fd54b8967701b)

8 years agoInitialize linker link_map for gdb directly
Dimitry Ivanov [Tue, 16 Feb 2016 21:43:35 +0000 (13:43 -0800)]
Initialize linker link_map for gdb directly

Remove unnecessary construction of soinfo when
initializing linker link_map for gdb.

Bug: http://b/27533895
Change-Id: Idf32cee56309aa9c9cf260efbd17a9deae9a756b
(cherry picked from commit 8d22dd53feddcc7a84e1cc481f171fd4dfe095a1)

8 years agoDon't bother insisting on AT_HWCAP2 for 32-bit devices.
Elliott Hughes [Mon, 28 Mar 2016 18:53:12 +0000 (11:53 -0700)]
Don't bother insisting on AT_HWCAP2 for 32-bit devices.

Bug: http://b/27874785

(cherry picked from commit 900a4dc5a8fcabcc85eb17a0d1ee2295cae7b180)

Change-Id: Ia8c3543c51861030b33f8a4e0c0b88d7cca6e11e

8 years agoFix pthread.pthread_barrier_smoke test.
Yabin Cui [Tue, 22 Mar 2016 20:45:55 +0000 (13:45 -0700)]
Fix pthread.pthread_barrier_smoke test.

pthread_barrier_smoke test uses WaitUntilThreadSleep() to wait until
BarrierTestHelper threads sleep in pthread_barrier_wait(). But this
is flaky as there a two futex_wait places in pthread_barrier_wait.
This patch modifies this test to avoid using WaitUntilThreadSleep().

Bug: 27780937
Bug: 27811377
Change-Id: I4c36b82cce9345d5088f8854b289dc5bf7a08e8c
(cherry picked from commit 81d2797e33d6f95c0b79e20ae8a04f2a4f3841cc)

8 years agoMerge "Update Android.bp to match Android.mk" into nyc-dev
Colin Cross [Fri, 25 Mar 2016 19:54:27 +0000 (19:54 +0000)]
Merge "Update Android.bp to match Android.mk" into nyc-dev

8 years agoFix the AT_HWCAP2 test.
Elliott Hughes [Fri, 25 Mar 2016 15:29:05 +0000 (08:29 -0700)]
Fix the AT_HWCAP2 test.

"I have none of these capabilities" is a legitimate response, and
distinct from "I don't know what my capabilities are". It's the latter
I meant to test for.

Bug: http://b/27810985

(cherry picked from commit d4c91124906b6d73a2be336bbd305cd2678e04b2)

Change-Id: I4093948039a658e926e9b5e28d19b1344c70bd0e

8 years agoAdjust test to let it pass on libhoudini.
Yabin Cui [Tue, 8 Mar 2016 01:44:58 +0000 (17:44 -0800)]
Adjust test to let it pass on libhoudini.

When using libhoudini to run arm code on x86 platforms, we can't
assume the main thread allocates local variables at the stack
declared by kernel.

(cherry picked from commit 61e4d461e5c1c5108fdfe2a9f1edec6717e7461e)

Bug: http://b/27815309
Change-Id: Ic714a8e633a0bb6e85b38ee0e01e3439d0a0cea5

8 years agoUpdate Android.bp to match Android.mk
Colin Cross [Thu, 24 Mar 2016 20:41:30 +0000 (13:41 -0700)]
Update Android.bp to match Android.mk

Change-Id: Ib5bbe66a398734b6db9a40d51f2849d1531853ef

8 years agoRevert "Update timezone data to 2016b"
Neil Fuller [Thu, 24 Mar 2016 15:22:09 +0000 (15:22 +0000)]
Revert "Update timezone data to 2016b"

The bionic change merged down from upstream but the
external/icu one didn't.
A replacement change will be submitted along with one for
external/icu.

This reverts commit 7bcee86edcc8cb0f969c719fed9bc3bd04de142f.

Change-Id: I0dd28e02231e6ebba5b61131b22889a1268a0675

8 years agoUpdate timezone data to 2016b
Neil Fuller [Tue, 22 Mar 2016 11:30:36 +0000 (11:30 +0000)]
Update timezone data to 2016b

  Changes affecting future time stamps

    New zones Europe/Astrakhan and Europe/Ulyanovsk for Astrakhan and
    Ulyanovsk Oblasts, Russia, both of which will switch from +03 to +04 on
    2016-03-27 at 02:00 local time.  They need distinct zones since their
    post-1970 histories disagree.  New zone Asia/Barnaul for Altai Krai and
    Altai Republic, Russia, which will switch from +06 to +07 on the same date
    and local time.  Also, Asia/Sakhalin moves from +10 to +11 on 2016-03-27
    at 02:00.  (Thanks to Alexander Krivenyshev for the heads-up, and to
    Matt Johnson and Stepan Golosunov for followup.)

    As a trial of a new system that needs less information to be made up,
    the new zones use numeric time zone abbreviations like "+04"
    instead of invented abbreviations like "ASTT".

    Haiti will not observe DST in 2016.  (Thanks to Jean Antoine via
    Steffen Thorsen.)

    Palestine's spring-forward transition on 2016-03-26 is at 01:00, not 00:00.
    (Thanks to Hannah Kreitem.) Guess future transitions will be March's last
    Saturday at 01:00, not March's last Friday at 24:00.

  Changes affecting past time stamps

    Europe/Chisinau observed DST during 1990, and switched from +04 to
    +03 at 1990-05-06 02:00, instead of switching from +03 to +02.
    (Thanks to Stepan Golosunov.)

    1991 abbreviations in Europe/Samara should be SAMT/SAMST, not
    KUYT/KUYST.  (Thanks to Stepan Golosunov.)

The update produced (apparently benign) warnings from zic as suggested here:
http://mm.icann.org/pipermail/tz-announce/2016-March/000036.html

Bug: 27656428
Change-Id: I31c7805b6fdb458c3ee9e695b3dff7bd003d8cab

8 years agoUpdate timezone data to 2016b
Neil Fuller [Tue, 22 Mar 2016 17:30:35 +0000 (17:30 +0000)]
Update timezone data to 2016b
am: 7bcee86

* commit '7bcee86edcc8cb0f969c719fed9bc3bd04de142f':
  Update timezone data to 2016b

8 years agoUpdate timezone data to 2016b
Neil Fuller [Tue, 22 Mar 2016 11:30:36 +0000 (11:30 +0000)]
Update timezone data to 2016b

  Changes affecting future time stamps

    New zones Europe/Astrakhan and Europe/Ulyanovsk for Astrakhan and
    Ulyanovsk Oblasts, Russia, both of which will switch from +03 to +04 on
    2016-03-27 at 02:00 local time.  They need distinct zones since their
    post-1970 histories disagree.  New zone Asia/Barnaul for Altai Krai and
    Altai Republic, Russia, which will switch from +06 to +07 on the same date
    and local time.  Also, Asia/Sakhalin moves from +10 to +11 on 2016-03-27
    at 02:00.  (Thanks to Alexander Krivenyshev for the heads-up, and to
    Matt Johnson and Stepan Golosunov for followup.)

    As a trial of a new system that needs less information to be made up,
    the new zones use numeric time zone abbreviations like "+04"
    instead of invented abbreviations like "ASTT".

    Haiti will not observe DST in 2016.  (Thanks to Jean Antoine via
    Steffen Thorsen.)

    Palestine's spring-forward transition on 2016-03-26 is at 01:00, not 00:00.
    (Thanks to Hannah Kreitem.) Guess future transitions will be March's last
    Saturday at 01:00, not March's last Friday at 24:00.

  Changes affecting past time stamps

    Europe/Chisinau observed DST during 1990, and switched from +04 to
    +03 at 1990-05-06 02:00, instead of switching from +03 to +02.
    (Thanks to Stepan Golosunov.)

    1991 abbreviations in Europe/Samara should be SAMT/SAMST, not
    KUYT/KUYST.  (Thanks to Stepan Golosunov.)

The update produced (apparently benign) warnings from zic as suggested here:
http://mm.icann.org/pipermail/tz-announce/2016-March/000036.html

Bug: 27656428
Change-Id: Ibbf7237344c21d22a0f781f547fbc95b46623ece

8 years agoAdd a CTS test to ensure AT_HWCAP2 is reported.
Elliott Hughes [Sat, 19 Mar 2016 01:36:04 +0000 (18:36 -0700)]
Add a CTS test to ensure AT_HWCAP2 is reported.

This is important for performance of 32-bit ARM crypto code in apps.

Bug: http://b/27750752

(cherry picked from commit ebb4895c68f08bad682f90e66b041f1585d7bafa)

Change-Id: Iec69fe57b93da0480ef3bbd4c9e7882c8aa55011

8 years agoFix race in malloc debug option free_track.
Christopher Ferris [Wed, 16 Mar 2016 05:39:39 +0000 (22:39 -0700)]
Fix race in malloc debug option free_track.

The free track mechanism could fail if, at the same time a free occurs,
another thread is trying to free and verify the same allocation. This
doesn't work if the freed allocation is added to the list and we still
do work on it. The fix is to only add to the free list when we are done
with the allocation.

Also fix a problem where the usable size is computed incorrectly because
two of the arguments where reversed.

In addition, add a check that the allocation being verified has the correct
tag before trying to check the body of the allocation.

Add a test to catch the original failure.

Add a test for the tag being different.

Bug: 27601650

(cherry picked from commit d0919623a2ef56107590eca9a9522a250fb8bd4a)

Change-Id: Ie1aa4d9a829da9a96de9b8bd1cc8fc681e9cab15

8 years agoFix problem where unknown option is not an error.
Christopher Ferris [Mon, 14 Mar 2016 22:29:46 +0000 (15:29 -0700)]
Fix problem where unknown option is not an error.

If the first option is found, then any unknown options are simply
ignored, but do not produce an error. Fixed this so that each
option found is actually verified to exist.

Bug: 27620263

(cherry picked from commit a4b14252752d14454afb48feb3272e8689e3a66d)

Change-Id: I709774456283879e2a8aa5ce375899eaa79f6bc3

8 years agoRemove missing DT_SONAME warning from the toast
Dimitry Ivanov [Tue, 15 Mar 2016 05:14:23 +0000 (22:14 -0700)]
Remove missing DT_SONAME warning from the toast

Bug: http://b/27613086
Change-Id: I9410f07dbde002d936319516313b27f9794dd597

8 years agoSilence false positive warnings on GCC.
Josh Gao [Tue, 15 Mar 2016 01:15:15 +0000 (18:15 -0700)]
Silence false positive warnings on GCC.

We still use GCC to build the bionic unit tests into CTS, and it emits a
false positive -Wmissing-field-initializers warning for the C++11 aggregate
initialization syntax `Foo foo = {}`.

Bug: http://b/27656293
Change-Id: I016d8dae6d6cd28afe4bc19250c2a8fba908f8e6
(cherry picked from commit d7878529b80295625df610bd32dadf11d507e8c0)

8 years agoInit functions after debug malloc succeeds.
Christopher Ferris [Fri, 11 Mar 2016 20:27:02 +0000 (12:27 -0800)]
Init functions after debug malloc succeeds.

Do not initialize all of the global function pointers associated with
debug malloc until the initialization has completed correctly.

Bug: 27600760

(cherry picked from commit 20f2c1ebd5b5860e69772b228ccda756eafc1398)

Change-Id: Ibc45213f55be9c8e95fb838b583353cd090c8b88

8 years agoMerge changes I3f1c1310,Ia8dc3481,I6b19fd63 into nyc-dev
Colin Cross [Thu, 10 Mar 2016 22:49:50 +0000 (22:49 +0000)]
Merge changes I3f1c1310,Ia8dc3481,I6b19fd63 into nyc-dev

* changes:
  malloc_debug: fix multiplication overflow in debug_calloc
  malloc_debug: round 0 byte allocations up to 1 byte
  malloc_debug: iterate: use usable_size

8 years agoMerge "debuggerd: rethrow the full signal we receive, always." into nyc-dev
Josh Gao [Thu, 10 Mar 2016 22:32:34 +0000 (22:32 +0000)]
Merge "debuggerd: rethrow the full signal we receive, always." into nyc-dev

8 years agomalloc_debug: fix multiplication overflow in debug_calloc
Colin Cross [Thu, 10 Mar 2016 21:01:27 +0000 (13:01 -0800)]
malloc_debug: fix multiplication overflow in debug_calloc

The over flow check for nmemb * bytes in debug_calloc is incorrect,
use the builtin overflow functions to check for multiplication and
addition overflow.

Change-Id: I3f1c13102621bc5380be1f69caa88dba2118f3cb