OSDN Git Service
Yifan Hong [Thu, 16 Feb 2017 18:02:51 +0000 (18:02 +0000)]
Merge changes from topic 'lshal'
* changes:
lshal: Add option to print cmd lines instead of pids.
lshal: Add timeout for IPC calls.
lshal: Allow selecting columns and sorting by column.
lshal: Refactor lshal to use an Lshal class; combined instance column with interface column
Yifan Hong [Wed, 15 Feb 2017 01:33:50 +0000 (17:33 -0800)]
lshal: Add option to print cmd lines instead of pids.
Add -m to arguments of lshal. When this flag is set,
/proc/{pid}/cmdline is printed instead of a plain PID.
If the file doesn't exist, it will be striped out from
the PID column as well (the process is considered died
and won't hold a reference to the binder object.)
Test: lshal -icm
Bug:
35160832
Change-Id: I4345bf06112a1f87ce91bec6f6f787703e46cd17
Yifan Hong [Tue, 14 Feb 2017 23:43:31 +0000 (15:43 -0800)]
lshal: Add timeout for IPC calls.
IPC calls into interfaces should be done fault-torelently.
Add a timeout for each IPC call made so that lshal won't be
indefinitely blocked even if the interface don't reply
promptly.
Bug:
35317039
Test: lshal
Change-Id: Icb8157716ad68bddb5b33304b9063aa6f233985d
Yifan Hong [Tue, 14 Feb 2017 01:51:59 +0000 (17:51 -0800)]
lshal: Allow selecting columns and sorting by column.
Examples: see tests below.
Test: lshal
Test: lshal -intpac
Test: lshal --sort=i
Test: lshal --sort=p
Bug:
34984175
Change-Id: Ia09823776a206868a5d58a2ede153a4538147756
Yifan Hong [Sat, 11 Feb 2017 01:49:58 +0000 (17:49 -0800)]
lshal: Refactor lshal to use an Lshal class; combined instance column with interface column
We need to be able to select columns, sort columns,
and do IPC calls fault-tolerently.
Refactoring lshal.cpp into an Lshal class for more
objective-oriented programming, so that global variables
can be avoided and less parameters will need
to be passed around.
Test: lshal outputs identical output as without this CL, except
with the column merged.
Change-Id: I9668c998da692222aef96ae67bbab8066172543d
Treehugger Robot [Tue, 14 Feb 2017 03:44:52 +0000 (03:44 +0000)]
Merge "Revert "dumpsys: add option to list hardware services.""
Steven Moreland [Mon, 13 Feb 2017 23:44:17 +0000 (23:44 +0000)]
Revert "dumpsys: add option to list hardware services."
This reverts commit
6270dd1bf7f4a6eaa0e36b2cbb0f9bdd4790b5d8.
Reason for revert: obsolete, removed in favor of lshal
Test: dumpsys_test
Change-Id: I06e256a5bd0995727a3d6f3f88f79a623b1474f3
Yifan Hong [Mon, 13 Feb 2017 19:32:37 +0000 (19:32 +0000)]
Merge changes from topic 'lshal'
* changes:
Dump client PIDs for passthrough HALs.
Fix permissions for lshal
Yifan Hong [Fri, 3 Feb 2017 23:23:47 +0000 (15:23 -0800)]
Dump client PIDs for passthrough HALs.
* This is done with registerPassthroughClient in IServiceManager; when a
service is retrieved through the passthrough service manager, its PID
will be recoreded by the binderized service manager.
* The action of dumping all available dynamic libraries is now done by
dumpAllLibraries.
Bug:
34712252
Test: lshal
Change-Id: I7f08e3255ffed0f46435843504e0e225d0d9bbc9
Yifan Hong [Fri, 3 Feb 2017 21:40:04 +0000 (13:40 -0800)]
Fix permissions for lshal
Instead of IServiceManager::debugDump, lshal now relies
on list and get. lshal itself will call getDebugInfo
on each interface, so that each interface can check if
the call is from a root user, then decide to leak
addresses or not.
Bug:
34899586
Test: lshal
Change-Id: I8eb9168c3b071b8b1f27dbeaa0ac27d2067200d7
quddusc [Thu, 9 Feb 2017 21:26:19 +0000 (21:26 +0000)]
Merge "NDK docs: Fixed in-line comments for A8 and ARGB444 bitmap configurations. Test: Verified changes with romainguy@. Related bugs: b/
26922523"
Quddus Chong [Wed, 8 Feb 2017 18:38:21 +0000 (10:38 -0800)]
NDK docs: Fixed in-line comments for A8 and ARGB444 bitmap configurations.
Test: Verified changes with romainguy@.
Related bugs: b/
26922523
Change-Id: Id51445b09896407e808b519f3ee2f4be90f5b7eb
wyau [Tue, 7 Feb 2017 04:07:15 +0000 (04:07 +0000)]
Merge "SurfaceFlinger supports ClearClientTarget for Sideband"
Gray Huang [Wed, 11 Jan 2017 05:41:09 +0000 (13:41 +0800)]
SurfaceFlinger supports ClearClientTarget for Sideband
When clearing the layer's intersection with the dirty region,
HWC2::Composition::Sideband layer needs to be cleared as well.
Bug:
33443134
Test: manual - enter PIP mode with Live Channel
Change-Id: I4fecc7b5db8a2bf220b681bd087264290d1a2443
Treehugger Robot [Fri, 3 Feb 2017 02:39:19 +0000 (02:39 +0000)]
Merge "Fix warning: macro redefined"
Treehugger Robot [Thu, 2 Feb 2017 19:32:48 +0000 (19:32 +0000)]
Merge "lshal: print pids of client processes."
Yifan Hong [Wed, 1 Feb 2017 23:54:01 +0000 (15:54 -0800)]
lshal: print pids of client processes.
Bug:
34777099
Bug:
34861460
Test: lshal
Test: NFC / light / audio with and without persistent.hal.binderized;
run lshal to reflect this.
Change-Id: I50aa5d99fb14957b1e40a405836e68c235a22006
Treehugger Robot [Wed, 1 Feb 2017 21:15:42 +0000 (21:15 +0000)]
Merge "Do not -1 for lshal."
Evgenii Stepanov [Wed, 1 Feb 2017 19:24:10 +0000 (19:24 +0000)]
Merge "Disable integer sanitization on host."
Treehugger Robot [Wed, 1 Feb 2017 07:09:50 +0000 (07:09 +0000)]
Merge "Fix a use-of-uninitialized-value warning"
Yifan Hong [Tue, 31 Jan 2017 23:54:39 +0000 (15:54 -0800)]
Do not -1 for lshal.
Test: compiles
Change-Id: I99e6306a6b82ec85bc84f9572f3e4f2f8cdf2847
Treehugger Robot [Wed, 1 Feb 2017 03:14:59 +0000 (03:14 +0000)]
Merge "Fix -Wdouble-promotion warnings"
Evgenii Stepanov [Wed, 1 Feb 2017 00:37:44 +0000 (16:37 -0800)]
Disable integer sanitization on host.
Test: NFC until https://android-review.googlesource.com/#/c/329510
Change-Id: I0183556d5b945c689934664fe7f15caa18a0997d
George Burgess IV [Wed, 1 Feb 2017 00:21:25 +0000 (16:21 -0800)]
Fix a use-of-uninitialized-value warning
Caught by clang's static analyzer:
frameworks/base/core/jni/com_google_android_gles_jni_GLImpl.cpp:190:30:
warning: The right operand of '+' is a garbage value
buf = (char*)buf + offset;
This is because getPointer doesn't always set `offset` to a value. We
could fix it locally by initializing `offset`, but it seems to be less
error-prone to just fix getPointer instead.
Bug: None
Test: Still builds; warning is now gone.
Change-Id: I90bea0c94cf8d7f92a0d9a4db4e64e7e563bfb09
Treehugger Robot [Tue, 31 Jan 2017 03:29:05 +0000 (03:29 +0000)]
Merge "Add permission bits to open calls with O_CREAT"
George Burgess IV [Wed, 25 Jan 2017 19:36:12 +0000 (11:36 -0800)]
Add permission bits to open calls with O_CREAT
Open needs a third argument if you pass it O_CREAT:
https://linux.die.net/man/3/open
This turns into a compile-time error with FORITFY, so we need this fixed
before our unbroken FORTIFY can go in.
(The TEMP_FAILURE_RETRY open isn't detected by clang FORTIFY, but I
noticed that open_reference_profile potentially passes in O_CREAT as an
open_flag.)
Bug:
32073964
Test: Now builds with clang FORTIFY; CtsCompilationTestCases passes;
manually verified that /data/misc/profiles/ref/*/primary.prof has rw
permissions after a successful `cmd package compile -m speed-profile`.
Change-Id: Ie707d5ad403d2f86c769277b3e0f147c45000a6b
Treehugger Robot [Thu, 26 Jan 2017 20:06:50 +0000 (20:06 +0000)]
Merge "Replace strlen with arraysize in array bounds."
George Burgess IV [Wed, 25 Jan 2017 21:33:38 +0000 (13:33 -0800)]
Fix -Wdouble-promotion warnings
With the new clang FORTIFY, this code emits the following error:
error: implicit conversion increases floating-point precision: 'float'
to 'double' [-Werror,-Wdouble-promotion]
This is because strncpy is now a function, not a macro defined in a
system header. So, the warning is considered to appear in user code
(instead of system code), and is therefore no longer suppressed.
Bug:
32073964
Test: Now builds with clang FORTIFY
Change-Id: Id5fcfe91755535f90b542e11bc42b66976fe24fc
Merged-In: I5e8292d7800434268793bc4db4a96f20b7022e17
George Burgess IV [Wed, 25 Jan 2017 19:52:01 +0000 (11:52 -0800)]
Replace strlen with arraysize in array bounds.
clang-FORTIFY doesn't let us evaluate strlen("foo") as a constant
expression that can be used in static array bounds. Instead, we'd need
to either do __builtin_strlen("foo") or arraysize("foo") - 1. Just use
arraysize here, since the extra 1 byte per array isn't likely to be a
terrible thing.
Happy to swap to __builtin_strlen if anyone cares deeply enough.
Bug:
32073964
Test: Now builds with clang FORTIFY.
Change-Id: I4c9b3eb74775901554b939246722bd3a22326d10
Yifan Hong [Thu, 26 Jan 2017 18:18:19 +0000 (18:18 +0000)]
Merge changes from topic 'lshal'
* changes:
Add debugDump() to IServiceManager.
Add an lshal command.
Treehugger Robot [Thu, 26 Jan 2017 17:37:23 +0000 (17:37 +0000)]
Merge "Fix two bugs in external storage accounting."
Yifan Hong [Thu, 26 Jan 2017 06:53:37 +0000 (22:53 -0800)]
Add debugDump() to IServiceManager.
Test: mma
Change-Id: I04289500c7ee42a84d3593b4c0e45a0b829370a7
Yifan Hong [Wed, 25 Jan 2017 22:20:34 +0000 (14:20 -0800)]
Add an lshal command.
lshal lists services registered to the binderized
IServiceManager and all services available to the
passthrough IServiceManager as *.so libraries. It
also dumps the reference count for each service.
Bug:
34712252
Test: adb shell lshal
Change-Id: I9436a033cf736b8a8c307a2e87549c9db6379f3f
Jeff Sharkey [Thu, 26 Jan 2017 05:15:42 +0000 (22:15 -0700)]
Fix two bugs in external storage accounting.
When doing a manual tree walk, we always want to inherit fts_number
from the parent fts node.
For create_data_media_package_path(), two of the arguments had been
swapped.
Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.StorageHostTest
Bug:
27948817,
30927649
Change-Id: Ic3cbf387cf119aa82af6e380bde9d9b069f6bfb0
Treehugger Robot [Thu, 26 Jan 2017 01:25:52 +0000 (01:25 +0000)]
Merge "Add mode to open call with O_CREAT"
George Burgess IV [Wed, 25 Jan 2017 21:51:53 +0000 (13:51 -0800)]
Add mode to open call with O_CREAT
This change was already applied internally. For us to submit FORTIFY, we
need to push it out here. Otherwise, we get compile-time errors about
this.
Bug:
32073964
Test: Builds with FORTIFY.
Change-Id: Ib500aca933468c06f7ceb796a9bb6a16c118e366
Merged-In: I63eb3d5499ae7e9ff9a77393763e39b747fd4611
Treehugger Robot [Tue, 24 Jan 2017 01:15:06 +0000 (01:15 +0000)]
Merge "Properly align a packed structure."
Treehugger Robot [Mon, 23 Jan 2017 18:20:51 +0000 (18:20 +0000)]
Merge "Update atrace to work with tracefs, not debugfs"
Treehugger Robot [Sat, 21 Jan 2017 21:11:50 +0000 (21:11 +0000)]
Merge "dumpsys: add option to list hardware services."
Steven Moreland [Fri, 20 Jan 2017 23:24:51 +0000 (15:24 -0800)]
dumpsys: add option to list hardware services.
This gives a convenient way to dump information about hidl services.
When hidl services dump information themselves as well, that dump will
be made here as well.
Bug:
33382892
Test: dumpsys_test, dumpsys --hw works as expected
Change-Id: Ib08b5d052e63ed6260035ee8d3ad3dac296202b1
Paul Lawrence [Tue, 17 Jan 2017 17:50:18 +0000 (09:50 -0800)]
Update atrace to work with tracefs, not debugfs
When tracefs is mounted, tracing is under /sys/kernel/tracing not
/sys/kernel/debug/tracing. Modify atrace to detect this situation and
get the right files.
Bug:
31856701
Test: Run atrace, check output is same where ever tracefs is mounted
Change-Id: I78df0da91d9f56c56077d1b8b9dba7b0126b2d8d
Jeff Sharkey [Fri, 20 Jan 2017 22:45:03 +0000 (22:45 +0000)]
Merge "Add Binder support for Parcelable exceptions."
Treehugger Robot [Fri, 20 Jan 2017 20:07:13 +0000 (20:07 +0000)]
Merge "Add i2c tracing support to atrace"
Treehugger Robot [Fri, 20 Jan 2017 19:55:15 +0000 (19:55 +0000)]
Merge "Add feature flag for TelephonyManager#get/setAllowedCarriers"
Michael Wright [Thu, 18 Aug 2016 18:56:43 +0000 (19:56 +0100)]
Add i2c tracing support to atrace
Cherry-picking from internal master
Test: None
Change-Id: Iaf0daa0982bd8d2355d3590d43ad78711e764ee0
Jeff Sharkey [Thu, 19 Jan 2017 22:00:50 +0000 (22:00 +0000)]
Merge "Measure external storage using new GIDs."
Jeff Sharkey [Thu, 19 Jan 2017 16:21:36 +0000 (09:21 -0700)]
Measure external storage using new GIDs.
We just defined a new range of GIDs that will be used to mark per-app
data files stored on external storage, so start measuring them.
Also measure all OBB files using another new GID that was defined.
Note that we're relying on the per-app cache GIDs to track cache
usage on *both* internal and external storage, which means that stats
and extStats won't always add up. (The framework already combines
these values together, and we didn't want to waste precious GID
space on explicitly tracking cache files on external storage.)
Test: builds, boots
Bug:
27948817,
34263266
Change-Id: Ife087df299ff8ee1a75fce1e39b4b737cf9375d5
Jeff Sharkey [Thu, 19 Jan 2017 16:16:02 +0000 (16:16 +0000)]
Merge "First pass at updated cache clearing logic."
Peng Xu [Thu, 19 Jan 2017 01:11:49 +0000 (01:11 +0000)]
Merge "TYPE_DYNAMIC_SENSOR_META should be wake up sensor"
Calin Juravle [Wed, 18 Jan 2017 23:49:13 +0000 (23:49 +0000)]
Merge "Clean up and simplify the logic in dexopt"
Josh Gao [Wed, 18 Jan 2017 23:04:08 +0000 (23:04 +0000)]
Merge changes from topic 'kill_debuggerd'
* changes:
dumpstate: use O_APPEND for anr file.
dumpstate: switch to using libdebuggerd_client.
Treehugger Robot [Wed, 18 Jan 2017 23:00:41 +0000 (23:00 +0000)]
Merge "libGLES_android: Add generic 32bpp BGRA EGLConfig"
Calin Juravle [Sun, 15 Jan 2017 00:23:30 +0000 (16:23 -0800)]
Clean up and simplify the logic in dexopt
Make some order in dexopt logic by extracting independent parts in their
own helpers.
It will make further updates of dexopt simpler and easier to reason
about (e.g. for secondary dex files).
Test: device boots
adb shell cmd package compile -m speed|speed-profile packageName
install new packages
Bug:
32871170
(cherry picked from commit
4a391f80601d7f65d7e63353363e6d32868161d5)
Change-Id: If0c96174e904519a4332e54553690b691ff63149
Jeff Sharkey [Wed, 18 Jan 2017 01:05:54 +0000 (18:05 -0700)]
First pass at updated cache clearing logic.
The old clearing algorithm is very naive and it sorts all cached files
globally by modified time. This sadly lets apps gamify the system by
setting their modified times far in the future, and it's very
expensive because it requires a global filesystem traversal to free
up even the smallest amount of data.
Instead, this CL introduces a much more fair cache clearing algorithm
that deletes files from specific UIDs based on how much cache space
that UID is using proportional to the space allocated to them. This
new design has several nice properties:
-- It uses the recently added quotactl() feature to rapidly target
the apps that are using the most space.
-- We only need to traverse the filesystem for UIDs that actively
enter the crosshairs of the clearing algorithm.
-- Disciplined apps who stay under their allocated quota will be
the last to have their cached data cleared.
-- This design can be easily adapted to support additional features
such as atomic purging and tombstones.
In summary, the new algorithm is extremely efficient when freeing up
the typical small-to-medium amounts of disk space, and is only
moderately less efficient than the old algorithm when forced to clear
all cached data.
Test: builds, boots, clearing strategy looks sane
Bug:
33965858
Change-Id: I66f95089cb33f1add3f31fcf1082ab2469870fda
Polina Bondarenko [Thu, 12 Jan 2017 20:14:14 +0000 (21:14 +0100)]
Add feature flag for TelephonyManager#get/setAllowedCarriers
Add android.hardware.telephony.carrierlock feature flag declaration.
Bug:
33480084
Test: cts
Change-Id: Ib6ede97d7ee8d6e924c1483ee51f52bdfa09950b
Jeff Sharkey [Wed, 18 Jan 2017 01:10:59 +0000 (01:10 +0000)]
Merge "Add systrace details to storage measurements."
Treehugger Robot [Wed, 18 Jan 2017 00:36:55 +0000 (00:36 +0000)]
Merge "servicemanager: selinux: set selinux callbacks early"
Jeff Sharkey [Tue, 17 Jan 2017 22:25:01 +0000 (15:25 -0700)]
Add systrace details to storage measurements.
Can be used to find bottlenecks, and confirm that quota stuff is
being used when expected.
Test: builds, boots
Bug:
34341727
Change-Id: Ifefc155e5d3b0c74245e0d287e84df699ce09d16
Josh Gao [Sat, 14 Jan 2017 06:09:40 +0000 (22:09 -0800)]
dumpstate: use O_APPEND for anr file.
Bug: http://b/
30705528
Test: ran dumpstate, grepped dmesg for new selinux denials
Change-Id: I28814edcf37a7edbde79279feff0e7def64316f2
Josh Gao [Fri, 6 Jan 2017 02:27:33 +0000 (18:27 -0800)]
dumpstate: switch to using libdebuggerd_client.
Bug: http://b/
30705528
Test: manual inspection of dumpstate output
Change-Id: I8f9822f67f1a81fcfa2b3a9120e6631b19b29854
Jeff Sharkey [Tue, 17 Jan 2017 20:53:04 +0000 (13:53 -0700)]
Add Binder support for Parcelable exceptions.
Follow the new framework changes that support sending EX_PARCELABLE
exception types.
Test: builds, boots
Bug:
33749182
Change-Id: I7a856fa89f23aab4f782c4e5ae2beb8166fa8da4
Jeff Sharkey [Tue, 17 Jan 2017 16:54:00 +0000 (16:54 +0000)]
Merge "Handle devices without quota, speed up lookup."
Sandeep Patil [Tue, 27 Dec 2016 20:40:45 +0000 (12:40 -0800)]
servicemanager: selinux: set selinux callbacks early
SELinux library error logs are never be shown in logcat if
there's a failure before the callbacks are set. We missed
all logs from service context initialization because of this.
Bug:
33746484
Test: Restart new service manager to make sure context init logs
show up in logcat.
Change-Id: I5479cf5fe10ceb1a210eda26946b6ea344792e24
Signed-off-by: Sandeep Patil <sspatil@google.com>
Treehugger Robot [Tue, 17 Jan 2017 04:02:45 +0000 (04:02 +0000)]
Merge changes Ic746ea89,Iebaa8063
* changes:
Wrap all installd operations in lock.
Mask st_mode before comparing it.
Jeff Sharkey [Tue, 17 Jan 2017 03:57:45 +0000 (20:57 -0700)]
Handle devices without quota, speed up lookup.
Start tracking which block devices have quota support, and gracefully
clear FLAG_USE_QUOTA when no support is present.
Also build a cached map of mounted volumes that support quota, which
halves the average quota calculation speed from 0.70ms to 0.35ms,
since we're no longer parsing procfs every time.
Test: builds, boots, common operations work
Bug:
34249218
Change-Id: Ie791df7801b67495331f3eea256c018860c9b4f6
Jeff Sharkey [Tue, 17 Jan 2017 02:07:18 +0000 (19:07 -0700)]
Wrap all installd operations in lock.
Historically installd has a single lock up in the framework, but
we're starting to call in from multiple locations, so installd needs
to protect itself.
This specifically applies to any disk measurement requests, which
use the optimized fts(3) mode which uses chdir() internally.
Test: builds, boots, common operations work
Bug:
34330051
Change-Id: Ic746ea890ebcc7b2bf923404874b04dbc19d42ad
Jeff Sharkey [Fri, 13 Jan 2017 02:27:03 +0000 (19:27 -0700)]
Mask st_mode before comparing it.
Otherwise it will never match the requested mode_t.
Test: builds, boots, skips when matching
Bug:
34201111
Change-Id: Iebaa8063a72eb6eaf2e773c1d35204617d0f16b8
Mark Salyzyn [Thu, 12 Jan 2017 21:59:57 +0000 (21:59 +0000)]
Merge "liblog: use log/log.h when utilizing ALOG macros"
Mark Salyzyn [Thu, 12 Jan 2017 21:57:51 +0000 (13:57 -0800)]
liblog: use log/log.h when utilizing ALOG macros
Audit dropout because ALOG is behind MYLOG ...
Test: compile
Bug:
34250038
Change-Id: I009478157d2267e10f8c09a7faa4b8f7c7c4a1e7
Treehugger Robot [Thu, 12 Jan 2017 21:20:15 +0000 (21:20 +0000)]
Merge "Don't print error if we can't talk to hwservicemanager."
Martijn Coenen [Thu, 12 Jan 2017 16:16:31 +0000 (17:16 +0100)]
Don't print error if we can't talk to hwservicemanager.
This currently fails as a non-root user due to SEPolicy,
and is causing CTS test failures. Until we figure out
the policy on b/
34242478, don't print an error to allow
the test to pass again.
Test: cts-tradefed run cts --module CtsAtraceHostTestCases --test
android.atrace.cts.AtraceHostTest#testSimpleRun
Bug:
33814619
Change-Id: Ie5578639028e7890284d71bbf1b753f5803ca4af
Mark Salyzyn [Thu, 12 Jan 2017 15:19:07 +0000 (15:19 +0000)]
Merge "Replace cutils/log.h and rationalize log/log.h and android/log.h"
Mark Salyzyn [Thu, 29 Sep 2016 15:08:05 +0000 (08:08 -0700)]
Replace cutils/log.h and rationalize log/log.h and android/log.h
- cutils/log.h treat as deprecated and lead by example
- android/log.h to be used instead of log/log.h if possible
- add system includes that are assumed as side effects
- define LOG_TAG first
Test: compile
Bug:
31289077
Bug:
30465923
Change-Id: I8d99b24c333578c9b5aa9f2a01324bd0bba268dd
Treehugger Robot [Wed, 11 Jan 2017 18:51:14 +0000 (18:51 +0000)]
Merge "Added test cases to dumpsys."
Treehugger Robot [Wed, 11 Jan 2017 10:28:16 +0000 (10:28 +0000)]
Merge "Cleanup code given PATCHOAT_FOR_RELOCATION has been removed."
Felipe Leme [Wed, 3 Aug 2016 01:57:37 +0000 (18:57 -0700)]
Added test cases to dumpsys.
BUG:
28980245
BUG:
33382892
Test: dumpsys_test passes
Change-Id: Ief6c21022abc74022256431351fd6eef789faf39
(cherry picked from commit
b6e244914deaffcdeea02deebf7c0da2643f601c)
Jeff Sharkey [Tue, 10 Jan 2017 04:30:46 +0000 (04:30 +0000)]
Merge "Methods to calculate user and external disk usage."
Jeff Sharkey [Sat, 7 Jan 2017 16:19:35 +0000 (09:19 -0700)]
Methods to calculate user and external disk usage.
Add method to calculate user disk usage, which will be faster than
making a Binder call for every single appId under a user. Add method
to calculate external disk usage, which uses file extensions to track
usage with "audio", "video", and "images" categories.
Add script to generate optimized file extension matcher logic.
Start measuring internal and external storage space separately; new
GIDs are coming in a future CL. Pass down all package names, inodes,
and code paths, since shared UIDs host more than one.
Test: builds, boots, stats are consistent
Bug:
27948817,
32206268
Change-Id: Icb9843ac5159e0e5f1503d9b64e0bcae407e1a5d
Jesse Hall [Mon, 9 Jan 2017 05:07:29 +0000 (05:07 +0000)]
Merge "Surface: Use async lock/unlock in copyBlt"
Jesse Hall [Sat, 7 Jan 2017 23:44:22 +0000 (23:44 +0000)]
Merge "egl: Add NULL check for num_config parameter"
Treehugger Robot [Fri, 6 Jan 2017 20:53:07 +0000 (20:53 +0000)]
Merge "Unversion NDK stub libraries."
Dan Albert [Thu, 5 Jan 2017 23:58:50 +0000 (15:58 -0800)]
Unversion NDK stub libraries.
The system versions of these libraries aren't versioned yet.
Bug: https://github.com/android-ndk/ndk/issues/278
Test: make ndk
Change-Id: I73e4ebcac151c4039df6261aa6674accb0204706
Treehugger Robot [Fri, 6 Jan 2017 02:08:15 +0000 (02:08 +0000)]
Merge "Add android/log.h to Rect.h"
Steve Paik [Thu, 5 Jan 2017 17:09:56 +0000 (09:09 -0800)]
Add android/log.h to Rect.h
Rect.h uses definitions from log.h.
Test: Build succeeds when C file doesn't include log.h.
Change-Id: Ia85372ca61edafadea92165121dc6fbd1546674b
Richard Uhler [Thu, 8 Dec 2016 10:46:35 +0000 (10:46 +0000)]
Cleanup code given PATCHOAT_FOR_RELOCATION has been removed.
Test: make, device boots.
Bug:
33192586
Change-Id: Ic3937708a7dfcd16f02cf68fc20674ec457d60b7
Treehugger Robot [Thu, 5 Jan 2017 14:56:01 +0000 (14:56 +0000)]
Merge "Pass the same fd when compiling due to boot image update."
Nicolas Geoffray [Tue, 20 Dec 2016 15:03:56 +0000 (15:03 +0000)]
Pass the same fd when compiling due to boot image update.
Test: device boots, apps get installed, OTA uses same vdex.
Change-Id: I913062630640f31a18d23b2f62afd74986322e6a
Francis Hart [Fri, 9 Jan 2015 09:10:54 +0000 (11:10 +0200)]
Surface: Use async lock/unlock in copyBlt
The Surface::lock() function now uses the asynchronous versions of
gralloc lock/unlock when copying the previously drawn content to the
backbuffer. This allows for optimisations in the gralloc module
implementation and so can improve performance and avoid CPU waits.
Change-Id: I57193f327db2ff0422e1b58b3484f613201d994c
Martijn Coenen [Thu, 5 Jan 2017 09:40:55 +0000 (09:40 +0000)]
Merge "Callback elision for HIDL interfaces."
Martijn Coenen [Mon, 2 Jan 2017 14:17:11 +0000 (15:17 +0100)]
Callback elision for HIDL interfaces.
Test: mma
Bug:
31380743
Change-Id: I33080b61d6233b63106b2602a628bfcdaa878a90
Treehugger Robot [Wed, 4 Jan 2017 20:33:09 +0000 (20:33 +0000)]
Merge "Surface: Ensure synchronisation of copyBlt"
Treehugger Robot [Wed, 4 Jan 2017 19:00:36 +0000 (19:00 +0000)]
Merge "Mark libGLESv3 as unversioned until android-24."
Jeff Sharkey [Tue, 3 Jan 2017 23:37:00 +0000 (23:37 +0000)]
Merge "Reference profiles use shared GID for user 0."
Dan Albert [Tue, 3 Jan 2017 23:18:48 +0000 (15:18 -0800)]
Mark libGLESv3 as unversioned until android-24.
Test: readelf on android-23 and android-24 outputs to check version
information.
Bug: https://github.com/android-ndk/ndk/issues/265
Change-Id: I4a9b50b015567c64b75f09e8414682d314a86bc4
Jeff Sharkey [Tue, 3 Jan 2017 21:33:50 +0000 (14:33 -0700)]
Reference profiles use shared GID for user 0.
Test: builds, boots
Bug:
33977235
Change-Id: I4de3852b3f230a6dc874a630e3c1b9fff2d83169
Jeff Sharkey [Tue, 3 Jan 2017 19:08:07 +0000 (19:08 +0000)]
Merge "Offer to measure disk stats using quotas."
Jeff Sharkey [Tue, 13 Dec 2016 00:32:56 +0000 (17:32 -0700)]
Offer to measure disk stats using quotas.
Now we're getting somewhere! This CL starts using quotactl() to read
UID/GID quota statistics when called with FLAG_USE_QUOTA, otherwise
it continues using the old heavy-weight traversal for calculation.
We now set the recently defined per-app GID used for identifying
cached data, and we use the sticky GID bit on cache directories to
ensure that newly created data inherits the GID for tracking
purposes. For any existing apps during an upgrade, an initial
bootstrapping case will recursively set this new GID.
This change also shuffles around a bunch of the tedious manual
accounting logic so that we exactly match the new quota statistics.
Test: builds, boots, quota stats match manual stats
Bug:
27948817
Change-Id: I8512c3193ce698f197a3f446e625d6a1c74e7649
Mark Salyzyn [Wed, 28 Dec 2016 16:48:57 +0000 (16:48 +0000)]
Merge "Replace cutils/log.h and rationalize log/log.h and android/log.h"
Mark Salyzyn [Thu, 29 Sep 2016 15:08:05 +0000 (08:08 -0700)]
Replace cutils/log.h and rationalize log/log.h and android/log.h
- cutils/log.h treat as deprecated and lead by example
- android/log.h to be used instead of log/log.h if required
- add system includes that are assumed as side effects of log.h
- modules that use SLOG should use SLOG for all logging (installd)
- define LOG_TAG first
- remove logging infrastructure if not used
Test: build
Bug:
31289077
Change-Id: Iea147a0104c7ab7f12451304131d6500f42141e7
Yifan Hong [Thu, 22 Dec 2016 18:04:15 +0000 (18:04 +0000)]
Merge "Update for hiding Status from Return<T> object."