Commit Graph

21500 Commits

Author SHA1 Message Date
Sami Tolvanen
00e1f0033e Merge "Check partition hash before resorting to block_image_verify" 2015-04-25 08:00:03 +00:00
Nick Kralevich
f3a6b07b80 Merge "host compiler: enable compiler hardening flags" 2015-04-25 04:35:46 +00:00
Nick Kralevich
100acd1001 host compiler: enable compiler hardening flags
Enable the following compiler hardening flags:

* -Wl,-z,relro
* -Wl,-z,now
* -fstack-protector

relro / bind_now make the relro region read-only after linking,
preventing certain attacks against ELF data structures.

stack-protector adds stack canaries, which can detect exploits
which overwrite parts of the stack.

Explicitly not added in this change is FORTIFY_SOURCE=2. Adding that
option turns on glibc's warn_unused_result attributes. This generates
a huge number of new compile time warnings, and for the multiple
makefiles which have -Werror in them, turns those warnings into errors.
I'm not able to fix all the errors right away.

Bug: 20558757
Change-Id: I86791177c6695f5325233d9dd9a5dd3ccc2b1a2f
2015-04-24 21:26:08 -07:00
Dmitriy Ivanov
573dfb7cb8 Merge "Pack relocations for mips64" 2015-04-24 23:52:40 +00:00
Dmitriy Ivanov
8bd30fe3cb Pack relocations for mips64
Bug: http://b/18051137
Change-Id: I063c5d6cf007658c0efe9cb1d65ed8026b3e7dae
2015-04-24 16:34:09 -07:00
Dmitriy Ivanov
4fa4e4befd Merge "Do not pack relocations for prebuilts by default" 2015-04-24 22:56:08 +00:00
Dmitriy Ivanov
64762c3027 Do not pack relocations for prebuilts by default
Do not pack relocations for prebuilds unless
 LOCAL_PACK_MODULE_RELOCATIONS is true

Bug: http://b/20537715
Bug: http://b/18051137
Change-Id: Iddef3b09741da6ae10d73c98103b868cc7695d38
2015-04-24 15:33:14 -07:00
Dmitriy Ivanov
691a4379c3 Merge "Pack relocations for mips" 2015-04-24 19:45:22 +00:00
Dmitriy Ivanov
9dc1a7359f Pack relocations for mips
Bug: http://b/18051137
Change-Id: Id5e0adfb55273f23e1c99b4eecb318c6b8d19989
2015-04-24 12:20:02 -07:00
Dmitriy Ivanov
b1c2727aec Merge "Pack relocations for x86" 2015-04-24 17:44:09 +00:00
Dmitriy Ivanov
1d4804ccd1 Pack relocations for x86
Bug: http://b/18051137
Change-Id: I3f316343e9bbd2037a9583d5b6fb41a06be153cd
2015-04-24 10:34:59 -07:00
Sami Tolvanen
e09d096ed6 Check partition hash before resorting to block_image_verify
It's not necessary to call block_image_verify for the most common
case where we attempt an update for the first time and the target
partition has expected contents. It is sufficient to confirm that
the target partition is intact.

Computing a hash is much faster than simulating the update, which
means this change should make the update speed for v3 much closer
to v2 for the common case. If the update was interrupted, this is
going to make resuming somewhat slower, of course. Hopefully this
should be rather rare.

Bug: 20309033
Change-Id: I04792f3681bf2cd5d9a4e1c41eb883c7f26c6f58
2015-04-24 10:56:59 +00:00
Dmitriy Ivanov
529943c723 Merge "Disable packed relocations for NDK builds" 2015-04-24 04:48:44 +00:00
Dmitriy Ivanov
3b51f20be9 Disable packed relocations for NDK builds
Bug: http://b/20537715
Change-Id: I1289a88d5eb694980b026b695cb25edd8ba76ed5
2015-04-23 18:55:23 -07:00
Dmitriy Ivanov
648f1b66b4 Merge "Pack relocation tables for dynamic executables" 2015-04-23 22:20:37 +00:00
Dmitriy Ivanov
4c2d1a64fb Pack relocation tables for dynamic executables
Add replocation-packer step for dynmic executables.

  Enable it by default for arm and arm64 platforms.

