Commit graph

3121 commits

Author SHA1 Message Date
Dima Zavin
304f12270d init: delay importing files until after parsing the current file
If we process the import directive inline, then the ordering of the
commands for the "on xxx" sections would be a little unexpected. The
init.rc files do not really have an implied  order as to which section
appears and gets processed first. The init code itself provides that
ordering explicitly. For the user, the expectation is that if both the
current file and the imported file define a section (e.g. "on init"),
then the commands in the current file will be executed first, and then
the ones from the imported file(s).

The current implementation did not do that. It processed the import
directive inline, and thus the imported (i.e. dependent) files would
appear first in the command lists for the sections. This created
unintended side effects and the solution would have been to try and
put the import lines somewhere in the middle of the init file. This
would be difficult to notice and hard to extract the dependencies.

To solve this, we add the imports to a list for each file being parsed
and process the list after finishing parsing the file. This provides
predictable order for imports and provides a logical flow from the
user perspective: the currently parsed file gets to run its commands
before the files being imported.

Change-Id: I06dc35ff286314060e16b18923683cd2787269de
Signed-off-by: Dima Zavin <dima@android.com>
2012-01-05 15:02:00 -08:00
Dima Zavin
8886112d87 init: export all androidboot cmd line values as ro.boot.xx props
Also, clean up how we initialize the ro.xx properties and process
the kernel command line.

Change-Id: Iedda6c90e31340a189171a44b2767480403354f7
Signed-off-by: Dima Zavin <dima@android.com>
2012-01-05 15:02:00 -08:00
Dima Zavin
7634bf87cf init: import the hardware specific init file in init.rc
This removes the hardcoding of the file import in init and instead
allows the init.rc file to fully control what is loaded.

Change-Id: I933e5bbab57f1e8705a370d660f92c6508da94d2
Signed-off-by: Dima Zavin <dima@android.com>
2012-01-05 15:02:00 -08:00
Dima Zavin
976b878a0a init: allow init file imports to use properties in names
Adds new property syntax in init files during init file filename
expansion during the import command:
${prop.name}

So, one can do:  import /init.${ro.hardware}.usb.rc

Should convert other usages of property names to use the new function.

Change-Id: I9205d7d7a2da620bc8e6b89ac0eb554fad53ded3
Signed-off-by: Dima Zavin <dima@android.com>
2012-01-05 15:01:57 -08:00
Dima Zavin
65a8360795 init: initialize property area early at boot
The property service is still started later, but the property area
and the initial boot properties are initialized before the init.rc
file is processed. This allows init.rc files to have access to boot
properties during parsing.

Change-Id: Iae9ed1093c821831a864b39ae6bc697e62b94757
Signed-off-by: Dima Zavin <dima@android.com>
2011-12-20 13:46:17 -08:00
The Android Open Source Project
9f39cde527 am 1b251bde: Reconcile with ics-mr1-release
* commit '1b251bde764bcf3b689ee1942e005a821bd06d17':
2011-12-13 19:13:11 -08:00
The Android Open Source Project
1b251bde76 Reconcile with ics-mr1-release
Change-Id: Iaea0ecf6fc4429640a1d8811ec2034ea0f9eb48e
2011-12-13 19:10:41 -08:00
The Android Automerger
31b2f4414b merge in ics-mr1-release history after reset to ics-mr1 2011-12-13 16:04:11 -08:00
Vladimir Chtchetkine
d7f2dfdfea Merge "Fix the build." 2011-12-13 12:53:18 -08:00
Jesse Hall
e565492c6c am 3bc5e452: am 7cd3e0a3: Document ANativeWindow\'s buffer refcounting
* commit '3bc5e452808514c48cdb5d2c3ca14c022aeecf6f':
  Document ANativeWindow's buffer refcounting
2011-12-13 12:25:10 -08:00
Jesse Hall
3bc5e45280 am 7cd3e0a3: Document ANativeWindow\'s buffer refcounting
* commit '7cd3e0a3a2f9b104cd6c04f699ae62c4577787e2':
  Document ANativeWindow's buffer refcounting
2011-12-13 12:23:14 -08:00
Vladimir Chtchetkine
c4f37eed73 Fix the build.
Conditionally compile code that is intended to run inside the emulator only.

