Commit graph

14358 commits

Author SHA1 Message Date
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 e543c7612e)
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 3edb9182ff)
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 5624a6a1e5)
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 dbe26fdcc7)
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 f39cb63603)
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 7e4bbbae4a)
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 31b408d2c2)
2015-04-30 17:42:01 -07:00
Mark Salyzyn
62075bcc91 bionic: fortify comments in _system_properties.h
(Cherry pick from commit c3f4c964a3)

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 520cbf51b1)

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 18c935ceab)
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 b4e5067cab)
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 0373d4f473)
2015-04-29 15:02:50 -07:00
Dmitriy Ivanov
53ba663617 Fix LD_PRELOAD for dlopen()
We did not set DF_1_GLOBAL flag for LD_PRELOADed
 libraries which led to the situation when ld_preloads
 where ignored during on dlopen()

Change-Id: I696b3b2506a8ed4c0984ad2c803210a7a4f8e686
(cherry picked from commit f8093a9485)
2015-04-28 19:01:01 -07:00
Jeff Brown
cb73d0e0da Merge "Add float support to binary event log." into mnc-dev 2015-04-29 01:18:13 +00:00
Jeff Brown
66fd2a278b Add float support to binary event log.
Bug: 20664753
Change-Id: I6e43c07daa727c19d87f5192bb719af63dd93654
2015-04-28 17:51:45 -07:00
Mark Salyzyn
123927dffc bionic: add __system_property_area_serial()
Adds a new _internal_ function. Provide a global serial number to
support more efficient private caching algorithms. This allows
to skip re-running the __system_property_find() call on misses until
there is a global change in the properties. This call is a read
barrier, the property data to be read following this call will be
read sequentially and up to date.

(Cherry pick from bfd65279a5)

Bug: 19544788
Change-Id: I58e6a92baa0f3e8e7b9ec79b10af6d56407dab48
2015-04-28 22:20:41 +00:00
Dmitriy Ivanov
452742d2bf Do not pack relocations for libc.so
Bug: http://b/20645321
Bug: http://b/20655855
Change-Id: Ia4470e0a6d388a7f8445c7f7f9a5639689c0fe32
2015-04-28 14:54:11 -07:00
Dmitriy Ivanov
62a0a63e07 linker: use libc's environ variable to store envp
This is to make getenv() work correctly.

Bug: http://b/20567629
(cherry picked from commit a85bcc2e99)

Change-Id: I7c2289279b331793335029dc17a792d416efff4b
2015-04-28 14:43:58 -07:00
Neil Fuller
17b602c903 Update to tzdata 2015c
Changes affecting future time stamps

    Egypt's spring-forward transition is at 24:00 on April's last Thursday,
    not 00:00 on April's last Friday.  2015's transition will therefore be on
    Thursday, April 30 at 24:00, not Friday, April 24 at 00:00.  Similar fixes
    apply to 2026, 2037, 2043, etc.  (Thanks to Steffen Thorsen.)

  Changes affecting past time stamps

    The following changes affect some pre-1991 Chile-related time stamps
    in America/Santiago, Antarctica/Palmer, and Pacific/Easter.

      The 1910 transition was January 10, not January 1.

      The 1918 transition was September 10, not September 1.

      The UTC-4 time observed from 1932 to 1942 is now considered to be
      standard time, not year-round DST.

      Santiago observed DST (UTC-3) from 1946-07-15 through 1946-08-31,
      then reverted to standard time, then switched its time zone to
      UTC-5 on 1947-04-01.

      Assume transitions before 1968 were at 00:00, since we have no data
      saying otherwise.

      The spring 1988 transition was 1988-10-09, not 1988-10-02.
      The fall 1990 transition was 1990-03-11, not 1990-03-18.

      Assume no UTC offset change for Pacific/Easter on 1890-01-01,
      and omit all transitions on Pacific/Easter from 1942 through 1946
      since we have no data suggesting that they existed.

    One more zone has been turned into a link, as it differed
    from an existing zone only for older time stamps.  As usual,
    this change affects UTC offsets in pre-1970 time stamps only.
    The zone's old contents have been moved to the 'backzone' file.
    The affected zone is America/Montreal.