Bug: http://b/18051137
Change-Id: I0c88fd31595bcea62a087f219acb9ecf9c80f2e5
2015-04-23 12:07:16 -07:00
Dimitry Ivanov
1ff47c7f36 Merge "Revert "Pack relocation tables for all dynamic executables"" 2015-04-23 04:24:46 +00:00
Dimitry Ivanov
1eca10fa9d Revert "Pack relocation tables for all dynamic executables"
This reverts commit e7a1b8a0c6.

Change-Id: I1a2185e1c68d364941e3b3e525a8c4a7a42e0cc1
2015-04-23 04:22:33 +00:00
Dmitriy Ivanov
ec6a977323 Merge "Pack relocation tables for all dynamic executables" 2015-04-23 02:24:46 +00:00
Dmitriy Ivanov
e7a1b8a0c6 Pack relocation tables for all dynamic executables
Bug: http://b/18051137
Change-Id: I277277d5f5eb450ef9b4a23cfec16d75d977eb89
2015-04-22 13:30:43 -07:00
Tao Bao
7f47c13339 Merge "Add support for full radio option" 2015-04-22 18:26:31 +00:00
dcashman
ab59266db0 Merge "Add lib dirs to cts distribution." 2015-04-22 17:02:32 +00:00
dcashman
17412c8305 Add lib dirs to cts distribution.
Add ability to include dirs to the cts distribtion to enable bundling of shared
libraries on which host-side executables rely.

Bug: 19566396
Change-Id: Id501874244ae98fbfef2aa591885c88dee5b8b02
2015-04-21 17:53:21 -07:00
Tao Bao
43078aa37a Add support for full radio option
Occasionally we need to include full radio image in incremental OTAs.
Adding --full_radio option to support that.

It needs matching changes in the releasetools.py in the target_files
zip, which comes from device/<vendor>/<device>/releasetools.py.

Bug: 19994922
Change-Id: Id1fb3a9cdb7e67dd9dbadd8fb6cd5fccd358820e
2015-04-21 16:54:52 -07:00
Dmitriy Ivanov
5beb338793 Merge "Remove unsupported *_COMPRESS_MODULE_SYMBOLS" 2015-04-20 20:18:56 +00:00
Dmitriy Ivanov
4eb120b999 Remove unsupported *_COMPRESS_MODULE_SYMBOLS
Change-Id: Ibb7da2997a0bb5b9f435213c9d3206bc4aad18db
2015-04-20 12:24:12 -07:00
Nick Kralevich
69b20474d5 Merge "Support LOCAL_PAGE_ALIGN_JNI_SHARED_LIBRARIES for prebuilt APKs" 2015-04-18 00:38:07 +00:00
Nick Kralevich
5aa0223c6a Support LOCAL_PAGE_ALIGN_JNI_SHARED_LIBRARIES for prebuilt APKs
If a prebuilt APK contains shared libraries and the flag
LOCAL_PAGE_ALIGN_JNI_SHARED_LIBRARIES := true is set, then
uncompress any shared libraries stored within the APK.
This allows processes to load the shared library directly from
the APK.

Bug: 20247329
Bug: 8076853
Bug: 1162500
Change-Id: Iac4db32457d9ce31eb7256410023819b44fda0a6
2015-04-17 16:53:15 -07:00
Dan Albert
b687444051 Merge "Add support for a partial ubsan build." 2015-04-17 19:33:02 +00:00
Dmitriy Ivanov
e3aa1c1f85 Merge "Remove LOCAL_JNI_SHARED_LIBRARIES_ZIP_OPTIONS" 2015-04-17 18:50:13 +00:00
Sami Tolvanen
586b38cc39 Merge "Calculate max_stashed_blocks correctly for block OTA v3" 2015-04-17 18:43:51 +00:00
Dmitriy Ivanov
8f9487431c Remove LOCAL_JNI_SHARED_LIBRARIES_ZIP_OPTIONS
Use LOCAL_PAGE_ALIGN_JNI_SHARED_LIBRARIES instead.

Change-Id: Id30529fbc1652d066e0008813352848b5e404ab9
2015-04-17 11:39:04 -07:00
Dan Albert
b5b2ffe3be Add support for a partial ubsan build.
Some of the ubsan checks expose a few pathological performance cases
in clang, and thus aren't suited to be used in SANITIZE_HOST.

