14393 Commits

Author SHA1 Message Date
Dmitriy Ivanov
38c37d6705 Work around for libraries without dt_soname
Applies only for apps targeting sdk version <= 22

Bug: http://b/21565766
Change-Id: If0bf2229dc1341e9ca09f9a05d0890515273d5a2
2015-06-02 13:45:15 -07:00
Dmitriy Ivanov
c4ebe60e1a Fix dlsym(handle_of_main_executable, ...)
According to man dlopen(3) and posix docs in the case when si is handle
  of the main executable we need to search not only in the executable and its
  dependencies but also in all libraries loaded with RTLD_GLOBAL.

  see also: http://pubs.opengroup.org/onlinepubs/9699919799/functions/dlopen.html

Bug: http://b/21528224
Bug: http://b/17512583
Bug: https://code.google.com/p/android/issues/detail?id=173822
Change-Id: Ib2801367ba48b6f3704da89a6d9f5e6911430013
(cherry picked from commit f439b5a3186ca0fef1092f45770abc716da9d87a)
2015-06-01 16:57:33 -07:00
Dan Albert
c5e02eeb35 Cleanup ftruncate negative test.
Addresses post-submit comments from
I54692ab8105dd09db6af7a2c0894a17bdd118aa0.

Bug: http://b/21309901
Change-Id: Ie19ee8cdcc4055a65fe7dfc103156e54eafe8977
(cherry picked from commit 9d476a02e9a14e847669a6683c585028175aa322)
2015-06-01 13:24:36 -07:00
Dan Albert
5f3e19dbbe Fix error handling for negative size in ftruncate.
Bug: 21309901
Change-Id: I54692ab8105dd09db6af7a2c0894a17bdd118aa0
(cherry picked from commit c05554ec5c9aff5e0f1e83de9bb62c3569eecca2)
2015-06-01 11:28:13 -07:00
Dmitriy Ivanov
ca10ac6dd4 Improve some of error/warning messages
Bug: http://b/20464031
Change-Id: I948141c46f9e054fc45f5934153dee56ce3cd558
(cherry picked from commit 087005f37e02b48809746947159d824493885b1e)
2015-05-28 15:28:41 -07:00
Dmitriy Ivanov
4a7c3af054 Work around incorrect dt_needed entries
This applies for apps targeting sdk<=22 and
  only for lp32 platforms.

Bug: http://b/21364029
Change-Id: I903e81c9ccda2a8beaba1d132d68c77d30a4cdb2
(cherry picked from commit d974e8804689058714dc4fe9adcb57ee9a6996a8)
2015-05-28 15:25:55 -07:00
Dmitriy Ivanov
d8ead18145 Add functions to provide target sdk version
Bug: http://b/21364029
Change-Id: I8648d1bff6c8fd6e7cd12da7f128e048b9f2829a
(cherry picked from commit 79fd668bb4ddb22432eeda2ebd8d10359013d9a8)
2015-05-27 16:20:16 -07:00
Dmitriy Ivanov
15309fde91 Fix RTLD_NEXT lookup for the local_group
Linker used to skip RTLD_NEXT within local_group when
  caller->next is nullptr (which represents load order
  but not the order within local_group dependency tree)

Bug: http://b/21380474
Change-Id: I178fc4657b19bceb871635b177c1df67855b1708
(cherry picked from commit b96ac41b32e61799c48f3fd07831cc168b95068d)
2015-05-22 15:24:13 -07:00
Yabin Cui
c15a935202 am fd20a8c2: resolved conflicts for merge of 473d96c0 to lmp-mr1-ub-dev
* commit 'fd20a8c2d669b3f2d63e2d33a32b90d1b7f17b82':
  Fix timer flaky test in lollipop-mr1-cts-dev.
2015-05-20 21:48:09 +00:00
Yabin Cui
fd20a8c2d6 resolved conflicts for merge of 473d96c0 to lmp-mr1-ub-dev
Change-Id: I48269218b152054d527d9257d40490b54205140f
2015-05-20 13:36:56 -07:00
Yabin Cui
7490c5c594 Hide rt_sigqueueinfo.
Bug: 19358804
Change-Id: I38a53ad64c81d0eefdd1d24599e769fd8a477a56
(cherry picked from commit 40a8f214a5264efe5feaaffd55cea67fb87d097b)
2015-05-18 13:34:51 -07:00
Yabin Cui
2b5c2285c0 Remove pthread_detach_no_leak test.
This test has lost its purpose as we are using mmap/munmap for pthread_internal_t. And it is a flaky test.

