Commit Graph

3402 Commits

Author SHA1 Message Date
Tao Bao
1fc67631ee Revise stash for BBOTAs when needed.
When generating incremental BBOTAs (v2 and above), we need to ensure
that the needed runtime stash is below the given threshold. If it's
running out of space on /cache, we replace the command that uses a
stash with a "new" command instead.

This may increase the OTA package size, since it is carrying more full
blocks instead of patches. It gets even worse for large files that span
a number of blocks, because currently we will store all the blocks for
the file as "new" blocks if stashing cannot be satisfied. We may further
optimize by splitting them into smaller chunks so that most of them can
still be stashed.

Bug: 22430577
Change-Id: Ieae5243d461e3f899f613f76a380f6f7c3edb356
(cherry picked from commit 82c47981bd)
2015-08-26 15:00:38 -07:00
Tao Bao
d47d8e1488 Assert the stash size when generating OTAs.
With block-based OTA v2 and v3, it requires stash space on the /cache
partition to back up blocks during an update. We need to ensure that
it doesn't exceed the partition size. Since there might be other files
on /cache as well, we use cache_size * threshold as the maximum allowed
size. The threshold defaults to 0.8, which can be overridden by command
line option '--stash_threshold'.

Change-Id: Ieee5d373c9bfb2ea401d85ca8a3adb491579de76
(cherry picked from commit 23ac404212)
2015-08-26 15:00:38 -07:00
Tao Bao
78284e6c79 am 68319cdf: am 95708eea: Merge "Split large files for BBOTA v3."
* commit '68319cdf4762c7c48cff68ede2b7f4bc267db735':
  Split large files for BBOTA v3.
2015-08-26 19:59:04 +00:00
Tao Bao
8b528fc3ef am 68319cdf: am 95708eea: Merge "Split large files for BBOTA v3."
* commit '68319cdf4762c7c48cff68ede2b7f4bc267db735':
  Split large files for BBOTA v3.
2015-08-26 19:55:20 +00:00
Tao Bao
9a5caf2c30 Split large files for BBOTA v3.
For BBOTA v3, we need to stash source blocks to support resumable
feature. However, with the growth of file size and the shrink of the
cache size, source blocks that represent a file are too large to be
stashed as a whole. CL in [1] solves the issue by replacing the diff
command with a "new" command. However, it may increase the generated
package size substantially (e.g. from ~100MB to ~400MB).

With this CL, if a file spans too many blocks, we split it into smaller
pieces by generating multiple commands. For the same case above, it
reduces the package size to ~150MB.

One potential downside is that after splitting, files like .jar,
.apk and .zip can no longer use imgdiff. We may lose the potential
benefit of using imgdiff for patch size reduction.

[1] commit 82c47981bd

Bug: 22430577
Change-Id: I5684fab0ac41c8d94fe18f52a34cef77e06f741c
2015-08-26 10:50:11 -07:00
smain@google.com
c7f0a0685f am 425e1d5c: am e24174d2: am 15bb28fc: am ed7e864a: fix a few bugs in the studio download button behavior: - make button text always white (avoid blue on blue during hover) - revise logic to add the platform name to download button to avoid weird duplicity bug on sm
* commit '425e1d5c57f808ae6308d49125d68b5b43e78d7c':
  fix a few bugs in the studio download button behavior:  - make button text always white (avoid blue on blue during hover)  - revise logic to add the platform name to download button to avoid weird duplicity bug on small screens  - remove the animation script when clicking download before agree because it reloaded the page (unkown cause) depends on: https://googleplex-android-review.git.corp.google.com/#/c/752757/
2015-08-24 17:00:55 +00:00
smain@google.com
e24174d2a2 am 15bb28fc: am ed7e864a: fix a few bugs in the studio download button behavior: - make button text always white (avoid blue on blue during hover) - revise logic to add the platform name to download button to avoid weird duplicity bug on small screens - remove the
* commit '15bb28fc73fa30e9c7b8ee0d924c8906724809e0':
  fix a few bugs in the studio download button behavior:  - make button text always white (avoid blue on blue during hover)  - revise logic to add the platform name to download button to avoid weird duplicity bug on small screens  - remove the animation script when clicking download before agree because it reloaded the page (unkown cause) depends on: https://googleplex-android-review.git.corp.google.com/#/c/752757/
2015-08-24 16:48:53 +00:00
smain@google.com
15bb28fc73 am ed7e864a: fix a few bugs in the studio download button behavior: - make button text always white (avoid blue on blue during hover) - revise logic to add the platform name to download button to avoid weird duplicity bug on small screens - remove the animation scr
* commit 'ed7e864a735f004f1dbb4a2db5261855b5693913':
  fix a few bugs in the studio download button behavior:  - make button text always white (avoid blue on blue during hover)  - revise logic to add the platform name to download button to avoid weird duplicity bug on small screens  - remove the animation script when clicking download before agree because it reloaded the page (unkown cause) depends on: https://googleplex-android-review.git.corp.google.com/#/c/752757/