This mode is also supported on the target despite not having the
target runtime libraries for ubsan by generating traps.

Change-Id: I0b0f0a08ca84d72e44e2174a66726b1c5e5cad7e
2015-04-17 11:37:03 -07:00
Dan Albert
1d8f780c7d Merge "Fix misuse of my_sanitize_host." 2015-04-17 18:33:40 +00:00
Dan Albert
6ed5bea46f Merge "Make use of sanitizers without clang an error." 2015-04-17 18:33:23 +00:00
Dan Albert
4c92a68127 Fix misuse of my_sanitize_host.
Ying pointed out in https://android-review.googlesource.com/#/c/147290
that my_sanitize_host would be read as some garbage value for target
builds. Move the configuration later and don't use the local at all.

Change-Id: Id8a095821d000a184e72f950b9481597073a7044
2015-04-17 11:32:57 -07:00
Dan Albert
94b579166f Make use of sanitizers without clang an error.
Previously using a sanitizer would imply clang. It should be an error
instead so it's more obvious.

Change-Id: I67c949bfda3718a0d19da7e358b5fde447fce334
2015-04-17 11:06:24 -07:00
Dan Albert
2717620873 Merge "Clean up sanitizer configuration." 2015-04-17 16:47:01 +00:00
Dan Albert
27ccb75af7 Clean up sanitizer configuration.
* Refactor a few pieces to avoid deeply nested conditionals.
 * LOCAL_SANITIZE := never replaces LOCAL_ADDRESS_SANITIZER := false.

Change-Id: I68bb8c5edda6ecd40179c5ba9f18d06e96aaa260
2015-04-17 09:39:12 -07:00
Sami Tolvanen
29f529f33e Calculate max_stashed_blocks correctly for block OTA v3
The updater automatically stashes overlapping source blocks to
make it possible to resume if the command performing the update
is interrupted. However, blockimgdiff.py does not take this into
account and therefore, max_stashed_blocks indicates only the
number of explicitly stashed blocks. Change blockimgdiff.py to
correctly calculate the maximum used stash space, including any
automatically stashed blocks.

Bug: 20309033
Change-Id: Ibf5cb1abc38c54e60a6ad3ce4cbce43556b08ac2
2015-04-17 16:28:08 +01:00
Lajos Molnar
3a5602ebb8 Merge "core_base.mk: switch to new H264 and MPEG2 software codecs" 2015-04-17 04:58:22 +00:00
Lajos Molnar
f623a80480 core_base.mk: switch to new H264 and MPEG2 software codecs
Change-Id: I3078a4ef6e73e95edcdd16b087ac61ae56c4b812
2015-04-16 19:02:47 -07:00
Glenn Kasten
1004eccb16 Merge "Fix bookmark title" 2015-04-16 23:12:50 +00:00
Glenn Kasten
1efbc8996e Fix bookmark title
Bug: 20299601
Change-Id: Ie57daf7b378cf370e34ff282d97fd36f2d74031a
2015-04-16 11:56:22 -07:00
Mark Salyzyn
1ff61a9b2d Merge "build: fs_config_generate must open file in binary mode" 2015-04-16 17:07:47 +00:00
Lajos Molnar
7c794b1659 Merge "Revert "core_base.mk: switch to new H264 and MPEG2 software codecs"" 2015-04-16 15:57:02 +00:00
Lajos Molnar
37e931d9c3 Revert "core_base.mk: switch to new H264 and MPEG2 software codecs"
clang builds fail on the dependent libraries

This reverts commit c628500ca5.

Change-Id: Ibd4cdce82b890bd3cb9d03a1a1bc0e4fc0e22ee8
2015-04-16 15:49:08 +00:00
Mark Salyzyn
6024069f37 build: fs_config_generate must open file in binary mode
Bug: 19908228
Change-Id: I2361b8af90b3729deb438e6a7a7179de12680b65
2015-04-16 08:43:33 -07:00
Lajos Molnar
161c69714d Merge "core_base.mk: switch to new H264 and MPEG2 software codecs" 2015-04-16 15:02:03 +00:00
Mark Salyzyn
7a1d4d5e49 Merge "fs_config: Add fs_config_generate" 2015-04-15 23:50:44 +00:00