Bug: 21205574
Bug: 20860440
Change-Id: I7cbb6bc3fd8a2ca430415beab5ee27a856ce4ea7
(cherry picked from commit 2957cc5f1043adf0b9c0f1cdfff2d408952e40f5)
2015-05-18 10:31:20 -07:00
Dmitriy Ivanov
8557eeb0ad Merge "Apply work around b/19059885 to x86" into mnc-dev 2015-05-16 16:57:16 +00:00
Dmitriy Ivanov
69a5fb951d Apply work around b/19059885 to x86
Bug: http://b/19059885
Bug: http://b/21203348
Change-Id: Ic375e9f877d68de8f866d17362879a7dde638465
2015-05-15 18:39:16 -07:00
Chih-Hung Hsieh
43850d19f4 Use unified syntax to compile with both llvm and gcc.
All arch-arm and arch-arm64 .S files were compiled
by gcc with and without this patch. The output object files
were identical. When compiled with llvm and this patch,
the output files were also identical to gcc's output.

BUG: 18061004
Change-Id: I458914d512ddf5496e4eb3d288bf032cd526d32b
(cherry picked from commit 33f33515b503b634d9fbc57dda7123ea9cf23fc6)
2015-05-15 16:29:10 -07:00
Chih-Hung Hsieh
22c21c6b4e Fix opcode to compile with both gcc and llvm.
BUG: 17302991

Change-Id: I31febd9ad24312388068803ce247b295bd73b607
(cherry picked from commit 0a93df369cf3f44d40ca1f0cb4a58aeab42fb39c)
2015-05-15 16:28:38 -07:00
Elliott Hughes
fa7ba6227f Don't use TEMP_FAILURE_RETRY on close in bionic.
Bug: http://b/20501816
Change-Id: Id64b5109cc2b165fa0351b6edbb865a5e5058008
(cherry picked from commit 4e8ef698d0d76be3f8d75de32701e6e6327c1fbd)
2015-05-15 16:24:33 -07:00
Dmitriy Ivanov
ff407803db Remove -z global workaround for target x86
Change-Id: I08e75a1c7437c97e4af59316d2c14c7fa3f65e03
(cherry picked from commit 933332462d37dfa121fa691095cdce218a0139bf)
2015-05-15 10:30:47 -07:00
John Reck
d7ad443cfd Fix regression in crash reporting
Bug: 19532651

Partial revert of be0e43b77676338fd5e6a82c9cc2b6302d579de2

Change-Id: I99e220328aff985facb920ebcd84ac1a016759b5
2015-05-15 07:48:33 -07:00
Spencer Low
2a44cfbd7d ScopedFd: Don't use TEMP_FAILURE_RETRY() with close()
According to the comments in Posix_close(), TEMP_FAILURE_RETRY() should
not be used with close():

462bdac45c%5E%21/#F12

Kill ScopedFd by simplifying the single caller.

Bug: http://b/20501816
Change-Id: I248c40b8c2fc95f1938a6edfc245c81847fc44af
Signed-off-by: Spencer Low <CompareAndSwap@gmail.com>
(cherry picked from commit 0346ad7a4fb6e253317577ee8b9cc79d958f4349)
2015-05-13 17:47:08 -07:00
Dmitriy Ivanov
4bac6ea463 Improved dlsym tests and fixes to linker
Answers the question: what if dependent library
 was preloaded with RTLD_LOCAL flag.

 Also add test for RTLD_NEXT within local_group.

Bug: http://b/17512583
Change-Id: I79e081e68b3a8c0ed8980d4275a06515fea94ec9
(cherry picked from commit 697bd9fd38ab078a117ad9a5777cf286c467b9b9)
2015-05-12 13:49:13 -07:00
Elliott Hughes
9cde1dc007 Update NOTICE files (the second time today).
Change-Id: Ifb031d29ee697ee0682bd651e0081493e8016e67
(cherry picked from commit f58ac87182da214c7cdd697a4fa09aeb7b995305)
2015-05-12 10:52:52 -07:00
Elliott Hughes
dd57029ed1 Simplify three copyright headers.
There's no reason to have multiple years in our own copyright headers,
and given the stupidity of our NOTICE file generation, it just creates
more junk.