2015-08-24 16:41:18 +00:00
smain@google.com
6e0cca0876 am ed7e864a: fix a few bugs in the studio download button behavior: - make button text always white (avoid blue on blue during hover) - revise logic to add the platform name to download button to avoid weird duplicity bug on small screens - remove the animation scr
* commit 'ed7e864a735f004f1dbb4a2db5261855b5693913':
  fix a few bugs in the studio download button behavior:  - make button text always white (avoid blue on blue during hover)  - revise logic to add the platform name to download button to avoid weird duplicity bug on small screens  - remove the animation script when clicking download before agree because it reloaded the page (unkown cause) depends on: https://googleplex-android-review.git.corp.google.com/#/c/752757/
2015-08-24 16:41:10 +00:00
Tao Bao
b4ef770e8d am ecb3bbf4: am 7c4c6f58: sparse_img.py: Divide NONZERO blocks into groups.
* commit 'ecb3bbf4bf0f583fdb6c861a8eeafb21c913bae4':
  sparse_img.py: Divide NONZERO blocks into groups.
2015-08-20 18:37:59 +00:00
smain@google.com
ed7e864a73 fix a few bugs in the studio download button behavior:
- make button text always white (avoid blue on blue during hover)
 - revise logic to add the platform name to download button to avoid weird duplicity bug on small screens
 - remove the animation script when clicking download before agree because it reloaded the page (unkown cause)
depends on: https://googleplex-android-review.git.corp.google.com/#/c/752757/

Change-Id: I1b2b4ff9c0b0cbbd34f1c77a2b736fe3425a16e4
2015-08-20 00:52:27 +00:00
Tao Bao
7c4c6f589e sparse_img.py: Divide NONZERO blocks into groups.
For squashfs, we currently don't have a system.map. So the whole system
image will be treated as a single file. But for some unknown bug, the
updater will be killed due to OOM when writing back the patched image to
flash (observed on lenok-userdebug MEA49). Prior to getting a real fix,
we evenly divide the non-zero blocks into smaller groups (currently 1024
blocks or 4MB per group).

Bug: 23227672
Change-Id: Ifeddd8d802f01f8cd2a743a1d1217a284fb6e182
2015-08-19 17:10:23 -07:00
Tao Bao
5e88f021cf am 5d690a37: am ab9a3588: Merge "Revise stash for BBOTAs when needed."
* commit '5d690a37d4b3b33dee1cfc2a64b66ed4e9c03460':
  Revise stash for BBOTAs when needed.
2015-08-18 17:25:34 +00:00
Tao Bao
20c68b7494 am 5d690a37: am ab9a3588: Merge "Revise stash for BBOTAs when needed."
* commit '5d690a37d4b3b33dee1cfc2a64b66ed4e9c03460':
  Revise stash for BBOTAs when needed.
2015-08-18 17:25:09 +00:00
Tao Bao
ab9a358801 Merge "Revise stash for BBOTAs when needed." 2015-08-18 16:59:05 +00:00
Dan Willemsen
6d65635ef7 am 48d95e75: am 05d97fe7: Merge "Remove legacy windows platform build support"
* commit '48d95e752536dc7a81c141e435e8a90b7929cf02':
  Remove legacy windows platform build support
2015-08-18 04:43:06 +00:00
Dan Willemsen
1b14846717 am 48d95e75: am 05d97fe7: Merge "Remove legacy windows platform build support"
* commit '48d95e752536dc7a81c141e435e8a90b7929cf02':
  Remove legacy windows platform build support
2015-08-18 04:43:04 +00:00
Dan Willemsen
05d97fe723 Merge "Remove legacy windows platform build support" 2015-08-18 04:31:07 +00:00
Dan Willemsen
9cf990beec resolved conflicts for merge of 05fae7e0 to mnc-dev-plus-aosp
Change-Id: I9f0f1169839afabc7ec7e439b668798e2cd111a3
2015-08-17 20:50:48 -07:00
Dan Willemsen
014719fcfc resolved conflicts for merge of 05fae7e0 to mnc-dr-dev-plus-aosp
Change-Id: I32919ab1e3cd5f84d09180125a7294bcfa35549e
2015-08-17 20:44:29 -07:00
Dan Willemsen
e65107508a Merge "Use repeatable timestamps" 2015-08-18 03:30:11 +00:00
Omari Stephens
b89679f0b8 am c10e65ac: Merge "DO NOT MERGE Revert "D.N.M. Revert "Add the ability to display annotations in the generated docs""" into mnc-ub-dev
* commit 'c10e65ac58064ee1595864c2db3c39e35f70944f':
  DO NOT MERGE Revert "D.N.M. Revert "Add the ability to display annotations in the generated docs""