Change-Id: Ie82e415b2ff52395616f85871dddb38e65b0ed55
2011-12-13 12:19:29 -08:00
Vladimir Chtchetkine
ea36579f77 Merge "Use QEMU pipe for ADB communication when running in emulator." 2011-12-13 11:01:22 -08:00
Vladimir Chtchetkine
c13daef7bd Use QEMU pipe for ADB communication when running in emulator.
Change-Id: I7934b6272c2a9825d244ce76ff65dbce6e54ebff
2011-12-13 08:19:15 -08:00
Jean-Baptiste Queru
01fc7b2485 Merge "run-as: use mmap to read package list file" 2011-12-13 07:58:58 -08:00
The Android Open Source Project
7330ec21c1 am 00eac093: Reconcile with ics-mr1-release
* commit '00eac09334b10af78e6b9ef9390f492cc74ad5e3':
2011-12-13 05:40:54 -08:00
The Android Open Source Project
00eac09334 Reconcile with ics-mr1-release
Change-Id: I3f3a977f341cca1f9e0b4a0567fe5fb9f6dd7e0d
2011-12-13 05:12:05 -08:00
The Android Automerger
fb71a12ec7 merge in ics-mr1-release history after reset to ics-mr1 2011-12-12 22:09:38 -08:00
Jesse Hall
7cd3e0a3a2 Document ANativeWindow's buffer refcounting
Change-Id: I5454e90afd1a1b7d4a75c503f8dca712dba33790
2011-12-12 16:54:14 -08:00
Christopher Tate
1f4bada667 am 650307df: am b1dfffe6: Fix \'adb backup\' on Windows
* commit '650307df33fc834c251df71c78b00cc0ae6529b7':
  Fix 'adb backup' on Windows
2011-12-12 15:39:07 -08:00
Christopher Tate
650307df33 am b1dfffe6: Fix \'adb backup\' on Windows
* commit 'b1dfffe6bb506313a3bc9146d2f6f8c533213193':
  Fix 'adb backup' on Windows
2011-12-09 16:56:21 -08:00
Christopher Tate
b1dfffe6bb Fix 'adb backup' on Windows
Use the same call sequence that 'adb pull' uses for creating the
output file.  adb_open_mode() apparently does not work on Windows
hosts.

Bug 5733007

Change-Id: I48d719c4657c93e19f6790cf1c6da610d49f5806
2011-12-09 15:29:30 -08:00
The Android Open Source Project
13805ae959 am 336658c3: Reconcile with ics-mr1-release
* commit '336658c321a6f15f121514342b0a508d84b4b415':
2011-12-09 14:57:37 -08:00
Nick Kralevich
4367b4ad61 Merge "set mmap_min_addr to 32768" 2011-12-08 14:05:13 -08:00
The Android Open Source Project
336658c321 Reconcile with ics-mr1-release
Change-Id: I90f80bed70319b9973996b74f78b421b87eef8e7
2011-12-08 10:22:22 -08:00
Christopher Tate
c6b07d94fa Merge "Tweak logcat parameters" 2011-12-07 16:02:37 -08:00
Christopher Tate
db0a880c46 Tweak logcat parameters
Change-Id: If97ee1eb682d95fa05b5e2003a204a628bd6ae4d
2011-12-07 16:01:59 -08:00
David 'Digit' Turner
5792ce79cc run-as: use mmap to read package list file
This patch uses mmap() to read /data/system/packages.list

This avoids depending on the size of a fixed static buffer
which may happen to be too short for systems with a lot of
packages installed.

Also avoids calling malloc() which we don't want to trust here
since run-as is a setuid program.

Change-Id: I1d640a08b5d73af2fc80546b01c8d970c7f6b514
2011-12-06 14:22:30 -08:00
The Android Open Source Project
de90da4d8a Reconcile with ics-mr1-release
Change-Id: I47a9f56fb1e66b1a488e8510aca941ffd26e2ebe
2011-12-06 09:03:20 -08:00
Nick Kralevich
27cca21a5d set mmap_min_addr to 32768
Bug: 5712789
Change-Id: I586a99cd63d8fba06bc2562b1cfce531ee4f554c
2011-12-06 08:31:17 -08:00
The Android Automerger
0d0c0ce6ba merge in ics-mr1-release history after reset to ics-mr1 2011-12-05 20:36:43 -08:00
Vladimir Chtchetkine
15ec947b65 am e64ad60a: (-s ours) am ce48083f: Fixes ADB crash on Windows due to large number of connections. do not merge.
* commit 'e64ad60aaf66dd8bce6c6413decfc308bc7c0151':
  Fixes ADB crash on Windows due to large number of connections. do not merge.
2011-12-05 16:32:48 -08:00
Vladimir Chtchetkine
e64ad60aaf am ce48083f: Fixes ADB crash on Windows due to large number of connections. do not merge.
* commit 'ce48083fc90cee807dd66608e2c3e496145af9ff':
  Fixes ADB crash on Windows due to large number of connections. do not merge.
