Commit Graph

4578 Commits

Author SHA1 Message Date
Tom Cherry
937e1bdc1f Use sizeof(android_log_header_t) instead of sizeof its components
Particularly because sizeof_log_id_t is a misnomer and is going away.

Test: build, liblog and logcat unit tests
Change-Id: I7978bf83e44336a334229753ff1e11a07134e8fc
2019-10-16 15:48:56 -07:00
Treehugger Robot
99f231f3bc Merge "Terminate statsd on a few signals including SIGTERM" 2019-10-14 22:23:12 +00:00
Howard Ro
48dfcdb90a Terminate statsd on a few signals including SIGTERM
- statsd is handling SIGHUP/SIGQUIT/SIGINT/SIGTERM, but doesn't exit.
- The expected behaviour is that statsd would exit after finalizing log
processing when those signals are received.

Bug: 139817664
Bug: 138764189
Test: Send SIGTERM to statsd and check if it is terminated. (note that
init will revive statsd)

Change-Id: Ie45821613664bf030754f835f5481c986ed3cede
Merged-In: Id1146d772f8c68892256ee7a3eea70837fee5c7a
2019-10-14 13:56:41 -07:00
Nick Desaulniers
58664e8a7c [frameworks][base][statsd] fix -Wimplicit-int-float-conversion
RAND_MAX cannot be precisely represented in an IEEE 754 single precision
float.  For the purpose of generating a random number, the imprecision
is irrelevant. Fix the warning with an explicit cast.

Bug: 139945549
Test: mm
Change-Id: Ica60b410bbbca0b3807f985e302abb0775133877
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
2019-10-10 13:09:42 -07:00
Nick Desaulniers
691e1a093c [frameworks][base][statsd] fix -Wreorder-init-list
C++20 would like members of designated initializers to be ordered, so
that initialization side effects match member initialization in explicit
constructors. This differs from C99.

Bug: 139945549
Test: mm
Change-Id: Iadc96f8f0bf57181970ca3e96b5c5f68ac40a030
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
2019-10-10 13:08:34 -07:00
Ryan Mitchell
b30f65713f Merge "Add requiredSystemPropertyValue support in idmap2" 2019-10-02 16:48:50 +00:00
Brad Ebinger
a9a33e1d68 Add Telecom command for setting connectionservice filter
For testing we need the emergency call to go through the CTS
ConnectionService. This is achieved by passing in a package
name filter for testing, which restricts which ConnectionServices
are available for emergency calling.

For safety this filter will be bypassed if the user calls an
actual emergency number (instead of a test number).

Bug: 138741228
Test: atest CtsTelecomTestCases
Change-Id: I656533e4a36a7bba48625bf6f763731991695aed
2019-09-30 17:46:36 -07:00
Shuo Qian
b61230c51d Integrate the active emergency session listener in TelephonyRegistry
Add Telecom shell command: "adb shell telecom set-system-dialer"

Test: PhoneStateListener cts
Bug: 135204580
Merged-In: I5eaada6a671606642a849f0ff6fe964332d80d5f
Change-Id: I5eaada6a671606642a849f0ff6fe964332d80d5f
2019-09-30 20:43:42 +00:00
Gabriel Siqueira
d7fc4f774a Add requiredSystemPropertyValue support in idmap2
Up to Android P, there was this feature were we are able to
define "requiredSystemPropertyValue" in the AndroidManifest.xml
of the RRO apk, so that it will only be loaded if
requiredSystemPropertyValue/requiredSystemPropertyName are matched.

Porting support from idmap
https://android.googlesource.com/platform/frameworks/base/+/master/cmds/idmap/scan.cpp#135

To idmap2
https://android.googlesource.com/platform/frameworks/base/+/master/cmds/idmap2/idmap2/Scan.cpp#175

Bug: 140891738
Change-Id: I47752af93efa4563a60e336c1e1b1ffc081b51ec
2019-09-27 11:35:34 -03:00
Treehugger Robot
a828ee6442 Merge changes from topic "system_ext"
* changes:
  Consider overlay in system_ext as system's
  Support /system_ext partition
2019-09-26 22:18:07 +00:00
Mike Ma
a11beeca12 Merge "Add an API to dump incident report for dumpstate" 2019-09-24 01:07:25 +00:00
Mike Ma
15f83a3118 Add an API to dump incident report for dumpstate
Instead of just relying on the regular iteration through the system
services inside dumpstate, add another API to IIncidentManager
dedicated for dumpstate.

- It is only callable by dumpstate() (check the calling uid)
- It has the same behavior as the current call inside dump()

Advantages:
- More explicit function name, right next to takeIncidentReport will
  make it easier to keep them in sync.