Bug: 20287125
(cherry-picked from commit d2177404e2)

Change-Id: I55224cc63b314a8e4c2f1c83f8bc4921316c8e4d
2015-04-28 10:51:48 +01:00
Dmitriy Ivanov
7936fa6536 Reduce p_align for program header to page size.
Having p_align > page_size leads to the situation when striping
 packed executables results in unnecessary p_vaddr adjustments.
 And it also may result (with probability 1 - 1/sizeof(uintptr_t)) in
 misaligned segments following .dynstr

Bug: http://b/20629834
Bug: http://b/18051137

(cherry picked from commit b293969c6d)

Change-Id: I2fb15cf5cb52fada6511d5af93df099fc2cbf7ba
2015-04-27 20:45:04 -07:00
Nick Kralevich
9e22d0ff3c am bb4961cd: am 1d76f1cc: Merge "add a fortified implementation of realpath"
* commit 'bb4961cd4f0348b5e88bdf81dded7b63d1aadb0b':
  add a fortified implementation of realpath
2015-04-26 18:39:37 +00:00
Nick Kralevich
bb4961cd4f am 1d76f1cc: Merge "add a fortified implementation of realpath"
* commit '1d76f1cc8be1f40141adac6147cd51061f1ee0b4':
  add a fortified implementation of realpath
2015-04-26 02:44:29 +00:00
Nick Kralevich
1d76f1cc8b Merge "add a fortified implementation of realpath" 2015-04-26 02:23:04 +00:00
Nick Kralevich
51069872d1 am 73621d02: am 42502d70: Merge "add fortified memchr/memrchr implementations"
* commit '73621d02ec3ff45315ee6ddff534a46309723baf':
  add fortified memchr/memrchr implementations
2015-04-25 22:00:20 +00:00
Nick Kralevich
73621d02ec am 42502d70: Merge "add fortified memchr/memrchr implementations"
* commit '42502d702e1625c9f3337f7a18ea5fc4cfc6090c':
  add fortified memchr/memrchr implementations
2015-04-25 21:41:45 +00:00
Nick Kralevich
42502d702e Merge "add fortified memchr/memrchr implementations" 2015-04-25 21:29:57 +00:00
Dmitriy Ivanov
d14f85df52 am a6441765: am 2eaff078: Merge "Include pthread_atfork.h to mips64 crtbegin"
* commit 'a644176578e73b0ab1bf6adfed6bba944d6e7b00':
  Include pthread_atfork.h to mips64 crtbegin
2015-04-25 20:04:32 +00:00
Dmitriy Ivanov
a644176578 am 2eaff078: Merge "Include pthread_atfork.h to mips64 crtbegin"
* commit '2eaff07839393485fec522fd0bd17bbf1af72ca6':
  Include pthread_atfork.h to mips64 crtbegin
2015-04-25 19:42:22 +00:00
Dmitriy Ivanov
2eaff07839 Merge "Include pthread_atfork.h to mips64 crtbegin" 2015-04-25 19:20:00 +00:00
Dmitriy Ivanov
f327fae69c Include pthread_atfork.h to mips64 crtbegin
Bug: http://b/20339788
Change-Id: I2a8c7881f90a05ca768cb9b4c2f8b07c74c64469
2015-04-25 11:59:32 -07:00
Elliott Hughes
704b3164b3 am ea46b36f: am 9a2744df: Merge "Fix POSIX timer thread naming."
* commit 'ea46b36f894477755487d8caec15a8f35f81ac2c':
  Fix POSIX timer thread naming.
2015-04-25 18:44:05 +00:00
Elliott Hughes
ea46b36f89 am 9a2744df: Merge "Fix POSIX timer thread naming."
* commit '9a2744df301c509ea48361016ab441c792ec6d5a':
  Fix POSIX timer thread naming.