Change-Id: I065a3811c2e2584e3b649a18ad9460286bc72b92
(cherry picked from commit c69ace87ec110a91005bdf19dbafeb355f399c06)
2015-05-12 10:34:22 -07:00
Elliott Hughes
97139e6adc Merge "Update NOTICE files." into mnc-dev 2015-05-12 17:29:25 +00:00
Elliott Hughes
f0bd92db89 Update NOTICE files.
Change-Id: I4e170118abf452dd87ffe79d343ba1e2b53955de
2015-05-12 10:09:01 -07:00
Yabin Cui
473d96c0a8 Merge "Fix timer flaky test in lollipop-mr1-cts-dev." into lollipop-mr1-cts-dev 2015-05-09 00:07:45 +00:00
Yabin Cui
5c0996a969 Fix timer flaky test in lollipop-mr1-cts-dev.
It is partically cherry-pick from https://android-review.googlesource.com/#/c/123410/.
And as lollipop-mr1-cts-dev still uses stlport, <stdatomic.h> is used instead of <atomic>.

Bug: 20677618
Change-Id: I952a6fd074facc4227c955fecf3ecbfbbaec4193
2015-05-08 13:12:01 -07:00
Dmitriy Ivanov
f7009f450e Switch libc/libcstdc++/libm to hash-style=both
Bug: http://b/19059885
Change-Id: Ie42703d91f291fd689a1cf9c35bcab5c487b9a84
(cherry picked from commit 88e777d6f46709abebab88421e8c4ea7a9e3d9c4)
2015-05-08 12:17:21 -07:00
Dan Albert
5040aa4c39 Merge changes from topic 'blobs' into mnc-dev
* changes:
  Revert "Fix volantis boot."
  Revert "Fix clang build."
  Revert "Try again to fix clang build."
2015-05-08 17:01:29 +00:00
Dan Albert
6b27e6e8e0 Revert "Fix volantis boot."
Bug: http://b/20065774
This reverts commit 76e1cbca75e9fdaf7a7943f2c58e65433b283f4a.

(cherry picked from commit 7c2c01d681d7f2faa256a263996a35ac3edc94b3)
2015-05-08 09:36:03 -07:00
Dan Albert
20db140181 Revert "Fix clang build."
Bug: http://b/20065774
This reverts commit 0975a5d9d29019e764dc0ab2ddc75759bebffb9b.

(cherry picked from commit 6f0d7005f9bc6d293e5cfcd60c13a6af0ffa99fc)
2015-05-08 09:35:54 -07:00
Dan Albert
6accf55bf3 Revert "Try again to fix clang build."
Bug: http://b/20065774
This reverts commit dffd3c58389103d6ee712fac6544217c00c1f315.

Change-Id: I5dd095ff4ab133baa2afcbd4c79fbee55d05c459
(cherry picked from commit f920f821e27c845d2de54c1c92c3ab74587ed31a)
2015-05-08 09:35:48 -07:00
Andres Morales
271f051482 Merge "remove rootdir build.prop" into mnc-dev 2015-05-08 15:00:42 +00:00
Dmitriy Ivanov
f41ed6e549 Add definitions of Elf32_Sxword and ELFXX_R_INFO
Bug: http://b/17056684
Change-Id: If35302245ac3ab40d1c80fb2b04620778c114f87
(cherry picked from commit ce16a53d393512336f30c21a244afd70b7d57cf6)
2015-05-07 23:49:40 -07:00
Andres Morales
d3cea8725f remove rootdir build.prop
merge with default.prop

Change-Id: I6cff4527dec2b31bdde42ec26c42ef2782f8deb4
2015-05-07 15:15:46 -07:00
Dmitriy Ivanov
af7e806cec Properly align init/fini_arrays for crtend.o
Also remove them from crtend_so.o

Bug: http://b/20532404
Change-Id: I56a0f80c4b3a83cf11d28bbf17791ff4ce10c5d2
(cherry picked from commit e543c7612e97c4c0f11143b8fcd2fff46364f936)
2015-05-07 12:56:15 -07:00
Dmitriy Ivanov
b3c01d0538 Use realpath for log and error messages
Bug: http://b/20885931
Change-Id: Ida8ab7982ca75fa73da13c4cb10a6b2e53bc2c8e
(cherry picked from commit 3edb9182ff2fddfa2d835aab0cad151616f2eac5)
2015-05-07 11:04:28 -07:00
Dmitriy Ivanov
a60fd09e26 Move pthread_atfork_dlclose test out of static lib
Bug: http://b/20858755
Change-Id: I0d84e8b43dc33902d75af18db6b7c8e0b619d718
(cherry picked from commit 5624a6a1e52ff959b0f88765d38f190700422773)
2015-05-06 16:47:54 -07:00
Dmitriy Ivanov
8264afb377 VersionTracker: Ignore libraries without soname
Bug: http://b/20872443
Change-Id: I7bd076885c1feae39af6ea64c9442bcc5ae5a1dc
2015-05-06 11:06:32 -07:00
Dmitriy Ivanov
456afe24b6 Fix protected symbol lookups for mips
Bug: http://b/20694161
Change-Id: I5cc58034f9776e1db9cddc34abe48ef85f6048f4
(cherry picked from commit dbe26fdcc7de503539837467299b96c4a93084cc)
2015-05-05 15:39:42 -07:00
Dmitriy Ivanov
064a9800f3 Do not adjust PT_GNU_STACK segment
Bug: http://b/20687795
Bug: http://b/18051137
Change-Id: Ie8af3892cfbebcc0249e7981284c4ad97ff40317
2015-05-04 18:35:43 +00:00
Dmitriy Ivanov
dc145b5106 Lookup version info when relocating mips got
Bug: http://b/20693971
Bug: http://b/20139821
Change-Id: I28bd3bc44dafe048761b2c598facfe20320128c4
(cherry picked from commit f39cb63603da949325b4d186e870d0c3de01eb30)
2015-05-01 15:45:51 -07:00
Dmitriy Ivanov
f92a417d07 Refactoring: move VersionTracker to link_image
Use one instance of VersionTracker per link (instead of 2).