- Nobody else can call it, make security easier.
- If dumpstate calls it explicitly, it can skip the 10 second timeout
- The regular dump() call should provide debugging data about
  incidentd itself, for example timestamps for the most recent N
  incident reports taken and the current state of the work directory,
  allowing us to debug incidentd itself.

Bug: 137493082
Test: Manually trigger a bug report, and verify
      /proto/incident_log.proto in the zip file.

Change-Id: I19139c765b53ede63d3beb3ea3ac40ada1aba42d
Merged-In: I19139c765b53ede63d3beb3ea3ac40ada1aba42d
2019-09-23 16:20:53 -07:00
Jeongik Cha
3e725f2224 Consider overlay in system_ext as system's
When there is overlay package in system_ext, turn on POLICY_SYSTEM_PARTITION.
In other words, overlay pacakge in /system_ext is considered as system's one

Test: mv vendor/overlay/framework-res__auto_generated_rro.apk system_ext/overlay
      and then check if it works properly.
Bug: 136715327

Change-Id: Ib225368eae41203a8630f4310d26e9cf1afa706a
Merged-In: Ib225368eae41203a8630f4310d26e9cf1afa706a
(cherry picked from commit cba9579158)
2019-09-23 22:01:29 +00:00
Steven Moreland
598bda8624 Host users of libutils trace use libcutils.
Reducing device/host differences. This is now required since libutils
Trace.h always calls the libcutils functions, instead of before where
it only called these functions on device.

Bug: 124524556
Test: build & boot
Change-Id: Ic096ed7caf8ca59292b3427a16c4e2545d12dfd9
2019-09-20 11:27:59 -07:00
atrost
e36b1a142f Implement stats logging for Compatibility API.
Add a new atom and log from both the app process API and the system server API
Bug: 136794938
Bug: 138378110
Test: statsd_testdrive 228

Change-Id: I80f07d0beb30c779c4bce70bebf2bb4ab22f6bfe
Merged-In: I80f07d0beb30c779c4bce70bebf2bb4ab22f6bfe
2019-09-16 14:55:53 +01:00
Colin Cross
2e928fb62a Merge changes from topic "protobuf-3.9.1"
* changes:
  Convert statsd_test and statsd_benchmark to proto lite
  Adapt to google::protobuf::uint64 type change
2019-09-11 18:00:16 +00:00
Steven Moreland
0daed48a88 Remove libhwbinder/libhidltransport deps
Since these were combined into libhidlbase.

Bug: 135686713
Test: build only (libhwbinder/libhidltransport are empty)
Change-Id: I136e4d4459bb8c3c5abf3c0758dd5ae14d0ad2a2
2019-09-09 16:28:55 +00:00
Colin Cross
959cc442a1 Convert statsd_test and statsd_benchmark to proto lite
libplatformprotos for the device is compiled using proto lite, and
statsd_test and statsd_benchmark have protos that reference the
libplatformprotos.  With protobuf 3.9.1 compiling a full proto
against a lite proto doesn't work.  Convert them to lite.  Requires
adding the protobuf internal protos to the sources,
libprotobuf-cpp-lite does not contain the compiled version of
field_options.proto.

Bug: 117607748
Test: m checkbuild
Change-Id: I0b101555ff604df17b2e3e06f3b3ce25adb1c9fb
Merged-In: I0b101555ff604df17b2e3e06f3b3ce25adb1c9fb
2019-09-06 13:54:11 -07:00
Colin Cross
f74defb808 Adapt to google::protobuf::uint64 type change
Protobuf 3.9.1 redefines google::protobuf::uint64 from unsigned long
long to uint64_t, which is sometimes unsigned long and sometimes
unsigned long long.  Use PRIu64 to print it, and add an implementation
of ProtoOutputStream::write for long.

Bug: 117607748
Test: m checkbuild
Change-Id: Ib2d3f4e17857f8ccbbe342ce6678e76b591df510
Merged-In: Ib2d3f4e17857f8ccbbe342ce6678e76b591df510
2019-09-06 13:54:11 -07:00
Yi Kong
9b00f181da Fix android-cloexec-pipe clang-tidy warning
The upcoming clang-tidy update finds a new instance of
android-cloexec-pipe warning:

FileUtilsTests.cpp:72:13: error: prefer pipe2() with O_CLOEXEC to avoid leaking file descriptors to child processes
ASSERT_EQ(pipe(pipefd), 0);
^~~~~~~~~~~~
pipe2(pipefd, O_CLOEXEC)

Apply the suggested fix by clang-tidy.

Test: build
Bug: 131328001
Exempt-From-Owner-Approval: Cherrypick
Change-Id: Iee772b5c3ed5e2af481e479dab19030f8419290a
Merged-In: Iee772b5c3ed5e2af481e479dab19030f8419290a
(cherry picked from commit f61e2167d5)
(cherry picked from commit 1fa946a2f2)
2019-08-23 16:46:05 +00:00
Yi Kong
fbafa5162a Disable modernize-use-trailing-return-type clang-tidy check
Upcoming clang update introduced the new modernize-use-trailing-return-type
check which is not useful. Disable this warning for now (even before the
new clang update lands) since clang-tidy doesn't complain about flags it
doesn't know.