2015-04-25 18:23:51 +00:00
Elliott Hughes
9a2744df30 Merge "Fix POSIX timer thread naming." 2015-04-25 18:01:18 +00:00
Elliott Hughes
d1aea30b2a Fix POSIX timer thread naming.
Spencer Low points out that we never actually set a name because the constant
part of the string was longer than the kernel's maximum, and the kernel
rejects long names rather than truncate.

Shorten the fixed part of the string while still keeping it meaningful. 9999
POSIX timers should be enough for any process...

Bug: https://code.google.com/p/android/issues/detail?id=170089
Change-Id: Ic05f07584c1eac160743519091a540ebbf8d7eb1
2015-04-25 10:05:24 -07:00
Dmitriy Ivanov
988cb3bd69 am f41ab7fa: am 2c256a0f: Merge "Unregister pthread_atfork handlers on dlclose()"
* commit 'f41ab7fa68cfab33881a97d25f1c046e26e35d99':
  Unregister pthread_atfork handlers on dlclose()
2015-04-25 06:14:51 +00:00
Dmitriy Ivanov
f41ab7fa68 am 2c256a0f: Merge "Unregister pthread_atfork handlers on dlclose()"
* commit '2c256a0f0927abd94f2210b37c18ead210d30477':
  Unregister pthread_atfork handlers on dlclose()
2015-04-25 05:52:51 +00:00
Dmitriy Ivanov
2c256a0f09 Merge "Unregister pthread_atfork handlers on dlclose()" 2015-04-25 05:36:07 +00:00
Dmitriy Ivanov
2a1badcfcd am 504e7605: am 440242f0: Merge "Use bfd linker for x86/x86_64 targets"
* commit '504e76055c29a3cb7cdbe1e6f731cd3ca9d1a91e':
  Use bfd linker for x86/x86_64 targets
2015-04-25 04:49:52 +00:00
Dmitriy Ivanov
504e76055c am 440242f0: Merge "Use bfd linker for x86/x86_64 targets"
* commit '440242f03805872a0c62528d763e5e98dad9b580':
  Use bfd linker for x86/x86_64 targets
2015-04-25 04:27:52 +00:00
Dmitriy Ivanov
440242f038 Merge "Use bfd linker for x86/x86_64 targets" 2015-04-25 04:09:43 +00:00
Dmitriy Ivanov
e91e66f223 Use bfd linker for x86/x86_64 targets
ld.gold in current toolchain for x86_64
 does not support -z global.

Change-Id: Iea2b192f0f0aa998a02adb356fd4eec4e10a1739
2015-04-24 21:05:49 -07:00
Dmitriy Ivanov
6a76d3a2fe am 1f4c9067: am ebfb55e4: Merge "Enable dlsym_df_1_global test for arm/arm64"
* commit '1f4c9067af716dc9419cb2e33adc3abf9b2dcb2c':
  Enable dlsym_df_1_global test for arm/arm64
2015-04-25 02:07:39 +00:00
Dmitriy Ivanov
1f4c9067af am ebfb55e4: Merge "Enable dlsym_df_1_global test for arm/arm64"
* commit 'ebfb55e4cdf03473d66eaf5928fb3c3a8b0c2f85':
  Enable dlsym_df_1_global test for arm/arm64
2015-04-25 01:10:54 +00:00
Dmitriy Ivanov
ea295f68f1 Unregister pthread_atfork handlers on dlclose()
Bug: http://b/20339788
Change-Id: I874c87faa377645fa9e0752f4fc166d81fd9ef7e
2015-04-24 17:57:37 -07:00
Dmitriy Ivanov
ebfb55e4cd Merge "Enable dlsym_df_1_global test for arm/arm64" 2015-04-25 00:50:05 +00:00
Dmitriy Ivanov
6612d7a347 Enable dlsym_df_1_global test for arm/arm64
Change-Id: I1fdebced93175cb14053e2239e79f97239fc2dc2
2015-04-24 16:26:03 -07:00
Dmitriy Ivanov
7336ab23ee am 71abd9cc: am 2bb93482: Merge "Exit normally when relocations are already packed."
* commit '71abd9cc2ffb0c75288f5064e5e5d5a223e15a41':
  Exit normally when relocations are already packed.
2015-04-24 21:09:41 +00:00