Commit Graph

9389 Commits

Author SHA1 Message Date
Aaron Whyte
9a250cf9ef Merge "Revert "Break down jank between frame drops vs. triple buffered"" into pi-dev am: fbb4b82156
am: 0541ada6b5

Change-Id: I3abba97d7d3bd7e7a41376b818e586629fd5ce07
2018-03-20 00:07:15 +00:00
TreeHugger Robot
fbb4b82156 Merge "Revert "Break down jank between frame drops vs. triple buffered"" into pi-dev 2018-03-19 19:44:14 +00:00
John Reck
34be60db86 Merge "Don't use IPC in isolateProcess" into pi-dev am: 75cd1c0334
am: b542ac19c6

Change-Id: I3150815a29392ceeca39e73282b1354af3de4339
2018-03-19 19:25:55 +00:00
Aaron Whyte
a6d8fbf4ea Revert "Break down jank between frame drops vs. triple buffered"
This reverts commit 09979fbee7.

Reason for revert: Based on stacktraces and change history, I think this is causing a cluster of P crashes.
https://b.corp.google.com/issues?q=(%22android%22%20%22:uirenderer::JankTracker::finishFrame%22)
Bug: 75566601
Bug: 75811585
Bug: 75407175
Bug: 75736222
Bug: 75391447
Bug: 75659839

Change-Id: I59a8c2d8906d347210c77fb3628f5801bc299bfb
2018-03-19 17:53:48 +00:00
John Reck
564284759f Don't use IPC in isolateProcess
Fixes: 74395652
Test: hwuiunit passes in 'shell stop' state (pseudo-isolated process),
      manually checked non-isolated processes still have working vsync
      via systrace of RT animations demo

Change-Id: I630ea011dc7eb2efa265b25673d3304b3b2510d3
2018-03-16 17:34:02 -07:00
Yi Jin
9324bed887 Merge "Remove comments of privacy.proto to avoid this accidently go to AOSP" into pi-dev am: d382087795
am: caa251aecd

Change-Id: I9b84640732abb187268ab8e18a1e3d82091f83ca
2018-03-16 00:53:57 +00:00
Yi Jin
854c8d3d05 Remove comments of privacy.proto to avoid this accidently go to AOSP
Bug: 72950747
Test: manual
Change-Id: I06a897170996fc0aa493bda76495c6ef1e484961
2018-03-15 15:02:59 -07:00
John Reck
2f6a2c7067 Merge "Break down jank between frame drops vs. triple buffered" into pi-dev am: 613783a909
am: ae0dbf5ee6

Change-Id: Ibb02fcee420ffa4a6c2ad4b350825e46b1f60aed
2018-03-15 20:38:29 +00:00
John Reck
613783a909 Merge "Break down jank between frame drops vs. triple buffered" into pi-dev 2018-03-15 19:48:54 +00:00
Stan Iliev
cebb647802 kClear blend mode is drawn as kDstOut
kClear blend mode is drawn as kDstOut on hardware canvas for
compatibility with Android O and older.
On SDK released with Android P, the kClear blend mode is respected.

Bug: 71602378
Test: Ran Flo app
Change-Id: I6b0fa8b8bf5aa14aa5a351a914bf2ed0469ac660
(cherry picked from commit f9a461feaf)
2018-03-15 15:28:15 +00:00
Stan Iliev
f9a461feaf kClear blend mode is drawn as kDstOut
kClear blend mode is drawn as kDstOut on hardware canvas for
compatibility with Android O and older.
On SDK released with Android P, the kClear blend mode is respected.

Bug: 71602378
Test: Ran Flo app
Change-Id: I6b0fa8b8bf5aa14aa5a351a914bf2ed0469ac660
2018-03-15 13:47:40 +00:00
Seigo Nonaka
a7a62d0b81 Merge "Remove mtOffset from drawTextRun" into pi-dev am: bc20993e4b
am: 17abcf0b76

Change-Id: Ib0dbce1bc5efe12193d0d9770830ed046c08869d
2018-03-15 06:49:49 +00:00
Derek Sollenberger
b679567b90 Merge "Merge "Update text alignment when using drawTextOnPath." into pi-dev am: 77e74b64eb" into pi-dev-plus-aosp
am: e7b208392a

Change-Id: I67bfd5970ad303909ff2ff09570fcf0ee4c034ef
2018-03-15 04:35:19 +00:00
Seigo Nonaka
83143d005b Remove mtOffset from drawTextRun
Bug: 72998298
Test: atest CtsWidgetTestCases:EditTextTest
    CtsWidgetTestCases:TextViewFadingEdgeTest
    FrameworksCoreTests:TextViewFallbackLineSpacingTest
    FrameworksCoreTests:TextViewTest FrameworksCoreTests:TypefaceTest
    CtsGraphicsTestCases:TypefaceTest CtsWidgetTestCases:TextViewTest
    CtsTextTestCases FrameworksCoreTests:android.text
    CtsWidgetTestCases:TextViewPrecomputedTextTest