Test: build with new clang-tidy
Bug: 131328001
Change-Id: I7fbc10fb9044904f85f9a1ec6cf712ce3cec0a79
Merged-In: I7fbc10fb9044904f85f9a1ec6cf712ce3cec0a79
Exempt-From-Owner-Approval: Trivial, no functionality change
(cherry picked from commit fc8e666d67)
(cherry picked from commit a0914d81ef)
2019-08-22 22:33:37 +00:00
Colin Cross
dfa50902b8 Adapt to google::protobuf::int64 type change
Protobuf 3.9.1 redefines google::protobuf::int64 from long long
to int64_t, which is sometimes long and sometimes long long.  Use
PRIi64 to print it.  Also temporarily cast to int64_t to decouple
this change from the change that updates protobuf.

Bug: 117607748
Test: m checkbuild
Change-Id: I482b957d2262e5001140ed1153c7de2b17facae2
2019-08-14 16:32:22 -07:00
Elliott Hughes
c3b0712ed2 Merge "Use String8 for UTF16 to UTF8 conversion."
am: 527c91320d

Change-Id: Ica55f07373dfada4729df8472b1bae71bf0011c3
2019-08-08 12:51:31 -07:00
Elliott Hughes
527c91320d Merge "Use String8 for UTF16 to UTF8 conversion." 2019-08-08 19:12:04 +00:00
Elliott Hughes
1f7b854d70 Use String8 for UTF16 to UTF8 conversion.
This is the only actual user of libcutils' jstring.h.

Test: treehugger
Change-Id: I0444d42e5a3ca57de3bffca48aa265f267c3d4dc
2019-08-08 09:36:14 -07:00
Elliott Hughes
7d6f9a2274 resolve merge conflicts of 93fdd252d2 to stage-aosp-master
Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: Ia98bcfb2dcc8bb45fbec4e2fb354fb1c6bea8ae8
2019-07-31 15:55:26 -07:00
Elliott Hughes
24667360c8 Remove product_is_iot.
Test: treehugger
Change-Id: I975f86999e4e40c06d6239fbc63e200042d37cc4
Merged-In: I975f86999e4e40c06d6239fbc63e200042d37cc4
2019-07-31 19:45:51 +00:00
Kyeongkab.Nam
15e24878d6 Merge "Fix bootanimation stack overflow"
am: 935d8032c8

Change-Id: If5b2538dc6f2f8639166eaf9c27eb152b8c5419a
2019-07-22 19:57:21 -07:00
Treehugger Robot
935d8032c8 Merge "Fix bootanimation stack overflow" 2019-07-23 02:13:28 +00:00
Frank Li
736173bba2 Merge "Add one field(sampling_rate_denom) in NetworkDnsEventReported for recording sample rate."
am: 929cb5fc7f

Change-Id: I63dadfe56ab3b08ba29bb0b60e0f282a6a458867
2019-07-22 07:45:24 -07:00
lifr
2b9fab728d Add one field(sampling_rate_denom) in NetworkDnsEventReported for recording sample rate.
The sample rate of DNS stats(to statsd) is 1/sampling_rate_denom.

Bug: 133111380
Test: ./out/host/linux-x86/bin/statsd_testdrive 116
Change-Id: I85acc8cb8ec4c38e95f7e97b0dd8da1294d9ceb3
2019-07-20 17:50:54 +00:00
Kyeongkab.Nam
35a8a11697 Fix bootanimation stack overflow
length of input from scanf is not limited even though MAX char of path
is defined as 256. This could cause stack corruption when length of input
is over MAX.

Test: run bootanimation with desc.txt which has over 256 length of path.

Change-Id: Ic60081ca82067ad671508e766c495546af9233d1
2019-07-18 10:12:10 +09:00
Steven Moreland
3c8780e832 Merge "libbootanimation: remove unused deps"
am: a367e0e4fa

Change-Id: I7eed8816df090c1cb8d935a79aeeb819ad1a6886
2019-07-16 14:10:21 -07:00
Elliott Hughes
f2eb832c32 Remove perfprofd support.
This isn't finished, and no-one's working on finishing it.

(cherry picked from commit 5a12f19ee1)