2011-12-05 13:16:53 -08:00
Vladimir Chtchetkine
ce48083fc9 Fixes ADB crash on Windows due to large number of connections. do not merge.
The reason for the crash is that ADB on Windows uses WaitForMultipleObjects to
wait on connection events. When number of connections exceeds 64, ADB crashes,
because WaitForMultipleObjects API doesn't support more than 64 handles. This
CL contains a fixer routine that allows waiting on an arbitrary number of
handles.

(cherry picked from commit ac52833e48)

Change-Id: I8ad264765e5b38d01a31e42b445f97ea86e49948
2011-12-05 13:14:23 -08:00
Vladimir Chtchetkine
de0b321880 Merge "Fixes ADB crash on Windows due to large number of connections." 2011-12-03 07:05:47 -08:00
Kenny Root
a1d3ef0b25 Merge "Use strlcpy instead of strncpy" 2011-12-01 14:56:53 -08:00
Kenny Root
b953fc2849 Use strlcpy instead of strncpy
Also make sure the read cmdline is terminated with a null byte.

Change-Id: I6b4aa197ce9bc072a912b7163e8616a03b39c3fe
2011-12-01 14:54:13 -08:00
Jean-Baptiste Queru
b539f0acab Merge "Flash cache partition with cache.img by default." 2011-12-01 14:49:59 -08:00
Vladimir Chtchetkine
ac52833e48 Fixes ADB crash on Windows due to large number of connections.
The reason for the crash is that ADB on Windows uses WaitForMultipleObjects to
wait on connection events. When number of connections exceeds 64, ADB crashes,
because WaitForMultipleObjects API doesn't support more than 64 handles. This
CL contains a fixer routine that allows waiting on an arbitrary number of
handles.

Change-Id: I83f712e552018df308318154c27df184015a16ee
2011-12-01 08:47:35 -08:00
The Android Open Source Project
6940ec41d1 Reconcile with ics-mr1-release
Change-Id: I3451784a6887c3d4f82e6c124d28232b3b688d38
2011-11-30 12:56:23 -08:00
Wu-cheng Li
601b5f416e Merge "Add camera focus move message." 2011-11-29 16:54:18 -08:00
Wu-cheng Li
3dc54060c1 Add camera focus move message.
bug:5534973
Change-Id: I45213b1a4db3dbcfc0ab124689f27a88335fb26b
2011-11-29 14:28:54 +08:00
The Android Automerger
999a193181 merge in ics-mr1-release history after reset to ics-mr1 2011-11-28 12:23:45 -08:00
Jeff Brown
e4e21796f7 Make timestamps friendlier.
Change-Id: I378c3028630a7f805c3f730da02bbbfe07ec3654
2011-11-23 15:02:41 -08:00
The Android Open Source Project
5c9263d819 Reconcile with ics-mr1-release
Change-Id: I218c334a9e76e161bda994ced6b5ba41f0c79ddd
2011-11-22 13:26:30 -08:00
Jeff Brown
b75a9a833b Merge "Improve backtrace formatting." 2011-11-22 12:57:15 -08:00
Jeff Brown
19b39f371b Improve backtrace formatting.
Show the symbol offset, when available.

Centralized formatting of native stack traces in libcorkscrew.
It's handy for automated tools if all stacks look the same.
Since we already made them all look them same, we might as well
do the formatting in just one place.

Do not strip the Thumb bit on ARM.  This fixes an off-by-one
issue that could happen when resolving a PC that was at the
very beginning of a Thumb function, since the symbol table would
have the Thumb bit set but since we stripped the bit from our
PC, we would be looking for an address one byte before the
one listed in the symbol table.  It's also quite useful to see
whether a given function is executing in Thumb mode just by glancing
at the PC.

Change-Id: Icaa29add85ce0bcafe24d5ce2098e138d809e2ab
2011-11-22 12:13:46 -08:00
The Android Automerger
a985651967 merge in ics-mr1-release history after reset to ics-mr1 2011-11-22 11:57:10 -08:00
Nick Pelly
3544e33247 am 3d547e0d: am f9c1fcc5: Merge "Replace vendor specific NfcGoogle.apk with generic Nfc.apk" into ics-mr1
* commit '3d547e0dda7ad58108a219c7ef20bab426d5ea38':
  Replace vendor specific NfcGoogle.apk with generic Nfc.apk
2011-11-21 21:08:24 -08:00
Nick Pelly
3d547e0dda am f9c1fcc5: Merge "Replace vendor specific NfcGoogle.apk with generic Nfc.apk" into ics-mr1
* commit 'f9c1fcc505d59fd87392e6af7341b1737f186081':
  Replace vendor specific NfcGoogle.apk with generic Nfc.apk
2011-11-21 16:05:27 -08:00