Change-Id: Ia886c1ce9f7387559d7fe00b34ce03378d56ecec
2018-03-15 04:09:19 +00:00
John Reck
09979fbee7 Break down jank between frame drops vs. triple buffered
Bug: 70220906
Test: JankyScene vs. systrace vs. jankstats
Change-Id: Ia012685020cc5bcabbd3f92f0bdeb84eaf50733d
2018-03-14 15:00:05 -07:00
Derek Sollenberger
415a74b565 Update text alignment when using drawTextOnPath.
This is only a partial fix for the bug, but does ensure that Skia
doesn't attempt to realign the text after minikin already has.

Test: CtsGraphicsTestCases and test app in bug.
Bug: 25360203
Change-Id: I6222963b23b910f0261f562f8816604575d540fa
2018-03-14 15:03:13 -04:00
Mike Reed
1b9eeb161d update call-sites to use SkMaskFilter::MakeBlur
Blur is now part of the core, so SkBlurMaskFilter.h is deprecated

Test: make

Change-Id: I06dd34972f34151e3c7f1e9d384ab2bd39890a56
2018-03-13 15:53:32 +00:00
Pirama Arumuga Nainar
5230c72ad3 Merge "Revert "Disable LTO temporarily for hwui"" into pi-dev am: 6964e7548f
am: 4f8e8304e2

Change-Id: Iae1bdc79ba5267ae564570d36bb155e57cc9008c
2018-03-12 23:16:39 +00:00
Derek Sollenberger
086994b6c5 Update legacy font renderer to use the updated method names from Skia
Part 2

Test: hwui_unit_tests
Change-Id: I749b0339dd05589d43e04b04e68df286b69884af
2018-03-09 17:06:21 +00:00
Pirama Arumuga Nainar
b7913e1f8a Revert "Disable LTO temporarily for hwui"
Bug: http://b/62839002
Bug: http://b/74395273

Turn LTO back on for hwui.  The reason for the build breaks were stale profile files in ccache. We'll hold off on updating profile files until this can be fixed.  LTO can be turned back on in the mean time.

This reverts commit 7184e28b3a.

Change-Id: I051c39a44be6a85682393e7d6e78f49b30bb85e1
2018-03-09 00:04:43 +00:00
Pirama Arumuga Nainar
2cf984c3a8 Disable LTO temporarily for hwui am: 7184e28b3a
am: 63ac5a77d9

Change-Id: I9484359c3db393b32ee9b747ec543bfd641e2cb8
2018-03-08 07:53:18 +00:00
Pirama Arumuga Nainar
7184e28b3a Disable LTO temporarily for hwui
Bug: http://b/62839002

LTO does not seem to interact well with PGO profile-file updates and
incremental builds in the build servers.

Test: build
Change-Id: I42175b2376b374d00ec169d4fe8d84cd938b21e5
2018-03-07 23:24:02 -08:00
Kweku Adams
eadd123d68 Dumping stack traces to proto.
Bug: 72177715
Test: flash device and check incident.proto output
Change-Id: Id2a15e0fc62b66efe875949af97f0eb651c7e322
(cherry picked from commit 5c804e2b98)
2018-03-07 21:50:12 +00:00
Kweku Adams
017adb2dfb Merge "Dumping stack traces to proto." 2018-03-07 21:49:30 +00:00
Leon Scroggins
a0b807fc77 Merge "Draw AnimatedImageDrawable mirrored if desired" into pi-dev am: e781724b41
am: e09775e34d

Change-Id: I4b2351468a7ef5fcdbefe84e349a74437820c61c
2018-03-07 19:24:05 +00:00
Leon Scroggins
e781724b41 Merge "Draw AnimatedImageDrawable mirrored if desired" into pi-dev 2018-03-07 18:51:16 +00:00
TreeHugger Robot
e92a2dbf71 Merge "Update legacy font renderer to use the updated method names from Skia" 2018-03-07 15:11:32 +00:00
Derek Sollenberger
36b73a89f8 Update legacy font renderer to use the updated method names from Skia
Test: hwui_unit_tests
Change-Id: Ie7c823a135f17b851dbf7d3305f3f12591e93daf
2018-03-07 08:01:19 -05:00
Yi Jin
f3e800a216 Merge "Use uint64_t instead of long long as API type for consistent reason." into pi-dev am: 88840820d0
am: db8bc9ba01

Change-Id: If83ee0aa6477700b4245af9fd16fc94decaa5e97
2018-03-06 22:28:45 +00:00
Yi Jin
5ee0787024 Use uint64_t instead of long long as API type for consistent reason.
Bug: 74118023
Test: manual
Change-Id: Icd5f506c76d3a008a79cb6c9d2061962ca7fdd40
2018-03-05 18:18:27 -08:00
Leon Scroggins III
5e8447f74d Draw AnimatedImageDrawable mirrored if desired
Bug: 73529437
Test: I27af7c3b2e08fa50bc19e08930d970931ce4b5e9

If isAutoMirrored, and the layout direction is RTL, make
AnimatedImageDrawable draw flipped.

