OSDN Git Service

android-x86/bionic.git
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

8 years agodebuggerd: rethrow the full signal we receive, always.
Josh Gao [Tue, 8 Mar 2016 23:27:15 +0000 (15:27 -0800)]
debuggerd: rethrow the full signal we receive, always.

The previous code assumed that returning would be sufficient to rethrow
signals like SIGSEGV. This is not true, for example,  in the case where a
SIGSEGV is sent via kill(2). We were previously only sending the signal
to ourselves in some cases, because using kill(2) would lose information
in the siginfo_t argument. Use rt_tgsigqueueinfo(2) instead to preserve
its contents.

Bug: http://b/27367422
Change-Id: I1be822818d5905461979c7e12dc4e9c25049273b
(cherry picked from commit 61cf3f3e033d2d7d13b06e0ae009ff12db787860)

8 years agoImprove and fix the stack-protector tests.
Elliott Hughes [Fri, 4 Mar 2016 19:53:09 +0000 (11:53 -0800)]
Improve and fix the stack-protector tests.

Bug: http://b/26888853

(cherry picked from commit fc69a8ad5f0d9b63de48e3858fb4811ede7ac64e)

Change-Id: Ibc431076000b9a8db46f68f858480045b03b6e79

8 years agomalloc_debug: round 0 byte allocations up to 1 byte
Colin Cross [Thu, 10 Mar 2016 01:56:14 +0000 (17:56 -0800)]
malloc_debug: round 0 byte allocations up to 1 byte

0 byte allocations can cause problems if they are immediately followed
by another allocation with no header, as both allocations will have the
same address.  Treat 0 byte allocations as 1 byte allocations so that
debug_iterate will return separate addresses for them.

Bug: 27578580
Change-Id: Ia8dc3481fa7062391e9b3ae58a36e8d47e7ee557

8 years agomalloc_debug: iterate: use usable_size
Colin Cross [Thu, 10 Mar 2016 00:33:44 +0000 (16:33 -0800)]
malloc_debug: iterate: use usable_size

malloc_iterate with malloc debug enabled was returning allocation sizes
using the requested size instead of usable size.  If anything wrote
pointers above the requested size but below the usable size, those
pointers would be invisible to libmemunreachable and referenced
allocations could be reported as a leak.

Bug: 27107100
Change-Id: I6b19fd631f68ce93b3aee408cc3d296ec457bd01

8 years agoSwitch bionic over to google-benchmark.
Elliott Hughes [Wed, 17 Feb 2016 18:23:52 +0000 (10:23 -0800)]
Switch bionic over to google-benchmark.

Also removes the old benchmarking library.

(cherry picked from commit 281e06ba69ce6f591697acf65a24651050809920)

Bug: http://b/24803663
Change-Id: Idde5aa759b03d2b3cb51e32785beaf1c46476fa3

8 years agoAdd x86 optimization of rint functions and tests
jzha136 [Fri, 12 Jun 2015 16:15:02 +0000 (09:15 -0700)]
Add x86 optimization of rint functions and tests

Signed-off-by: Jingwei Zhang <jingwei.zhang@intel.com>
(cherry picked from commit f3ea093ebbfd9bd348ac16a46c96b637e3696c82)

Bug: http://b/27533895
Change-Id: I5703f4e2189bb1d12d8864757d72a327f17a74f9

8 years agoMerge "Revert "libm: rename LIBC_PRIVATE to LIBC_DEPRECATED"" into nyc-dev
Dimitry Ivanov [Mon, 7 Mar 2016 17:22:59 +0000 (17:22 +0000)]
Merge "Revert "libm: rename LIBC_PRIVATE to LIBC_DEPRECATED"" into nyc-dev

8 years agoRevert "libm: rename LIBC_PRIVATE to LIBC_DEPRECATED"
Dimitry Ivanov [Mon, 7 Mar 2016 17:13:34 +0000 (17:13 +0000)]
Revert "libm: rename LIBC_PRIVATE to LIBC_DEPRECATED"

Vendor blobs strike back.

This reverts commit 9721bb3f0b7c8c45f42d2874c908a177615f42b5.

Bug:
http://b/27518190

Change-Id: I3fbe71123840edc51a1a804f6c8e83c84958192d

8 years agoforkpty: set the output fd to -1 on the slave side.
Josh Gao [Sat, 5 Mar 2016 02:04:41 +0000 (18:04 -0800)]
forkpty: set the output fd to -1 on the slave side.

glibc, FreeBSD, OpenBSD, and Darwin all just leave the fd unchanged and
possibly uninitialized. Setting it to -1 seems friendlier, though.

Bug: http://b/27506278
Change-Id: I7acdc8eecbea4404d5fb4ba0b4d572245a323886

8 years agoDon't call clock_getres in sysconf.
Elliott Hughes [Sat, 5 Mar 2016 02:25:57 +0000 (18:25 -0800)]
Don't call clock_getres in sysconf.

There are a hundred other reasons why we can't run on kernels old enough
to not have all the clocks covered by sysconf.

