| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Expect the boot status explicitly as a parameter so that we do not
have to rely on dev.bootcomplete, which isn't meaningfully set
when the device needs the decryption screen on boot.
Bug: 23898216
Change-Id: I9b34298caf70b1e5d40970cc0d04c469016a80a7
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Check dev.bootcomplete in dex2oat(). Use the information for
two changes.
Only switch to the background when we're post bootcomplete.
This will ensure better utilization after upgrades.
Add a second dex2oat-threads property that is used pre
bootcomplete. A separation of these phases allows using less
cores when the device is up, freeing up resources for other
purposes, e.g., avoid jank. The precedence during boot is the
boot property, or the image property if the former doesn't
exist, or the default property as a fallback.
Bug: 23898216
Bug: 24004256
Change-Id: I5063f3fc4b437cbe88c4e94584e01c1c78eccc4d
|
|/
|
|
|
|
|
|
|
| |
Also, move NetworkDiagnostics between the two runs of getting the
wifi counters, so we can see the effect on the counters of
sending our probe packets.
Bug: 23661687
Change-Id: I3f81c003a35f50ac1cb8e77d0a8c73dae4fd91f3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This maps a monotonic timestamp to the
corresponding real-time timestamp, which
can be used to match up the traces with
other logs that use real-time.
Also write clock_sync records first instead of at
the end, to avoid not being to write it due to the
buffer being full.
Bug: 23668823
Change-Id: I644aeea496197e194ec30f808f754e3e043d905f
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(cherry pick from commit e3c4df96083231b519dad919fd0ed6624100b368)
- For those that are proud to call themselves logspam police
- Every time someone declares that something is too chatty, or that
they lost their logs because they were declared too chatty and
their associated logs were aggresively pruned we generally
ask them to report the logger statistics to pinpoint what software
product that is the elephant in the room.
- Every time we want to spawn a new 'stop being so spammy' bug spawned
off a bugreport collected for another purpose, we *wish* we had the
logger statistics to help add gravitas to the claim that some piece
of software is the top, or near the top, polluter.
Bug: 22351810
Change-Id: Ifae33cd21d0ae2917a3b4381502d723725b1701c
|
|
|
|
|
|
|
|
|
|
| |
restorecon_data already iterates across all found users internally,
so we don't need to call it for each UID moved. In fact, this was a
bug that caused data for the owner to be relabeled when moving apps
back to internal storage.
Bug: 21813384
Change-Id: I5ba76d4f30d129365864c8a25b665f344b99a6b4
|
|
|
|
|
|
|
|
| |
Add dalvik.vm.dex2oat-swap system property to override a default
decision.
Bug: 20658562
Change-Id: I34368c6e435d1a9ceec20a0bf1c8c6213e527f5e
|
|
|
|
|
|
|
|
|
|
|
| |
App movement now has three distinct stages: copying, scanning, and
cleanup. Previously, a battery pull late in the move process would
end up with packages.xml pointing at the old location which had been
torn down. Now, we update packages.xml to point at the new location
as the "source of truth" before we start deleting the old location.
Bug: 21831336
Change-Id: I62b8916c673265c240e2574ea968cdce5a7a0074
|
|
|
|
|
|
|
|
|
| |
Previously installd removed the normal cache directory when delete_code_cache is
called. It should delete the code cache directory.
BUG=21206499
Change-Id: I5774430e389e22805fa7984b4c83420c3677ca75
|
|
|
|
|
|
|
|
|
| |
This follows a change in dex2oat.
(cherry picked from commit 741a6ff2e264b96edbca3ac95e720b21c8e39382)
Bug: 21924613
Change-Id: I6b2df1668fdd09d82cfe86e6e51360b954b6c8a9
|
|
|
|
|
|
|
|
|
|
| |
Add the debug.gencfi system property that forces generation of
CFI data.
(cherry picked from commit 816243d470bade03c264e67e39590f6852581898)
Bug: 21924613
Change-Id: Ida66f8c1567634d05cfdbba1a982be3684e94369
|
|
|
|
|
|
|
|
|
|
|
|
| |
(cherry pick from commit f989162bb89dff6387f2021101306a1be6d875f7)
Discover the logcat buffer size, divide by the worst storage
speed in kb/s, and multiply by ten to estimate the timeout in
ms for each named buffer. If that value is less than 20 seconds,
then select 20 seconds. Apply this to each logcat request.
Bug: 21555259
Change-Id: Id36aebff83cb06e94350e4a84fa266b66a8444fc
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
Bluedroid doesn't have much of a kernel component and no devices
expose a bluedroid node in debugfs.
Change-Id: I5600e88c543a109257d95591704a8f2a7261dfdc
|
|\ \ |
|
| |/
| |
| |
| |
| | |
Bug: 21449922
Change-Id: I81a3774683c08f5d4ab4ea75bec45d279fb210ec
|
|/
|
|
|
|
|
|
|
|
| |
Given a pair of absolute paths {from_path, to_path} , check that
they are both valid apk subpaths (eg. /data/app/package/foo) and
link(2) to_path to from_path. This is required by staged installs,
where we link existing apks and oat files to their staging location.
bug: 20889739
Change-Id: I3b5e3b43677af68be59308121a4409caaa6a72f0
|
|
|
|
|
|
|
|
|
|
|
|
| |
The selinux_status_*() interfaces require calling selinux_status_open()
first. Since this was not being called by servicemanager, the
selinux_status_updated() call was always failing and servicemanager
was not reloading service_contexts upon a policy reload.
(cherrypicked from commit bea0746b241d15626cf0a56828efc1d4640dbda7)
Change-Id: I6ac62e114bbca99c5f0999feb918fcde15009274
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
|
|
|
|
|
|
| |
Bug: http://b/20501816
Change-Id: Id13a62f02243c6c4831e2f47944dc34fa822f5b6
(cherry picked from commit 997abb668b9248c2174c6cf169a0b7c6a02fd2cb)
|
|
|
|
| |
Change-Id: I68a258cf71cfcd999bbd568ab3c96255c11bec41
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Cherry-pick of c2c6ecd1195481f5813a721a7d20a73c0795c135 from AOSP
Tracing the state of the voltage and current regulators enables a developer
to attribute power consumption measurements to specific perhipherals and
cores. Unlike other indirect methods of tracing when peripherals and cores
are toggled, the regulator ftrace event indicates the exact point in time
when the kernel switches on or off the device. For example, in the following
trace, a developer can see exactly when the krait2 core starts receiving
power, and and when the voltage is set for voltage scaling.
mpdecision-2172 [000] ...1 1566.665481: regulator_enable: name=krait2
mpdecision-2172 [000] ...1 1566.665493: regulator_enable_delay: name=krait2
mpdecision-2172 [000] ...1 1566.665495: regulator_enable_complete: name=krait2
<...>-4133 [002] ...1 1566.666891: regulator_set_voltage: name=krait2 (1075000-1100000)
Change-Id: Ia322206ef74496daf1d9baa03545d8e89e398487
Signed-off-by: Aaron Schulman <aschulman@google.com>
|
|
|
|
|
|
| |
(Cherry pick from commit 540e3de99fa1baa5eaf3eb3d49f4e98fd9f5bd91)
Change-Id: If5cabe186d8377056effa1c0672a90e277cd7221
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We now move code under /data/app/com.example when a complete move
is requested. This really only works for new cluster-style installs
that also have native libraries and OAT contained inside.
Teach measuring code about cluster-style installs when measuring
app footprint. Also offer to measure private data space for all
users.
Bug: 19993667, 20275578
Change-Id: I6df7b947cb5cc8a4552f56f4b64a661e8512389f
|
|
|
|
| |
Change-Id: I809377f80e314b358eba22fa916e53c81cac2c47
|
|\
| |
| |
| |
| |
| |
| | |
data between volumes."
* commit 'a36a43b354b248cef9407de42fb6b87e1c7085f6':
Command to move private app data between volumes.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
New "mvuserdata" command will move all private app data from one
volume UUID to another. It leverages the existing "cp" toybox
command to do the heavy lifting for all known users, preserving
details like timestamps and permissions. It invokes restorecon()
to correctly label the new location when the copy is finished.
Changes installd to no longer drop capabilities, so we run as root
again. This also allows us to exec "cp" with CAP_DAC_OVERRIDE and
CAP_FOWNER still in effect.
Bug: 19993667
Change-Id: I1f407a7c4a1af97ca5afc27b04eb16b4936cbdef
|
|\ \
| |/
| |
| |
| |
| |
| | |
from framework."
* commit '8571e647da1e9c2227d22034ba6462235273cb02':
Start accepting volume UUIDs from framework.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We're now parsing and passing through volume UUIDs sent across the
command socket. The "!" argument value is treated as null, which
means internal storage.
Bug: 19993667
Change-Id: I17729a769ce687a2e94e85991a6338c77ded0b66
|
|\ \
| |/
| |
| |
| | |
* commit 'ad6f4996dc909dcb8e6e369bf41be514077fb142':
More volume UUID awareness.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Teach free_cache() and restorecon_data() about building per-volume
paths. Also clean up restorecon_data() by using std::string when
building paths.
Clearer names for path building utility methods, and tests to verify.
Bug: 19993667
Change-Id: Iacfbcdaa5b901cc2490bc8eba366dfdeb44f1d93
|
|\ \
| |/
| |
| |
| | |
* commit '6930a29af13f4a958fa7cba544233d2febe4040b':
Installd: Fix Clang build
|
| |
| |
| |
| |
| |
| | |
Remove some unused parameters and variables.
Change-Id: I507ae48fe1744b800ceb29192d463fd26c2ccda7
|
|\ \
| |/
| |
| |
| |
| |
| | |
building paths."
* commit '65fe5dfdcd08650e0dfbb39f4a716567fb910cab':
Plumb through volume UUID when building paths.
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since app data paths can live on expanded storage devices, accept the
target volume UUID when building paths. The null UUID indicates the
default internal storage.
To improve readability, start using std::string in several places,
which throws when allocations fail. For now, perform last-second
sanity checks on incoming path arguments, but we'll eventually want
to check arguments as they come through installd.cpp, instead of
crashing the entire daemon.
Also remove "lib" symlink code from install() and make_user_data(),
since we're no longer supporting /data/app-lib. The framework
already uses linklib() to create the right symlink for the selected
ISA-specific library dir.
Bug: 19993667
Change-Id: Ib9343575ffb62bf3981e19375de8f3822fc31e28
|
|\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | | |
SELF_PATCHOAT_NEEDED."
* commit 'b8d1ee37c4a6897442f5d381d5eb7162e04fcebd':
installd: Add support for SELF_PATCHOAT_NEEDED.
|
| |\ \ |
|
| | |/
| | |
| | |
| | | |
Change-Id: Ib9a6373f98474f1242367b5285086251a9d580e5
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* commit 'd029e95a58ea0927ebd3431d9991cd316e568002':
dumpstate: scrub APANIC
|
| |/
| |
| |
| |
| | |
Bug: 19525200
Change-Id: Ia2d2857cac953fb4ceafb66ddf775d89d7a777b1
|
|\ \
| |/
| |
| |
| |
| |
| | |
C++."
* commit 'eb3704a58e62c0f85cfea776df1040b677263c80':
Switch installd to compile as C++.
|
| |
| |
| |
| |
| |
| |
| | |
This is the minimal change needed to switch it over to C++, which
paves the way for using more robust utilities like std::string.
Change-Id: I80ed6280146875eb6ddbbb340c05450388ca13f0
|
| |
| |
| |
| |
| |
| |
| |
| | |
Apps on expanded storage live at /mnt/expand/<uuid>/app/com.example,
so we need to relax one more directory level.
Bug: 19993667
Change-Id: I347ec7b92435ea69e632ed5d5fdfabe38ce0b56e
|
|\ \
| |/
| |
| |
| |
| |
| | |
creating oat dir"
* commit 'b58e6cbfa726add05bbe5e31e8ca13815ccf2049':
Use AID_SYSTEM as uid when creating oat dir
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously AID_INSTALL was used, which was causing permission denied errors
when PackageManager was trying to recursively rename staging directory
Bug: 19550105
Bug: 20087446
Change-Id: I3a9e3056c1fbc1ce0077a3ce52cf77ea6b5085ee
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Apps on expanded storage live at /mnt/expand/<uuid>/app/com.example,
so we need to relax one more directory level.
Bug: 19993667
Change-Id: I347ec7b92435ea69e632ed5d5fdfabe38ce0b56e
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Comes in handy for invoking transactions that require these types.
Change-Id: I8f14519a2531ab2ec7f3218ecda6d1868f6dd7b3
|