Change-Id: I9a3436ef4cb9df2845a67663a2503c2c1a3dba89
2018-03-05 15:06:40 -05:00
TreeHugger Robot
0315c8495d Merge "Don't dereference a null pointer" 2018-03-05 18:58:43 +00:00
Adam Lesinski
f3c951fd52 Merge "Change ownership of AAPT2 and libandroidfw" 2018-03-02 22:38:46 +00:00
Todd Kennedy
949b625377 Don't dereference a null pointer
If we don't specifiy an output for R.java, don't try to write
data to the class definition

Change-Id: I3ad471ec93dcb8baf13f221174065679cce311ad
Fixes: 72547268
Test: out/host/linux-x86/nativetest64/aapt2_tests/aapt2_tests
2018-03-02 14:19:45 -08:00
Adam Lesinski
40a32d9ff0 Merge "Refactor AssetManager" 2018-03-02 22:05:45 +00:00
Kweku Adams
5c804e2b98 Dumping stack traces to proto.
Bug: 72177715
Test: flash device and check incident.proto output
Change-Id: Id2a15e0fc62b66efe875949af97f0eb651c7e322
2018-03-02 13:02:07 -08:00
Adam Lesinski
a95e841846 Change ownership of AAPT2 and libandroidfw
toddke@ is now the new owner of these projects.

Test: none
Change-Id: Ie92b020e0ba063f48ce8a76ebaef768fe0d554f1
2018-03-02 12:11:03 -08:00
TreeHugger Robot
ffcd4bc88f Merge "Enable ThinLTO for hwui" 2018-03-02 19:11:22 +00:00
TreeHugger Robot
cbc22b8bec Merge "Allow debuggable apps to do skp capture" 2018-03-02 19:09:31 +00:00
Stan Iliev
6c4b6e8b0e Fix a crash when grContext was deleted
Fix a crash when trimMemory has occurred and then a java
VectorDrawable object is deleted.

Test: Ran Camera app
Bug: 72837472
Change-Id: I4bdc5975a9ceccc09af17edd9905345f97c2660f
2018-03-02 14:41:08 +00:00
John Reck
6afa009c0c Allow debuggable apps to do skp capture
Change-Id: Ibb56887b28eb8260bf2ca0b38dbe78233e9cfaf4
Fixes: 74086676
Test: verified can still capture an skp
2018-03-01 17:28:35 -08:00
Zhizhou Yang
f30f112da0 Enable ThinLTO for hwui
ThinLTO will benefit hwui on both performance and code size.

Now that hwui is with PGO, ThinLTO provides 3.8% performance improvement
on top of it (tested using hwui benchmarks on marlin device).

Enabling ThinLTO also decreases current code size of libhwui.so by 3.2%.

To be mentioned, Thinlto property in bp file will go through all static
libraries that hwui depends on (such as libskia) and enable Thinlto for
them when building hwui.

Test: Build and run benchmarks with ThinLTO enabled.
Bug: http://b/62839002
Change-Id: I89466d50c3715f6e7b0518ff10240bf8a5e9714c
2018-03-01 11:21:30 -08:00
Adam Lesinski
bebfcc46a2 Refactor AssetManager
Bug: 64071469
Test: atest CtsContentTestCases
Change-Id: Ia6856157e8813856268fba003e1e591d690cb26e
2018-02-28 19:06:48 -08:00
Steven Moreland
df7675f1cb Merge "Don't use cutils/Atomic.h" am: 07735797a2 am: a272d540d8
am: 0f4ca4a5c0

Change-Id: I4b9798b39d890537f888415b5ac283227970e4de
2018-02-28 14:13:52 +00:00
Steven Moreland
0f4ca4a5c0 Merge "Don't use cutils/Atomic.h" am: 07735797a2
am: a272d540d8

Change-Id: Ie442c255e43f2ebe80ef5423aa4508930d72c44c
2018-02-28 14:01:17 +00:00
TreeHugger Robot
ec98448f15 Merge "Implement a new section to attach LAST_KMSG to incident report This section simply gzip a large file and stores result in GZippedFileProto" 2018-02-28 03:02:16 +00:00
TreeHugger Robot
f3537c2054 Merge "Updates jank metrics in statsd to include uid." 2018-02-27 20:47:33 +00:00
Yi Jin
1a11fa1097 Implement a new section to attach LAST_KMSG to incident report
This section simply gzip a large file and stores result in GZippedFileProto

This greatly improves the size, before gzip, the last kmsg size ~500KB,
after gzip the proto size is ~60KB.

Bug: 73354384
Test: atest incidentd_test and manual on device test
Change-Id: I9bfc2cf07384487671edbffb5f0bd8495608fea6
2018-02-27 11:36:29 -08:00
TreeHugger Robot
255ed5cbdc Merge "[Magnifier-26] Wire up frame callback for realsies" 2018-02-27 02:13:46 +00:00
David Chen
77ef671c41 Updates jank metrics in statsd to include uid.
We need the uid to easily know which app to blame for producing the
frame with excessively long render time. Also updates the errors so
it's more obvious if the error is in parsing versus the other checks.

Test: Test that statsd builds and verified CTS test still passes.
Change-Id: Ib6518f2d9fe6f9c78d548b6dcbdb67a0f211ff5c
2018-02-26 17:18:20 -08:00