This was causing trouble for jemalloc 4.1.0 in a seccomp-constrained process
because jemalloc 4.1.0 introduced a call to sysconf that caused us to make
clock_getres syscalls for the first time, leading to SIGSYS.

Bug: http://b/27408522

(cherry picked from commit d2b8de2cd16ecd86c830d98c58bcf392475bd0b3)

Change-Id: Id46a0f2c2804c597a8c9091690a8a1fc4a65f4cd

8 years agolibm: rename LIBC_PRIVATE to LIBC_DEPRECATED
Dimitry Ivanov [Fri, 4 Mar 2016 19:05:52 +0000 (11:05 -0800)]
libm: rename LIBC_PRIVATE to LIBC_DEPRECATED

Bug: http://b/26386014
Change-Id: Ia32411ce779f9dcf2cf7910d8658ffa753c73af9
(cherry picked from commit 9296460bf4dc64d91a83032c8323816430048419)

8 years agoMerge "Add libsqlite.so to the grey-list" into nyc-dev
Dimitry Ivanov [Fri, 4 Mar 2016 02:33:35 +0000 (02:33 +0000)]
Merge "Add libsqlite.so to the grey-list" into nyc-dev

8 years agoAdd libsqlite.so to the grey-list
Dimitry Ivanov [Fri, 4 Mar 2016 02:13:18 +0000 (18:13 -0800)]
Add libsqlite.so to the grey-list

Bug: http://b/27152660
Bug: http://b/26394120
Change-Id: I9f8f6eb8cf0d81ddf1b7769e306c08b927f3dad1

8 years agoAdd a checksum to jmp_buf on AArch64.
Josh Gao [Thu, 3 Mar 2016 03:45:29 +0000 (19:45 -0800)]
Add a checksum to jmp_buf on AArch64.

Bug: http://b/27417786
Change-Id: I17c22dc28a46dd6b678b449b506b0da978f3793e
(cherry picked from commit 0c3655a864f33080ebbec1248c27a7ead87d6a28)

8 years agoAdd a checksum to jmp_buf on ARM.
Josh Gao [Thu, 3 Mar 2016 03:03:17 +0000 (19:03 -0800)]
Add a checksum to jmp_buf on ARM.

Make it easier to diagnose applications mucking with the contents of
jmp_buf by checksumming its contents.

Bug: http://b/27417786
Change-Id: I9989e2ea3979a36ae0bc4c9e1bacafddbacc731b
(cherry picked from commit a4c69137c693c45fce4010ba61d69d7147f5dd9a)

8 years agolibdl: Rename LIBC_PRIVATE to LIBC_PLATFORM
Dimitry Ivanov [Wed, 2 Mar 2016 19:41:22 +0000 (11:41 -0800)]
libdl: Rename LIBC_PRIVATE to LIBC_PLATFORM

Bug: http://b/26386014
Change-Id: I3255faac66a96867aed302e205e3644b40ce7750
(cherry picked from commit 98cdef39dccad972a527b274be08a1905047a39a)

8 years agoModify android_dlwarning function to use a callback
Dimitry Ivanov [Wed, 2 Mar 2016 21:05:51 +0000 (13:05 -0800)]
Modify android_dlwarning function to use a callback

The previous implementation of android_dlwarning was not thread-safe
and could return a pointer soon to become invalid in some situations.
This change fixed the problem. I have also removed android_dlwarning
from the dlext.h header file in case we decide to keep
android_dlwarning in the final release.

Bug: http://b/27453994
Change-Id: If6c896a80a17c4be0e18795e617712ad36a106fe

8 years agoFix getifaddrs' handling of point-to-point interfaces.
Elliott Hughes [Wed, 2 Mar 2016 01:27:12 +0000 (17:27 -0800)]
Fix getifaddrs' handling of point-to-point interfaces.

Also remove an if that implied that IFA_BROADCAST is a possibility for
AF_INET6.

The existing tests fail if you have a point-to-point interface configured,
so no new test necessary.

Bug: http://b/27442503

(cherry picked from commit ef925e50d38fe6f5499c1d0d24cca98bf88e5256)

Change-Id: I19c19d83a86d0a8004a6b45dea7febe9d6fb6a2e

8 years agolinker: print "not accessible" error message to the log
Dimitry Ivanov [Tue, 1 Mar 2016 21:11:28 +0000 (13:11 -0800)]
linker: print "not accessible" error message to the log

Print properties of the namespace on "library is not accessible"
error to better diagnose problems with native library accessiblity

Bug: http://b/27406143
Change-Id: Icf3d6c604f09dfa015de863fdb1267d343930d2a

8 years agoMerge "Add android_dlwarning() method" into nyc-dev
Dimitry Ivanov [Tue, 1 Mar 2016 17:50:00 +0000 (17:50 +0000)]
Merge "Add android_dlwarning() method" into nyc-dev

8 years agoRewrite ifaddrs#getifaddrs_INET.
Elliott Hughes [Mon, 29 Feb 2016 21:31:59 +0000 (13:31 -0800)]
Rewrite ifaddrs#getifaddrs_INET.