Exempt-From-Owner-Approval: cherrypick
Test: builds
Change-Id: I0406afadc0663ef3c07acafcdf40f76c9bba27bf
Merged-In: I0406afadc0663ef3c07acafcdf40f76c9bba27bf
2019-07-16 15:59:12 +00:00
Steven Moreland
d2a323969c libbootanimation: remove unused deps
Bug: 137311188
Test: library still builds
Change-Id: I105cedd7ca6311a767fa627ca4b869e3f077498a
2019-07-11 16:16:31 -07:00
Nazanin Bakhshi
1ca89a995b Merge "Add device identifier permission checks to TelephonyPermissions" 2019-07-01 23:26:18 +00:00
Michael Groover
94672cea7c Add device identifier permission checks to TelephonyPermissions
Bug: 131916175
Fixes: 136305129
Test: atest PhoneSubInfoControllerTest
Change-Id: Icca98347ab76b7c3468b95756a33a758a3abde37
Merged-In: I3c82c53ec89cd17b34a61166ccc9e9747388efac
2019-07-01 17:53:11 +00:00
Felix Lopez Luis
7ca1abd367 Add new atoms to log Downgraded Apps and Low Storage
Merged-In: I211696c836cb9c8a7b72e3693ecba3061ca599bf
Exempt-From-Owner-Approval: Cherry-pick
Change-Id: I211696c836cb9c8a7b72e3693ecba3061ca599bf
Bug-Id: b/120911106
Test: refactoring CL. Existing unit tests still pass.
2019-07-01 16:20:55 +00:00
Tej Singh
383dd33392 Merge "StatsdStats: improve activation time logging" into qt-dev
am: 26b6ef7904

Change-Id: I3c9be295caf4acb672bed44ba47a4d67a44ed52a
2019-06-27 19:19:45 -07:00
TreeHugger Robot
26b6ef7904 Merge "StatsdStats: improve activation time logging" into qt-dev 2019-06-28 02:03:40 +00:00
Tej Singh
16ca28fc8e StatsdStats: improve activation time logging
Add logging to record whenever the 10 second guardrail for sending
active configs changed broadcast is met, so that we know when the
broadcast would not have been sent.
Add activation time for configs that are active when the device boots.
This will help determine whether or not statsd thinks configs are active
and will help debug issues like b/133809948

Bug: 133809948
Test: bit statsd_test:*
Test: manually rebooted to make sure activation time was logged
Change-Id: Ifa72202bc52485e4953e49d78dffea685cc3d1e7
2019-06-25 13:52:58 -07:00
Rafal Slawik
fa214b65ff Merge "Add atom for per-process system ion heap size" into qt-dev
am: 956197e8e0

Change-Id: Ica2629bf4a5cc744004d19393ce7733aff1689fd
2019-06-24 15:28:29 -07:00
Ioannis Ilkos
689148acc6 Merge "Add anon RSS + swap metric" into qt-dev
am: 9af8d15783

Change-Id: I00f58e98bb7c162032bf381348a63be4bd77ac0f
2019-06-24 08:16:21 -07:00
Rafal Slawik
6d44d6dafa Add atom for per-process system ion heap size
The pulling code will be added in the next commit.

Bug: 130526489
Test: statsd_testdrive
Change-Id: I0fea4b6a7a8dbbdc574fb342c1e07aa0165bf797
(cherry picked from commit 77987ed47f)
2019-06-24 09:54:42 +00:00
Ioannis Ilkos
9af8d15783 Merge "Add anon RSS + swap metric" into qt-dev 2019-06-24 08:46:40 +00:00
Stanislav Zholnin
6f916a687c Add logging atom for PermissionApps fragment views
am: 32a89c15a7

Change-Id: I749c575b7eadbc3d51580dde23ec3a50c7b8a5ca
2019-06-21 08:53:53 -07:00
Stanislav Zholnin
25cf647b90 Add atom for logging of AppPermissionsFragment views.
am: dc3e2b35fb

Change-Id: I61f7ff871353ea2434adee80e04d7c2ff4c0b4e1
2019-06-21 08:46:12 -07:00
Stanislav Zholnin
0244d86622 Add atom for logging views in AppPermissionFragment
am: c9dda9ecdf

Change-Id: Ie31e10cd3d7adf56f0310cd8b3ea7881d245977a
2019-06-21 08:44:30 -07:00
Stanislav Zholnin
4de2e4173e Add logging atoms to record user actions in AppPermissionFragment (handheld devices only)
am: 3e0f9bcce0

Change-Id: I1c44883c232ecd841d8a4045bbb3ec927bfc7e67
2019-06-21 08:42:16 -07:00
Stanislav Zholnin
32a89c15a7 Add logging atom for PermissionApps fragment views
Test: make statsd_testdrive && ./out/host/linux-x86/bin/statsd_testdrive -p com.google.android.permissioncontroller 218
Bug: 133401502
Bug: 134581123
Change-Id: I8f41d72c8f96a004911ef68491de8a214da4db24
Add logging to PermissionAppsFragment
2019-06-21 16:39:52 +01:00