2015-08-17 23:05:58 +00:00
Omari Stephens
c10e65ac58 Merge "DO NOT MERGE Revert "D.N.M. Revert "Add the ability to display annotations in the generated docs""" into mnc-ub-dev 2015-08-17 22:59:25 +00:00
Dan Willemsen
145ae32069 Remove legacy windows platform build support
We still support HOST_OS=windows for the SDK host tools cross-builds, but
that's only when USE_MINGW is set when running under linux.

Change-Id: I37da87dc9fbbd69ba10ce4d7f2668ab3f6482d92
2015-08-17 12:35:04 -07:00
Tao Bao
02c87a01d9 am 3b409d56: am dae6455c: Merge "Add an option to include a full bootloader in incremental OTA."
* commit '3b409d56f4e142dd4afc7e11bbe4502123a46f31':
  Add an option to include a full bootloader in incremental OTA.
2015-08-17 18:29:32 +00:00
Tao Bao
e3103ce2a5 am 3b409d56: am dae6455c: Merge "Add an option to include a full bootloader in incremental OTA."
* commit '3b409d56f4e142dd4afc7e11bbe4502123a46f31':
  Add an option to include a full bootloader in incremental OTA.
2015-08-17 17:55:34 +00:00
leozwang
aa6c1a1445 Add an option to include a full bootloader in incremental OTA.
Bug: 23101469
Change-Id: Iac466b83f789f10d26e8d289dce766cf0d05148b
(cherry picked from commit c1324751e79b23a63ea494f4bc784446c8f32435)
2015-08-17 10:34:01 -07:00
Tao Bao
82c47981bd Revise stash for BBOTAs when needed.
When generating incremental BBOTAs (v2 and above), we need to ensure
that the needed runtime stash is below the given threshold. If it's
running out of space on /cache, we replace the command that uses a
stash with a "new" command instead.

This may increase the OTA package size, since it is carrying more full
blocks instead of patches. It gets even worse for large files that span
a number of blocks, because currently we will store all the blocks for
the file as "new" blocks if stashing cannot be satisfied. We may further
optimize by splitting them into smaller chunks so that most of them can
still be stashed.

Bug: 22430577
Change-Id: I5a49e361adc7d3d41de2e9c08ee9b08c1e6c091a
2015-08-17 10:21:49 -07:00
Dirk Dougherty
a4f8444796 am 23a7114f: am 3de73270: am 8ea2636c: am 6a8f88cd: adjust image placement for m hero on medium screens.
* commit '23a7114fbb605d582a3451f522b9d1f6ec0b2741':
  adjust image placement for m hero on medium screens.
2015-08-17 00:19:08 +00:00
Dirk Dougherty
23a7114fbb am 3de73270: am 8ea2636c: am 6a8f88cd: adjust image placement for m hero on medium screens.
* commit '3de7327062f452f3489e04aeb07b43efed32764f':
  adjust image placement for m hero on medium screens.
2015-08-17 00:13:21 +00:00
Dirk Dougherty
3de7327062 am 8ea2636c: am 6a8f88cd: adjust image placement for m hero on medium screens.
* commit '8ea2636c190789263aaf78b89163c8e85bef3417':
  adjust image placement for m hero on medium screens.
2015-08-17 00:06:12 +00:00
Dirk Dougherty
8ea2636c19 am 6a8f88cd: adjust image placement for m hero on medium screens.
* commit '6a8f88cdec931470256ade35ffe6b8097425e36f':
  adjust image placement for m hero on medium screens.
2015-08-16 23:57:48 +00:00
Dirk Dougherty
b92c45fb98 am 6a8f88cd: adjust image placement for m hero on medium screens.
* commit '6a8f88cdec931470256ade35ffe6b8097425e36f':
  adjust image placement for m hero on medium screens.
2015-08-16 22:31:27 +00:00
Dirk Dougherty
6a8f88cdec adjust image placement for m hero on medium screens.
Change-Id: I644837bf151549ad8dbbfb194f8e699233362933
2015-08-14 21:19:22 -07:00
Omari Stephens
bc171e3e40 DO NOT MERGE Revert "D.N.M. Revert "Add the ability to display annotations in the generated docs""
This reverts commit 2d20e3d968.

Bug: 22723877
Bug: 8440225
2015-08-14 18:51:25 -07:00
Joe Fernandez
8e8a8d75b6 am e491aea7: am 251d0ad1: am a2869db8: am 71e0a80c: Merge "doc change: Add hero image for m and css for landing pages." into mnc-dev
* commit 'e491aea79d8bfb2dafe8e6dc8af6f5a326617e0b':
  doc change: Add hero image for m and css for landing pages.