The old implementation was unnecessarily complex, and using the wrong ioctl
for point-to-point destination addresses.

Bug: http://b/27313259

(cherry picked from commit bf97770a8602ad50ac97a16b978f92c366595684)

Change-Id: Ifad01967d6b7f4bb1e0346a5bb352dbb524bf846

8 years agoMove hard-coded values to constants.
Christopher Ferris [Tue, 23 Feb 2016 03:23:26 +0000 (19:23 -0800)]
Move hard-coded values to constants.

Change all of the hard-coded config values to be defined constants.
Also make sure to use these constants in the usage output.

Bug: 26739265

(cherry picked from commit 549e52200b6af3c33cba7ef759ea98b49fa40082)

Change-Id: I07b7095cad9c47207a31d9b95e4013f4cb07ae0e

8 years agoAdd android_dlwarning() method
Dimitry Ivanov [Thu, 25 Feb 2016 23:22:04 +0000 (15:22 -0800)]
Add android_dlwarning() method

This is temporary method intended to use
for a toast message on preview and beta
releases. Will be removed before the
production release.

Bug: http://b/27365747
Change-Id: I39cc716bb82863ae761b6821bcec77cce6db3781

8 years agoMerge "Update timezone data to 2016a" into nyc-dev
Neil Fuller [Fri, 26 Feb 2016 14:37:43 +0000 (14:37 +0000)]
Merge "Update timezone data to 2016a" into nyc-dev

8 years agoUpdate timezone data to 2016a
Neil Fuller [Wed, 24 Feb 2016 15:09:28 +0000 (15:09 +0000)]
Update timezone data to 2016a

  Changes affecting future time stamps

    America/Cayman will not observe daylight saving this year after all.
    Revert our guess that it would.  (Thanks to Matt Johnson.)

    Asia/Chita switches from +0800 to +0900 on 2016-03-27 at 02:00.
    (Thanks to Alexander Krivenyshev.)

    Asia/Tehran now has DST predictions for the year 2038 and later,
    to be March 21 00:00 to September 21 00:00.  This is likely better
    than predicting no DST, albeit off by a day every now and then.

  Changes affecting past and future time stamps

    America/Metlakatla switched from PST all year to AKST/AKDT on
    2015-11-01 at 02:00.  (Thanks to Steffen Thorsen.)

    America/Santa_Isabel has been removed, and replaced with a
    backward compatibility link to America/Tijuana.  Its contents were
    apparently based on a misreading of Mexican legislation.

  Changes affecting past time stamps

    Asia/Karachi's two transition times in 2002 were off by a minute.
    (Thanks to Matt Johnson.)

Bug: 26833368
(cherry picked from commit 92057af535a8976b078b61eb58f894cd6f511fea)

Change-Id: I31985eb6101cf5d428ecaec70be4248c896a5b86

8 years agoUpdate timezone data to 2016a
Neil Fuller [Thu, 25 Feb 2016 17:42:48 +0000 (17:42 +0000)]
Update timezone data to 2016a
am: 5408d8f39a

* commit '5408d8f39aeaac1f477757f90b09cff32c641d56':
  Update timezone data to 2016a

8 years agoUpdate timezone data to 2016a
Neil Fuller [Wed, 24 Feb 2016 15:09:28 +0000 (15:09 +0000)]
Update timezone data to 2016a

  Changes affecting future time stamps

    America/Cayman will not observe daylight saving this year after all.
    Revert our guess that it would.  (Thanks to Matt Johnson.)

    Asia/Chita switches from +0800 to +0900 on 2016-03-27 at 02:00.
    (Thanks to Alexander Krivenyshev.)

    Asia/Tehran now has DST predictions for the year 2038 and later,
    to be March 21 00:00 to September 21 00:00.  This is likely better
    than predicting no DST, albeit off by a day every now and then.

  Changes affecting past and future time stamps

    America/Metlakatla switched from PST all year to AKST/AKDT on
    2015-11-01 at 02:00.  (Thanks to Steffen Thorsen.)

    America/Santa_Isabel has been removed, and replaced with a
    backward compatibility link to America/Tijuana.  Its contents were
    apparently based on a misreading of Mexican legislation.

  Changes affecting past time stamps

    Asia/Karachi's two transition times in 2002 were off by a minute.
    (Thanks to Matt Johnson.)

Bug: 26833368
Change-Id: I5af1d69f8ca767369f1cbc4aa863280b960777e0

8 years agoFix incorrect size of array.
Christopher Ferris [Sat, 20 Feb 2016 02:13:29 +0000 (18:13 -0800)]
Fix incorrect size of array.

When using sscanf and "%4s", the array passed in must include space for
a nul terminator.

Bug: 26739265

(cherry picked from commit f499dc91e774db4cb9d21f9a7c34704fa9b7ed39)

Change-Id: I8aac6fca3e5bc7a6399e2ed9c6ba4140a55ffdee