aboutsummaryrefslogtreecommitdiff
path: root/en
diff options
context:
space:
mode:
authorAndroid Partner Docs <noreply@android.com>2018-02-26 16:22:26 -0800
committerClay Murphy <claym@google.com>2018-02-26 18:38:53 -0800
commit7a4e60bdebfa9c7ebf0a953770da06c29488d1ef (patch)
tree021e37ca44f1f03fc9b76d2c5f46866be1418139 /en
parentd5e0ee3300d7176fb17595ce3e7c7d18703a9f31 (diff)
downloadsource.android.com-7a4e60bdebfa9c7ebf0a953770da06c29488d1ef.tar.gz
Docs: Changes to source.android.com
- 187099260 Update wording around package level inheritance rules. by Android Partner Docs <noreply@android.com> - 187049276 Devsite localized content from translation request d5454d... by Android Partner Docs <noreply@android.com> - 187034078 Updated broken links to debian files by Christina Nguyen <cqn@google.com> - 186828031 Document the current abort stack, where we've shaved off ... by Android Partner Docs <noreply@android.com> - 186781359 Devsite localized content from translation request 38d16c... by Android Partner Docs <noreply@android.com> - 186765463 Change update_engine log file location and add info about... by Christina Nguyen <cqn@google.com> - 186680947 Add paragraph about building on Linux by Android Partner Docs <noreply@android.com> - 186481923 Devsite localized content from translation request 70c39d... by Android Partner Docs <noreply@android.com> - 186476322 Correct typo (Github > GitHub) by Danielle Roberts <daroberts@google.com> PiperOrigin-RevId: 187099260 Change-Id: I9dc6de150efa78fc5c186249cee6121bedb25419
Diffstat (limited to 'en')
-rw-r--r--en/devices/architecture/hidl/versioning.html8
-rw-r--r--en/devices/tech/debug/ftrace.html2
-rw-r--r--en/devices/tech/debug/native-crash.html59
-rw-r--r--en/devices/tech/ota/ab/index.html65
-rw-r--r--en/setup/initializing.html8
-rw-r--r--en/setup/requirements.html7
6 files changed, 81 insertions, 68 deletions
diff --git a/en/devices/architecture/hidl/versioning.html b/en/devices/architecture/hidl/versioning.html
index fbfd60fa..13bce259 100644
--- a/en/devices/architecture/hidl/versioning.html
+++ b/en/devices/architecture/hidl/versioning.html
@@ -491,8 +491,8 @@ must be true:</p>
<ol>
<li>"Previous minor version is valid": <code>package@major.(minor-1)</code>
must be defined and follow the same rule A (none of
-<code>package@major.0</code> through <code>package@major.(major-2)</code>
-are defined) or rule B (if it is an uprev from <code>@major.(major-2)</code>);
+<code>package@major.0</code> through <code>package@major.(minor-2)</code>
+are defined) or rule B (if it is an uprev from <code>@major.(minor-2)</code>);
<br><br>
AND
<br><br>
@@ -627,10 +627,8 @@ combination of interface-level inheritance and building of UDTs by composition.
backwards-compatible inheritance rules are as follows:</p>
<ol>
-<li>All interfaces of the parent package are inherited from by interfaces in the
+<li>All top-level interfaces of the parent package are inherited from by interfaces in the
child package.</li>
-<li>All data types of the parent package are present in the new package and can
-be handled by the (possibly reimplemented) methods from the old package.</li>
<li>New interfaces may also be added the new package (no restrictions about
relationships to other interfaces in other packages).</li>
<li>New data types may also be added for use by either new methods of uprev'ed
diff --git a/en/devices/tech/debug/ftrace.html b/en/devices/tech/debug/ftrace.html
index 2fbaba4b..c4f8bbcd 100644
--- a/en/devices/tech/debug/ftrace.html
+++ b/en/devices/tech/debug/ftrace.html
@@ -106,7 +106,7 @@ cat /d/tracing/trace &gt; /data/local/tmp/trace_output
<p>The trace_output gives the trace in text form. To visualize it using
Catapult, get the
<a href="https://github.com/catapult-project/catapult/tree/master/">Catapult
-repository</a> from Github and run trace2html:</p>
+repository</a> from GitHub and run trace2html:</p>
<pre class="devsite-terminal devsite-click-to-copy">
catapult/tracing/bin/trace2html ~/path/to/trace_file
diff --git a/en/devices/tech/debug/native-crash.html b/en/devices/tech/debug/native-crash.html
index 00f72cd0..686af070 100644
--- a/en/devices/tech/debug/native-crash.html
+++ b/en/devices/tech/debug/native-crash.html
@@ -49,15 +49,40 @@ plus SIGABRT are the things to look for in the <code>debuggerd</code> output to
recognize this case.</p>
<p>
-As mentioned above, there may be an explicit "abort message" line. But you
+As mentioned above, there may be an explicit "abort message" line. You
should also look in the <code>logcat</code> output to see what this thread logged before
-deliberately killing itself, because the basic abort primitive doesn't accept a
-message.
+deliberately killing itself, because unlike assert(3) or high level fatal logging
+facilities, abort(3) doesn't accept a message.
</p>
+
+<p>
+Current versions of Android inline the <code><a
+href="http://man7.org/linux/man-pages/man2/tgkill.2.html">tgkill(2)</a></code>
+system call, so their stacks are the easiest to read, with the call to abort(3)
+at the very top:
+</p>
+<pre class="devsite-click-to-copy">
+pid: 4637, tid: 4637, name: crasher >>> crasher <<<
+signal 6 (<i style="color:Orange">SIGABRT</i>), code -6 (SI_TKILL), fault addr --------
+<i style="color:Orange">Abort message</i>: 'some_file.c:123: some_function: assertion "false" failed'
+ r0 00000000 r1 0000121d r2 00000006 r3 00000008
+ r4 0000121d r5 0000121d r6 ffb44a1c r7 0000010c
+ r8 00000000 r9 00000000 r10 00000000 r11 00000000
+ ip ffb44c20 sp ffb44a08 lr eace2b0b pc eace2b16
+backtrace:
+ #00 pc 0001cb16 /system/lib/<i style="color:Orange">libc.so</i> (<i style="color:Orange">abort</i>+57)
+ #01 pc 0001cd8f /system/lib/libc.so (__assert2+22)
+ #02 pc 00001531 /system/bin/crasher (do_action+764)
+ #03 pc 00002301 /system/bin/crasher (main+68)
+ #04 pc 0008a809 /system/lib/libc.so (__libc_init+48)
+ #05 pc 00001097 /system/bin/crasher (_start_main+38)
+</pre>
+
<p>
-Older versions of Android (especially on 32-bit ARM) followed a convoluted path
-between the original abort call (frame 4 here) and the actual sending of the
-signal (frame 0 here):
+Older versions of Android followed a convoluted path between the original abort call (frame 4 here)
+and the actual sending of the signal (frame 0 here). This was especially true on 32-bit ARM,
+which added <code>__libc_android_abort</code> (frame 3 here) to the other platforms' sequence of
+<code>raise</code>/<code>pthread_kill</code>/<code>tgkill</code>:
</p>
<pre class="devsite-click-to-copy">
pid: 1656, tid: 1656, name: crasher >>> crasher <<<
@@ -80,28 +105,6 @@ backtrace:
#09 pc 00000abc /system/xbin/crasher
</pre>
<p>
-More recent versions call <code><a
-href="http://man7.org/linux/man-pages/man2/tgkill.2.html">tgkill(2)</a></code>
-directly from <code>abort</code>, so there are fewer stack frames for you to
-skip over before you get to the interesting frames:</p>
-
-<pre class="devsite-click-to-copy">
-pid: 25301, tid: 25301, name: crasher >>> crasher <<<
-signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
- r0 00000000 r1 000062d5 r2 00000006 r3 00000008
- r4 ffa09dd8 r5 000062d5 r6 000062d5 r7 0000010c
- r8 00000000 r9 00000000 sl 00000000 fp ffa09f0c
- ip 00000000 sp ffa09dc8 lr eac63ce3 pc eac93f0c cpsr 000d0010
-backtrace:
- #00 pc 00049f0c /system/lib/libc.so (tgkill+12)
- #01 pc 00019cdf /system/lib/libc.so (abort+50)
- #02 pc 000012db /system/xbin/crasher (maybe_abort+26)
- #03 pc 000015b7 /system/xbin/crasher (do_action+414)
- #04 pc 000020d5 /system/xbin/crasher (main+100)
- #05 pc 000177a1 /system/lib/libc.so (__libc_init+48)
- #06 pc 000010e4 /system/xbin/crasher (_start+96)
-</pre>
-<p>
You can reproduce an instance of this type of crash using: <code>crasher
abort</code>
</p>
diff --git a/en/devices/tech/ota/ab/index.html b/en/devices/tech/ota/ab/index.html
index c1b70856..48a9fea5 100644
--- a/en/devices/tech/ota/ab/index.html
+++ b/en/devices/tech/ota/ab/index.html
@@ -245,31 +245,31 @@
<h4 id="update_engine_source">Update engine source</h4>
- <p>
- The <code>update_engine</code> source is located in
- <code><a href="https://android.googlesource.com/platform/system/update_engine/" class="external">system/update_engine</a></code>.
- The A/B OTA dexopt files are split between <code>installd</code> and
- a package manager:
- </p>
+ <p>
+ The <code>update_engine</code> source is located in
+ <code><a href="https://android.googlesource.com/platform/system/update_engine/" class="external">system/update_engine</a></code>.
+ The A/B OTA dexopt files are split between <code>installd</code> and
+ a package manager:
+ </p>
- <ul>
- <li>
- <code><a href="https://android.googlesource.com/platform/frameworks/native/+/master/cmds/installd/" class="external-link">frameworks/native/cmds/installd/</a></code>ota*
- includes the postinstall script, the binary for chroot, the
- installd clone that calls dex2oat, the post-OTA move-artifacts
- script, and the rc file for the move script.
- </li>
- <li>
- <code><a href="https://android.googlesource.com/platform/frameworks/base/+/master/services/core/java/com/android/server/pm/OtaDexoptService.java" class="external-link">frameworks/base/services/core/java/com/android/server/pm/OtaDexoptService.java</a></code>
- (plus <code><a href="https://android.googlesource.com/platform/frameworks/base/+/master/services/core/java/com/android/server/pm/OtaDexoptShellCommand.java" class="external-link">OtaDexoptShellCommand</a></code>)
- is the package manager that prepares dex2oat commands for
- applications.
- </li>
- </ul>
+ <ul>
+ <li>
+ <code><a href="https://android.googlesource.com/platform/frameworks/native/+/master/cmds/installd/" class="external-link">frameworks/native/cmds/installd/</a></code>ota*
+ includes the postinstall script, the binary for chroot, the
+ installd clone that calls dex2oat, the post-OTA move-artifacts
+ script, and the rc file for the move script.
+ </li>
+ <li>
+ <code><a href="https://android.googlesource.com/platform/frameworks/base/+/master/services/core/java/com/android/server/pm/OtaDexoptService.java" class="external-link">frameworks/base/services/core/java/com/android/server/pm/OtaDexoptService.java</a></code>
+ (plus <code><a href="https://android.googlesource.com/platform/frameworks/base/+/master/services/core/java/com/android/server/pm/OtaDexoptShellCommand.java" class="external-link">OtaDexoptShellCommand</a></code>)
+ is the package manager that prepares dex2oat commands for
+ applications.
+ </li>
+ </ul>
- <p>
- For a working example, refer to <code><a href="https://android.googlesource.com/device/google/marlin/+/nougat-dr1-release/device-common.mk" class="external-link">/device/google/marlin/device-common.mk</a></code>.
- </p>
+ <p>
+ For a working example, refer to <code><a href="https://android.googlesource.com/device/google/marlin/+/nougat-dr1-release/device-common.mk" class="external-link">/device/google/marlin/device-common.mk</a></code>.
+ </p>
<h4 id="update_engine_logs">Update engine logs</h4>
@@ -282,24 +282,29 @@
<ul>
<li><a
- href="https://android-review.googlesource.com/c/platform/system/update_engine/+/486618">
+ href="https://android-review.googlesource.com/c/platform/system/update_engine/+/486618">
Change 486618</a></li>
<li><a
- href="https://android-review.googlesource.com/c/platform/system/core/+/529080">
+ href="https://android-review.googlesource.com/c/platform/system/core/+/529080">
Change 529080</a></li>
<li><a
- href="https://android-review.googlesource.com/c/platform/system/update_engine/+/529081">
+ href="https://android-review.googlesource.com/c/platform/system/update_engine/+/529081">
Change 529081</a></li>
<li><a
- href="https://android-review.googlesource.com/c/platform/system/sepolicy/+/534660">
+ href="https://android-review.googlesource.com/c/platform/system/sepolicy/+/534660">
Change 534660</a></li>
+ <li><a
+ href="https://android-review.googlesource.com/c/platform/system/update_engine/+/594637">
+ Change 594637</a></li>
</ul>
<p>These changes save a copy of the most recent
<code>update_engine</code> log to
- <code>/data/misc/update_engine_log/update_engine.log</code>. Users
- with the <strong>log</strong> group ID will be able to access the file
- system logs.
+ <code>/data/misc/update_engine_log/update_engine.<var>YEAR</var>-<var>TIME</var></code>.
+ In addition to the current log, the five most recent logs are saved
+ under <code>/data/misc/update_engine_log/</code>. Users
+ with the <strong>log</strong> group ID will be able to access the
+ file system logs.</p>
<h3 id="bootloader-interactions">Bootloader interactions</h3>
diff --git a/en/setup/initializing.html b/en/setup/initializing.html
index aa857f4d..518a1d98 100644
--- a/en/setup/initializing.html
+++ b/en/setup/initializing.html
@@ -81,16 +81,16 @@ found not to work on 14.04 using the instructions below.</em></p>
<ol>
<li>
<p>Download the <code>.deb</code> packages for 64-bit architecture from
-<a href="http://archive.ubuntu.com/ubuntu/pool/universe/o/openjdk-8/">archive.ubuntu.com</a>:</p>
+<a href="http://old-releases.ubuntu.com/ubuntu/pool/universe/o/openjdk-8/">old-releases.ubuntu.com</a>:</p>
<ul>
<li><a
-href="http://archive.ubuntu.com/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jre-headless_8u45-b14-1_amd64.deb">openjdk-8-jre-headless_8u45-b14-1_amd64.deb</a>
+href="http://old-releases.ubuntu.com/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jre-headless_8u45-b14-1_amd64.deb">openjdk-8-jre-headless_8u45-b14-1_amd64.deb</a>
with SHA256 <code>0f5aba8db39088283b51e00054813063173a4d8809f70033976f83e214ab56c0</code></li>
<li><a
-href="http://archive.ubuntu.com/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jre_8u45-b14-1_amd64.deb">openjdk-8-jre_8u45-b14-1_amd64.deb</a>
+href="http://old-releases.ubuntu.com/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jre_8u45-b14-1_amd64.deb">openjdk-8-jre_8u45-b14-1_amd64.deb</a>
with SHA256 <code>9ef76c4562d39432b69baf6c18f199707c5c56a5b4566847df908b7d74e15849</code></li>
<li><a
-href="http://archive.ubuntu.com/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jdk_8u45-b14-1_amd64.deb">openjdk-8-jdk_8u45-b14-1_amd64.deb</a>
+href="http://old-releases.ubuntu.com/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jdk_8u45-b14-1_amd64.deb">openjdk-8-jdk_8u45-b14-1_amd64.deb</a>
with SHA256 <code>6e47215cf6205aa829e6a0a64985075bd29d1f428a4006a80c9db371c2fc3c4c</code></li>
</ul>
</li>
diff --git a/en/setup/requirements.html b/en/setup/requirements.html
index 69a60a27..e95cbb20 100644
--- a/en/setup/requirements.html
+++ b/en/setup/requirements.html
@@ -145,6 +145,13 @@ older versions of Android.</p>
SDK</li>
</ul>
+ <p><b>Note</b>: consider building on GNU/Linux, not another
+ operating system. The Android build system normally uses ART,
+ running on the build machine, to pre-compile system dex files. Since
+ ART is able to run only on Linux, the build system skips this
+ pre-compilation step on non-Linux operating systems, resulting in an
+ Android build with reduced performance.</p>
+
<h4 id=jdk>JDK</h4>
<p>See <a href="initializing.html#installing-the-jdk">Installing the JDK</a>