2015-08-14 03:18:27 +00:00
Joe Fernandez
e491aea79d am 251d0ad1: am a2869db8: am 71e0a80c: Merge "doc change: Add hero image for m and css for landing pages." into mnc-dev
* commit '251d0ad1914e958044ecbd7d9bad86d8e446ddd3':
  doc change: Add hero image for m and css for landing pages.
2015-08-13 23:23:14 +00:00
Joe Fernandez
251d0ad191 am a2869db8: am 71e0a80c: Merge "doc change: Add hero image for m and css for landing pages." into mnc-dev
* commit 'a2869db89eb59e57b7f0cdfc5e526d5257b95ecc':
  doc change: Add hero image for m and css for landing pages.
2015-08-13 23:15:45 +00:00
Joe Fernandez
28a044b7e1 am 71e0a80c: Merge "doc change: Add hero image for m and css for landing pages." into mnc-dev
* commit '71e0a80c2c2fdc26bb014685eebb874aa40f782d':
  doc change: Add hero image for m and css for landing pages.
2015-08-13 23:12:15 +00:00
Joe Fernandez
a2869db89e am 71e0a80c: Merge "doc change: Add hero image for m and css for landing pages." into mnc-dev
* commit '71e0a80c2c2fdc26bb014685eebb874aa40f782d':
  doc change: Add hero image for m and css for landing pages.
2015-08-13 23:11:45 +00:00
Joe Fernandez
71e0a80c2c Merge "doc change: Add hero image for m and css for landing pages." into mnc-dev 2015-08-13 23:02:37 +00:00
Tao Bao
db1f93efef am 3a2e91ca: am 8765fca2: Merge "Free the stash after its use in BBOTA v2."
* commit '3a2e91cad7ec1309c07e9d96d572c6a0bed52346':
  Free the stash after its use in BBOTA v2.
2015-08-13 22:34:12 +00:00
Tao Bao
6968a724a5 am 3a2e91ca: am 8765fca2: Merge "Free the stash after its use in BBOTA v2."
* commit '3a2e91cad7ec1309c07e9d96d572c6a0bed52346':
  Free the stash after its use in BBOTA v2.
2015-08-13 22:31:27 +00:00
Tao Bao
bb625d2099 Free the stash after its use in BBOTA v2.
In BBOTA v2, the stash size computation is inaccurate. A stash will be
used only once, so we deduct its size from stashed_blocks right after
its use. However, the stash doesn't actually get freed until being
overwritten by another stash or destroyed at the end of an update. This
leads to OTA failures due to insufficient space on /cache. This CL
changes the BBOTA v2 script to generate an explicit free right after
its use.

Bug: 23119955
Change-Id: Icdd8352bb0ff778945937c870990a888c7a4d38b
2015-08-13 14:44:38 -07:00
Dirk Dougherty
083da20347 doc change: Add hero image for m and css for landing pages.
Change-Id: I52ddba716eebf821f8f5dbd888d6e3519f4284d4
2015-08-13 12:37:34 -07:00
Dianne Hackborn
68e0bbf998 am 59a76529: am 6ff3e53f: am 897f3ba8: am 25abc5a3: Merge "Fix issie #23116383: Include security patch level in Settings" into mnc-dev
* commit '59a7652985c6e49478348c6643b491275f1dc8f3':
  Fix issie #23116383: Include security patch level in Settings
2015-08-13 01:18:07 +00:00
Dianne Hackborn
59a7652985 am 6ff3e53f: am 897f3ba8: am 25abc5a3: Merge "Fix issie #23116383: Include security patch level in Settings" into mnc-dev
* commit '6ff3e53faaab66975674e16a1822d926c529bc5d':
  Fix issie #23116383: Include security patch level in Settings
2015-08-13 01:09:07 +00:00
Dianne Hackborn
6ff3e53faa am 897f3ba8: am 25abc5a3: Merge "Fix issie #23116383: Include security patch level in Settings" into mnc-dev
* commit '897f3ba8b1cc402fca16720be345ba9c587c326b':
  Fix issie #23116383: Include security patch level in Settings
2015-08-13 01:02:21 +00:00
Dianne Hackborn
897f3ba8b1 am 25abc5a3: Merge "Fix issie #23116383: Include security patch level in Settings" into mnc-dev
* commit '25abc5a38e2e7f2962463aa4e5cd407ecdde689c':
  Fix issie #23116383: Include security patch level in Settings
2015-08-13 00:54:30 +00:00
Dianne Hackborn
42ebdfc574 am 25abc5a3: Merge "Fix issie #23116383: Include security patch level in Settings" into mnc-dev
* commit '25abc5a38e2e7f2962463aa4e5cd407ecdde689c':
  Fix issie #23116383: Include security patch level in Settings
2015-08-13 00:53:51 +00:00