Change-Id: I6860013df65f5969975c82ebdae8bd90a82e0a82
(cherry picked from commit 7e4bbbae4a1e2034e6fa47ac2b0e1e7ca970acf0)
2015-05-01 15:44:50 -07:00
Neil Fuller
f6fdb79b4f Merge "Update to tzdata 2015d" into mnc-dev 2015-05-01 08:18:15 +00:00
Dmitriy Ivanov
114bd835a7 Refactoring: extract lookup_version_info(..)
Change-Id: I47f9c21a1738dc520fd83281c8227dc3a7e79650
(cherry picked from commit 31b408d2c2e070c35838e7859ca4a4e5eb0c45fc)
2015-04-30 17:42:01 -07:00
Mark Salyzyn
62075bcc91 bionic: fortify comments in _system_properties.h
(Cherry pick from commit c3f4c964a3326ba81e1d61ebc47980f787dfcf24)

Change-Id: I2ef8fb7ae5ae03d5d2a50b5a417d585710099760
2015-04-30 14:00:09 -07:00
Neil Fuller
3a7ed8f55c Update to tzdata 2015d
Changes affecting future time stamps

    Egypt will not observe DST in 2015 and will consider canceling it
    permanently.  For now, assume no DST indefinitely.
    (Thanks to Ahmed Nazmy and Tim Parenti.)

  Changes affecting past time stamps

    America/Whitehorse switched from UTC-9 to UTC-8 on 1967-05-28, not
    1966-07-01.  Also, Yukon's time zone history is documented better.
    (Thanks to Brian Inglis and Dennis Ferguson.)

  Change affecting past and future time zone abbreviations

    The abbreviations for Hawaii-Aleutian standard and daylight times
    have been changed from HAST/HADT to HST/HDT, as per US Government
    Printing Office style.  This affects only America/Adak since 1983,
    as America/Honolulu was already using the new style.

Bug: 20551453
(cherry-picked from commit 520cbf51b11470d1ca70a4dcd90bc12042c25b8a)

Change-Id: I60d3b683aeccbc44bd038ff6aebd75045809b1c5
2015-04-30 16:48:11 +01:00
Dmitriy Ivanov
126b5efa9d Adjust DT_MIPS_RLD_MAP2 value
DT_MIPS_RLD_MAP2 stores the difference between dynamic
  entry address and the address of the _r_debug (used by GDB)
  since the dynamic section and target address are on the
  different sides of the hole it needs to be adjusted accordingly

Bug: http://b/20658994
Bug: http://b/18051137
Change-Id: I4c5e379e8a4c68f029467df6dc660f81a7013a09
(cherry picked from commit 18c935ceabb54a32aff42f99c6d20680ac333157)
2015-04-29 22:10:53 -07:00
Dmitriy Ivanov
0b9e1c6051 linker: initialize system properties
Bug: http://b/20567629
Bug: https://code.google.com/p/chromium/issues/detail?id=478886
Change-Id: I8d2d89b749015e7fcd6e7ea646911f2e617dd1ba
(cherry picked from commit b4e5067cab9f17fa76bd7695f41a0b5070e10df8)
2015-04-29 16:46:41 -07:00
Dmitriy Ivanov
e97d519a6b Fix mips relocation to use load_bias as intended
Bug: http://b/20658994
Change-Id: I5a15605fe34db359e26d563e13841ae993083c4a
(cherry picked from commit 0373d4f47342e0a6f146af9023a146b0b707442b)
2015-04-29 15:02:50 -07:00