OSDN Git Service
Jorim Jaggi [Thu, 28 Feb 2019 22:14:29 +0000 (23:14 +0100)]
Get rid of logic that clears sync point when layer is hidden
For app transitions that go to Launcher, Launcher is initially
hidden, including the leash controlling it as well as the actual
WSA surface. Since the barrier layer of the leash of the closing
app is Launcher WSA, which is a child of the Launcher leash, the
sync point will be cleared because it's not yet shown, as the
showing itself is synced to WSA Launcher surface. However that
destroys the synchronization, leading to jank in various ways.
The justification why this code was added doesn't make sense to
me: SurfaceView usually synchronizes with Activity main window
surfaces. These get destroyed as soon as the activity goes away.
We don't think that logic is needed at all.
Test: Open app, press back, observe no jank
Test: Play video in app
Fixes:
126340236
Change-Id: Ib70d3bbdce1c7206487359213803e3e59d332400
TreeHugger Robot [Fri, 8 Feb 2019 03:47:57 +0000 (03:47 +0000)]
Merge "SurfaceFlinger: Ensure reparent triggers visible region calculation."
TreeHugger Robot [Fri, 8 Feb 2019 02:13:01 +0000 (02:13 +0000)]
Merge "Remove EventHub header from include dir"
TreeHugger Robot [Fri, 8 Feb 2019 02:12:56 +0000 (02:12 +0000)]
Merge "Background modifications trigger callbacks (BufferStateLayer)"
TreeHugger Robot [Fri, 8 Feb 2019 01:18:37 +0000 (01:18 +0000)]
Merge changes Id7c0a2f5,I980f6215
* changes:
Adding 3.0 mapper support to lockAsync
Adding support for Hal query in AHardwareBuffer isSupported
Valerie Hau [Wed, 6 Feb 2019 00:21:38 +0000 (16:21 -0800)]
Background modifications trigger callbacks (BufferStateLayer)
Bug:
123875604
Test: build, boot, SurfaceFlinger_test
Change-Id: I00f254bb2d6ae9bbd9f623c75fbdc10b848b4b56
Robert Carr [Thu, 7 Feb 2019 22:45:11 +0000 (14:45 -0800)]
SurfaceFlinger: Ensure reparent triggers visible region calculation.
Following the recent CL there are still more errors. First is that we may
not set the transaction flags, leading to SurfaceFlinger failing to call
doTransaction. We fix this by calling setTransactionFlags from add/removeChild.
The second problem is that if mCurrentState.modified were not true, do transaction
would return early and fail to produce eVisibleRegions. We fix this with a refactoring
in doTransaction.
Test: Manual
Bug:
123333167
Change-Id: Iccd25244b6cb38a1fd90dc5165820d1100f40f4a
Valerie Hau [Thu, 7 Feb 2019 22:25:12 +0000 (14:25 -0800)]
Adding 3.0 mapper support to lockAsync
Bug:
123423521
Test: build, boot, GraphicBuffer_test
Change-Id: Id7c0a2f5d7b942e612ff7e8a5e047511f80f81bc
TreeHugger Robot [Thu, 7 Feb 2019 21:58:30 +0000 (21:58 +0000)]
Merge "Revert "Revert "Use renderengine::drawLayers api everywhere."""
Valerie Hau [Thu, 7 Feb 2019 21:42:43 +0000 (13:42 -0800)]
Adding support for Hal query in AHardwareBuffer isSupported
Bug:
120440873
Test: Build, boot, AHardwareBufferGLTest cts test
Change-Id: I980f621598214ca514f02fc2d9861dfb3fa3bb12
Yiwei Zhang [Thu, 7 Feb 2019 20:46:56 +0000 (20:46 +0000)]
Merge "Game Driver: plumb packange name and version for GpuStats"
Rob Carr [Thu, 7 Feb 2019 20:45:11 +0000 (20:45 +0000)]
Merge "SurfaceControl life-cycle refactoring."
Rob Carr [Thu, 7 Feb 2019 20:45:11 +0000 (20:45 +0000)]
Merge "SurfaceControl: Allow calling destroy when mOwned is true"
Alec Mouri [Tue, 5 Feb 2019 01:13:46 +0000 (01:13 +0000)]
Revert "Revert "Use renderengine::drawLayers api everywhere.""
This reverts commit
79108df863d454369ee61cdb70f6d14c8414e30e.
Reason for revert: merged in forward fix - GL_BLEND is now explictly
disabled before initially clearing the buffer.
Bug:
118461793
Test: b/
123878751 cannot be reproduced.
Change-Id: Ia49163b40016e746500d9954e1863d0706bc65e1
Prabir Pradhan [Wed, 6 Feb 2019 02:51:32 +0000 (18:51 -0800)]
Remove EventHub header from include dir
Since the EventHub header does not need to be exported, this removes the
header from the include directory.
This also moves the reserved input device ids from EventHub to
input/InputDevice.h.
Bug: None
Test: None
Change-Id: I272878245ee60c85e4539b381a20962ca9236cfd
TreeHugger Robot [Thu, 7 Feb 2019 00:55:45 +0000 (00:55 +0000)]
Merge "SF: Fix for rare flakes in Event{Control}ThreadTests"
TreeHugger Robot [Thu, 7 Feb 2019 00:52:28 +0000 (00:52 +0000)]
Merge "SF: Color changes should dirty entire display"
TreeHugger Robot [Wed, 6 Feb 2019 23:53:05 +0000 (23:53 +0000)]
Merge "SF Bounds caching 1/3: Defer calls that use layer bounds until the cached bounds are available."
TreeHugger Robot [Wed, 6 Feb 2019 23:43:39 +0000 (23:43 +0000)]
Merge "Changed ContainerLayer's isVisible method to always return false."
Yiwei Zhang [Tue, 5 Feb 2019 02:56:38 +0000 (18:56 -0800)]
Game Driver: plumb packange name and version for GpuStats
Bug:
123529932
Test: Build, flash and boot.
Change-Id: I354c4ee26df0b4a61f3bcbafe429832c73f0cc95
Dominik Laskowski [Wed, 6 Feb 2019 22:46:09 +0000 (22:46 +0000)]
Merge "SF: Plumb physical display IDs to libgui"
Lloyd Pique [Wed, 6 Feb 2019 02:00:12 +0000 (18:00 -0800)]
SF: Color changes should dirty entire display
After doing the refactoring of DisplayDevice into
compositionEngine::Output (etc), it became obvious that color matrix and
color mode changes should really be marking the entire output as dirty
so everything is repainted on it.
This patch makes that change, adding tests to verify the intended
behavior.
Test: atest libsurfaceflinger_unittest libcompositionengine_test
Bug:
121291683
Change-Id: Ia02830eb679271884106f773aa3291f191a49669
Vishnu Nair [Wed, 6 Feb 2019 20:58:39 +0000 (12:58 -0800)]
SF Bounds caching 1/3: Defer calls that use layer bounds until the cached bounds are available.
End goal is to calculate the bounds once in the surface flinger loop. The bounds are invalidated
if the visible region changes. The first step is to defer any functions that use the cache to after
the bounds is calculated.
- Defer updating display dirty region when latching buffers.
- Defer updating cursor and input flinger until all the buffers have been latched.
- Recompute visible regions if transformToDisplayInverse flag changes
Test: go/wm-smoke
Test: atest -a libinput_tests inputflinger_tests SurfaceFlinger_test libsurfaceflinger_unittest SurfaceParcelable_test libgui_test
Change-Id: Ife6e0f06939d9f4fb051b68cb2b1c9f5bd180b57
chaviw [Thu, 31 Jan 2019 21:41:05 +0000 (13:41 -0800)]
Changed ContainerLayer's isVisible method to always return false.
ContainerLayers should always be considered not visible so they don't get
calculated when computing visible regions. However, isVisible is also used when
sending window info to InputManager about which windows can be touched.
ContainerLayers should still be considered visible to InputManager. The
function canReceiveInput was added so it can return a different value than
isVisible which only means visible to the screen.
Test: No longer composer ContainerLayers
Bug:
123686354
Change-Id: Ib39952e89ffd4ea9618b6027e7da96ef175de058
TreeHugger Robot [Wed, 6 Feb 2019 19:43:36 +0000 (19:43 +0000)]
Merge "SF: Fix many flakes in IdleTimerTest"
TreeHugger Robot [Wed, 6 Feb 2019 19:29:16 +0000 (19:29 +0000)]
Merge "Vulkan: add atrace support"
Courtney Goeltzenleuchter [Wed, 6 Feb 2019 17:53:25 +0000 (17:53 +0000)]
Merge "Flag invalid robust access attribute"
Orion Hodson [Wed, 6 Feb 2019 09:20:37 +0000 (01:20 -0800)]
[automerger skipped] Merge "SurfaceFlinger: remove DdmConnection" am:
e55a64f1a7 am:
18b2d1b873
am:
ff1b508bd6 -s ours
am skip reason: change_id Ib9a129329f7bd8d67b954e58810807c683b20b48 with SHA1
34397da141 is in history
Change-Id: I262f8f4abb487a6db7384502df6461a7c8526092
Orion Hodson [Wed, 6 Feb 2019 09:12:09 +0000 (01:12 -0800)]
Merge "SurfaceFlinger: remove DdmConnection" am:
e55a64f1a7
am:
18b2d1b873
Change-Id: Icb3031dd2c5b534e4d986061435ad6a98c1b4963
Orion Hodson [Wed, 6 Feb 2019 09:03:46 +0000 (01:03 -0800)]
Merge "SurfaceFlinger: remove DdmConnection"
am:
e55a64f1a7
Change-Id: I79597b9133678028ea38586f3ad19564555842fd
Orion Hodson [Wed, 6 Feb 2019 08:51:39 +0000 (08:51 +0000)]
Merge "SurfaceFlinger: remove DdmConnection"
Orion Hodson [Mon, 4 Feb 2019 09:36:10 +0000 (09:36 +0000)]
SurfaceFlinger: remove DdmConnection
DdmConnection dlopen's libart.so which is undesirable for the Runtime Module.
Bug:
120782499
Test: m -j100
Change-Id: Ib9a129329f7bd8d67b954e58810807c683b20b48
Merged-In: Ib9a129329f7bd8d67b954e58810807c683b20b48
Exempt-From-Owner-Approval: Cherry-pick of approved CL in master
Tianyu Jiang [Wed, 6 Feb 2019 05:27:36 +0000 (05:27 +0000)]
Merge "Add more BufferHubEventFd tests"
Peiyong Lin [Wed, 6 Feb 2019 04:35:44 +0000 (04:35 +0000)]
Merge "[SurfaceFlinger] Pick the widest color space."
TreeHugger Robot [Wed, 6 Feb 2019 03:51:23 +0000 (03:51 +0000)]
Merge "Fixing BufferState background color tests and Caching tests"
TreeHugger Robot [Wed, 6 Feb 2019 03:29:34 +0000 (03:29 +0000)]
Merge "Vulkan: fix VK_FORMAT_A2B10G10R10_UNORM_PACK32 format mapping"
Lloyd Pique [Thu, 31 Jan 2019 21:04:00 +0000 (13:04 -0800)]
SF: Fix many flakes in IdleTimerTest
There were a few flakes that were possible due to the way the idle
thread could end up being scheduled. In particular the following
tests have historically been flaky:
IdleTimerTest.idleTimerIdlesTest
IdleTimerTest.noCallbacksAfterStopAndResetTest
IdleTimerTest.noCallbacksAfterStopTest
IdleTimerTest.resetTest
IdleTimerTest.startStopTest
IdleTimerTest.timeoutCallbackExecutionTest
One thing that helps is to boost the priority of the test process as a
whole so that the IdleTimer thread is scheduled when it wants to be run.
But even then there are no guarantees that requesting a callback after
"3ms" actually generates that callback that quickly.
The adjustments to the test include:
1) Removing calls to sleep_for, in favor of doing follow-up operations
immediately after (start() then stop() for example), or relying on the
ability of the AsyncCallRecorder to wait for callbacks.
2) For startStopTest, using a larger interval, and sanity checking with
a clock source that an unexpected event really is unexpected.
3) For resetTest also using a long interval to observe the behavior if
the reset happens shortly before a callback for the previous interval
would be made.
There was unfortunately one change necessary to the implementation, not
just the test. It turned out that the condition.wait_for could return
after the interval had expired without returning
std::cv_status::timeout, and therefore not trigger a callback even
though it should have. This lead to idleTimerIdlesTest being flakey even
with the other changes.
There was also second issue discovered in Scheduler, where it did not
shut down the thread properly in its destructor, which could allow the
callback the Scheduler sets to be invoked while the Scheduler instance
is being destroyed (leading to lock attempt on a destroyed mutex).
Test: libsurfaceflinger_unittest --gtest_repeat=1000 # ALL pass x1000
Test: atest libsurfaceflinger_unittest # All, not just IdleTimerTest
Bug:
122319747
Change-Id: I716451524c32cc6a299523c47c11cfefd6ab4460
Peiyong Lin [Tue, 5 Feb 2019 23:39:15 +0000 (15:39 -0800)]
[SurfaceFlinger] Pick the widest color space.
Pick Display P3 for HDR video instead of sRGB.
BUG:
80404330
Test: Build, flash and boot.
Change-Id: Ief9656ef439cd14a6efbb6d31da5d5a6ad9be4b7
Yiwei Zhang [Tue, 5 Feb 2019 23:11:32 +0000 (15:11 -0800)]
Vulkan: fix VK_FORMAT_A2B10G10R10_UNORM_PACK32 format mapping
Bug:
122734370
Test: CtsDeqpTestCases
Change-Id: I70db764b44a6a019e1cabe23eb7b71e7a1edbadc
TreeHugger Robot [Tue, 5 Feb 2019 22:53:05 +0000 (22:53 +0000)]
Merge "SF: Fixup call expectations in libsurfaceflinger_unittest"
Valerie Hau [Tue, 5 Feb 2019 22:16:30 +0000 (14:16 -0800)]
Fixing BufferState background color tests and Caching tests
Bug: N/A
Test: SurfaceFlinger_test
Change-Id: I88eb383ed241e7538bbe8acc83dd345ed7491c31
Tri Vo [Tue, 5 Feb 2019 22:10:11 +0000 (14:10 -0800)]
Merge "libbinder: keep ashmem size >= 0" am:
5805df43c8 am:
037f268d39
am:
daf565333f
Change-Id: I7ac96936a6abb9e085a48d71bde16a2ed2fc9986
Tri Vo [Tue, 5 Feb 2019 21:57:35 +0000 (13:57 -0800)]
Merge "libbinder: keep ashmem size >= 0" am:
5805df43c8
am:
037f268d39
Change-Id: Id3f92e5a235d4287c4a916a5775e50771741e033
Tri Vo [Tue, 5 Feb 2019 21:45:11 +0000 (13:45 -0800)]
Merge "libbinder: keep ashmem size >= 0"
am:
5805df43c8
Change-Id: Id46cf33b6e0d48a1173d39301ffdcde15caff343
Tri Vo [Tue, 5 Feb 2019 21:38:50 +0000 (21:38 +0000)]
Merge "libbinder: keep ashmem size >= 0"
Valerie Hau [Tue, 5 Feb 2019 20:12:44 +0000 (20:12 +0000)]
Merge "Adding isSupported HIDL Mapper function support to framework"
Lloyd Pique [Tue, 5 Feb 2019 02:46:01 +0000 (18:46 -0800)]
SF: Fixup call expectations in libsurfaceflinger_unittest
This is done to eliminate a flood of warning messages about unexpected
calls when the test is run directly (not visible when run with atest)
Most of the warnings had to do with changes to the implementation to
query HWC capabilities when a display is connected, and other queries to set
up the framebuffer surface afterwards.
With these warnings gone, it is much easier to see other unexpected
calls that might actually be important.
Test: atest libsurfaceflinger_unittest
Bug: None
Change-Id: Ia386daa9dcbf9cfbcd3e12be3b63f6e05fdcfe5e
Kevin Chyn [Tue, 5 Feb 2019 19:06:50 +0000 (19:06 +0000)]
Merge "Partial revert of ag/
5807535"
TreeHugger Robot [Tue, 5 Feb 2019 17:36:01 +0000 (17:36 +0000)]
Merge "blast: implicitly cache buffers"
Nikita Ioffe [Tue, 5 Feb 2019 17:32:37 +0000 (09:32 -0800)]
Merge "installd_service_test: fix ServiceTest.CreateAppDataSnapshot_ClearsCache" am:
4febfd6da7 am:
3f3a196a5b
am:
e92895289c
Change-Id: Ic44cc4f8d0fd8381dfe89a27cc3ad6c9fad42d0e
Nikita Ioffe [Tue, 5 Feb 2019 17:28:29 +0000 (09:28 -0800)]
Merge "installd_service_test: fix ServiceTest.CreateAppDataSnapshot_ClearsCache" am:
4febfd6da7
am:
3f3a196a5b
Change-Id: I52182a9a79f3306c57bec5ae1b8843df2951b403
Nikita Ioffe [Tue, 5 Feb 2019 17:24:10 +0000 (09:24 -0800)]
Merge "installd_service_test: fix ServiceTest.CreateAppDataSnapshot_ClearsCache"
am:
4febfd6da7
Change-Id: I1134649531c898a20d524d26a8d40e63aeec9132
Robert Carr [Mon, 4 Feb 2019 23:20:26 +0000 (15:20 -0800)]
SurfaceControl life-cycle refactoring.
We provide a method called "release" which allows the client
to drop its references without reparenting the SurfaceControl
to null as the destructor would. The Java and NDK API's already
have this method but it's not perfectly functional at the moment.
Additionally we remove the strange pass-through of clear to destroy
and expose destroy directly.
Test: Builds
Bug:
123587983
Change-Id: Ia89ada1476daef97e6f30d50a57065c3636a6489
Treehugger Robot [Tue, 5 Feb 2019 17:00:28 +0000 (17:00 +0000)]
Merge "installd_service_test: fix ServiceTest.CreateAppDataSnapshot_ClearsCache"
Nikita Ioffe [Sat, 2 Feb 2019 17:26:18 +0000 (17:26 +0000)]
installd_service_test: fix ServiceTest.CreateAppDataSnapshot_ClearsCache
This test is failing on cf_x86_phone-userdebug target, with an error:
Failed copying /data/local/tmp/user_de/0/com.foo to /data/local/tmp/misc_de/0/rollback'
Logs shows that cp fails with "No such file or directory error":
02-05 08:37:49.444 12746 12746 I cp : cp: /data/local/tmp/misc_de/0/rollback: No such file or directory
02-05 08:37:49.445 12746 12746 I cp : cp terminated by exit(1)
Testcase is failing, because it doesn't create
/data/local/tmp/misc_de/0/rollback directory. It is hard to spot, because
other testcases in installd_service_test also create that directory, meaning
that depending on the order in which testcases are run,
CreateAppDataSnapshot_ClearsCache will either fail or succeed.
Verified that this is the case by running only
CreateAppDataSnapshot_ClearsCache testcase:
./data/nativetest/installd_service_test/installd_service_test --gtest_filter=*CreateAppDataSnapshot_ClearsCache*
Bug:
123631551
Fixes:
123631551
Test: ./data/nativetest/installd_service_test/installd_service_test --gtest_filter=*CreateAppDataSnapshot_ClearsCache*
Change-Id: I8277efe6076bac28fd07ea3705a21aae6b8cab14
TreeHugger Robot [Tue, 5 Feb 2019 09:06:51 +0000 (09:06 +0000)]
Merge "SurfaceFlinger: remove DdmConnection"
Alexander Smundak [Tue, 5 Feb 2019 06:19:33 +0000 (22:19 -0800)]
Merge "Use sh_binary instead of cc_prebuilt_binary for shell scripts" am:
5a3804f0cb am:
65c7b75ca8
am:
c8ff983e12
Change-Id: I47b4bd04e5475c86ce8878c3bf4cb638da82dce4
Alexander Smundak [Tue, 5 Feb 2019 06:01:43 +0000 (22:01 -0800)]
Merge "Use sh_binary instead of cc_prebuilt_binary for shell scripts" am:
5a3804f0cb
am:
65c7b75ca8
Change-Id: Id335d48fd13a04f3962b5fb87f1753a8e3a4c931
Roland Levillain [Tue, 5 Feb 2019 05:26:27 +0000 (21:26 -0800)]
Merge "Have `otapreopt_chroot` bind-mount Bionic artifacts from the Runtime APEX." am:
58ec999387 am:
d7a7b0727d
am:
3f01928331
Change-Id: I1c6b86413a45a4df0fedc046312e76895a5ab3f5
Roland Levillain [Tue, 5 Feb 2019 05:04:24 +0000 (21:04 -0800)]
Merge "Have `otapreopt_chroot` bind-mount Bionic artifacts from the Runtime APEX." am:
58ec999387
am:
d7a7b0727d
Change-Id: I84db38b12fe02dbabe5c849085d406c21bf65260
TreeHugger Robot [Tue, 5 Feb 2019 03:46:22 +0000 (03:46 +0000)]
Merge "Move BufferHubBase::Lock and ::Unlock from public function to private helper."
Alexander Smundak [Tue, 5 Feb 2019 02:14:38 +0000 (18:14 -0800)]
Merge "Use sh_binary instead of cc_prebuilt_binary for shell scripts"
am:
5a3804f0cb
Change-Id: I1fed184f753e77b04bd2df05fcad6649dcbbc5eb
Alexander Smundak [Tue, 5 Feb 2019 02:04:18 +0000 (02:04 +0000)]
Merge "Use sh_binary instead of cc_prebuilt_binary for shell scripts"
Tianyu Jiang [Fri, 1 Feb 2019 01:34:25 +0000 (17:34 -0800)]
Add more BufferHubEventFd tests
It checks that epollfd is able to recieve signaled BufferHubEventFd.
It checks that epollfd is able to receive consecutive signals from
BufferHubEventFd and duplicated BufferHubEventFd.
Test: BufferHub_test
Bug: None
Change-Id: Ia3bf8c56f2e858bb144c37b1daf75bd2c1363da7
Tianyu Jiang [Thu, 31 Jan 2019 22:53:24 +0000 (14:53 -0800)]
Move BufferHubBase::Lock and ::Unlock from public function to private helper.
User should be using GraphicBuffer/AHardwareBuffer::Lock/Unlock to lock/unlock
for CPU access to the data in the buffer.
BufferHubBase::Lock/Unlock exist were because this legacy class has IonBuffer,
which wraps a GraphicBuffer. The dependency will be reverted in the future, where
BufferHubBuffer backs GraphicBuffer.
Bug: None
Test: m, mma, vrflinger_test
Change-Id: I3e3287529326dce3ae57e344c5c738b898c3d44d
Siarhei Vishniakou [Mon, 4 Feb 2019 22:30:11 +0000 (14:30 -0800)]
Reset InputClassifier HAL when system starts
Under normal operation, the system and the HAL will both start at the
same time, and will have initial state. However, since they are in
separate, and independent, processes, one can crash while another would
remain functional. For example, if the system crashes, the HAL may still
be operational.
To account for these situations, send a complete reset to the HAL when
the system loads. This would help ensure that HAL has consistent state
every time the system starts.
Test: none
Bug:
117935272
Change-Id: I90e53fd4205f018c87af8eb8ac16d54fe9a62011
TreeHugger Robot [Tue, 5 Feb 2019 01:01:53 +0000 (01:01 +0000)]
Merge "Revert "Use renderengine::drawLayers api everywhere.""
TreeHugger Robot [Tue, 5 Feb 2019 00:50:19 +0000 (00:50 +0000)]
Merge "Remove unused BufferHubBase::GetBlobFds method"
TreeHugger Robot [Tue, 5 Feb 2019 00:49:39 +0000 (00:49 +0000)]
Merge "Remove BufferHubBase::Poll method"
Valerie Hau [Fri, 1 Feb 2019 17:54:20 +0000 (09:54 -0800)]
Adding isSupported HIDL Mapper function support to framework
Bug:
123423521
Test: build, boot, manual testing
Change-Id: Iee52de6f5610a8465b1f4435d02dc61a8064064a
TreeHugger Robot [Tue, 5 Feb 2019 00:43:29 +0000 (00:43 +0000)]
Merge "Remove unused variables from InputClassifier"
Yiwei Zhang [Thu, 31 Jan 2019 04:16:37 +0000 (20:16 -0800)]
Vulkan: add atrace support
Test: build, flash and take traces
Change-Id: Idab6d748519c4f5bc6aac3d51efd26cad28c94ec
Siarhei Vishniakou [Mon, 4 Feb 2019 22:25:28 +0000 (14:25 -0800)]
Remove unused variables from InputClassifier
The variables remained from a different implementation. They are not
used by the code.
Also, add an "override" keyword in some places.
Bug:
117935272
Test: presubmit only
Change-Id: Id4edf2d2658287247a01567c126305e07d407df2
Marissa Wall [Fri, 25 Jan 2019 18:45:41 +0000 (10:45 -0800)]
blast: implicitly cache buffers
Sending buffers between processes is expensive so they must be
cached. Currently buffers are explictly cached. This patch
updates them to implicitly cache them per client process.
The max buffers per process is 64. After that, the cache
will try to evict buffers that have been destroyed. If it doesn't
find any, it will evict the least recently used buffer.
Test: Transaction_test
Bug:
80477568
Change-Id: Id048d32e05e19d0ce875212cbcddf997736110fd
Alec Mouri [Mon, 4 Feb 2019 19:33:44 +0000 (19:33 +0000)]
Revert "Use renderengine::drawLayers api everywhere."
This reverts commit
0f7148365cfa405e8ed802b33c0e2a7b790fcf42.
Reason for revert: b/
123878751, preparing while i investigate
Bug:
123878751
Test: bug no longer repros
Change-Id: I6c77427f0c113f96b68aec479ccec52b0bbb2c6b
Sasha Smundak [Mon, 4 Feb 2019 19:20:58 +0000 (11:20 -0800)]
Use sh_binary instead of cc_prebuilt_binary for shell scripts
Bug:
123829926
Test: treehugger
Change-Id: If9d2da84b30aebf8881c6da12efbe99549f5e0cc
Kevin Chyn [Mon, 4 Feb 2019 18:51:21 +0000 (10:51 -0800)]
Partial revert of ag/
5807535
Fingerprint is back to android.hardware.fingerprint
Bug:
123758448
Test: Builds
Change-Id: Iab953b7fe80b4155d5cb6211a7ef4b72dbef7832
Alec Mouri [Mon, 4 Feb 2019 18:49:27 +0000 (18:49 +0000)]
Merge "Add refresh rate stats to TimeStats."
Lloyd Pique [Mon, 4 Feb 2019 18:15:45 +0000 (18:15 +0000)]
Merge changes Id1e90796,Ic8fe0fee,I2ed83355
* changes:
SF: Move HWComposerBufferCache in to CompositionEngine
SF: Intro CE::OutputLayer
SF: Setup CompositionEngine::Layer
Rob Carr [Mon, 4 Feb 2019 17:00:33 +0000 (17:00 +0000)]
Merge "Ensure visible regions are recomputed when children change."
Valerie Hau [Mon, 4 Feb 2019 16:59:37 +0000 (16:59 +0000)]
Merge "Combining background color related transactions/functions"
Orion Hodson [Mon, 4 Feb 2019 09:36:10 +0000 (09:36 +0000)]
SurfaceFlinger: remove DdmConnection
DDMS dlopen's libart.so which is undesirable for the Runtime
Module.
Bug:
120782499
Test: m -j100
Change-Id: Ib9a129329f7bd8d67b954e58810807c683b20b48
Roland Levillain [Mon, 4 Feb 2019 13:47:45 +0000 (05:47 -0800)]
Merge "Have `otapreopt_chroot` bind-mount Bionic artifacts from the Runtime APEX."
am:
58ec999387
Change-Id: I8ffdce4c545d838489cf8818ad75a3c9d8e076f2
Roland Levillain [Mon, 4 Feb 2019 13:40:17 +0000 (13:40 +0000)]
Merge "Have `otapreopt_chroot` bind-mount Bionic artifacts from the Runtime APEX."
Olivier Gaillard [Mon, 4 Feb 2019 09:54:37 +0000 (09:54 +0000)]
Merge "Add methods to read/update request headers"
Dominik Laskowski [Fri, 25 Jan 2019 10:35:50 +0000 (02:35 -0800)]
SF: Plumb physical display IDs to libgui
This CL replaces ISurfaceComposer::{eDisplayIdMain,eDisplayIdHdmi} with
the stable 64-bit display IDs generated by SF. Note that the 64-bit IDs
fall back to the old values if the HWC API for display identification is
not supported.
Bug:
74619554
Test: LocalDisplayAdapter and Choreographer receive 64-bit IDs
Test: 64-bit IDs fall back to 0 and 1 on HWC 2.2 and below
Change-Id: I3c08eff6eb8bb179ecce596ab2820a2aa44c8649
Alec Mouri [Fri, 25 Jan 2019 02:42:10 +0000 (18:42 -0800)]
Add refresh rate stats to TimeStats.
Bug:
122905821
Test: libsurfaceflinger_test
Test: dumpsys SurfaceFlinger --timestats -dump --proto
Change-Id: I99b38497f054f86bebba0813134f1c1eaf632b47
Mathieu Chartier [Sat, 2 Feb 2019 01:33:33 +0000 (17:33 -0800)]
Merge "Add handling for PH property dex2oat_resolve_startup_strings" am:
25d4688e91 am:
19ccd48369
am:
f95100ea77
Change-Id: Iff4d3cefd6dad6ffffd18859b8f5645f40879258
Mathieu Chartier [Sat, 2 Feb 2019 01:28:51 +0000 (17:28 -0800)]
Merge "Add handling for PH property dex2oat_resolve_startup_strings" am:
25d4688e91
am:
19ccd48369
Change-Id: Ic42ad5b73227169825c2df701fbf2ca8afd9bd1a
Mathieu Chartier [Sat, 2 Feb 2019 01:24:21 +0000 (17:24 -0800)]
Merge "Add handling for PH property dex2oat_resolve_startup_strings"
am:
25d4688e91
Change-Id: I0a2ec9718664ce5c7664694656e0b6c434589927
Mathieu Chartier [Sat, 2 Feb 2019 01:14:50 +0000 (01:14 +0000)]
Merge "Add handling for PH property dex2oat_resolve_startup_strings"
Valerie Hau [Tue, 29 Jan 2019 22:59:27 +0000 (14:59 -0800)]
Combining background color related transactions/functions
Bug:
122326454
Test: build, boot, SurfaceFlinger_test, ASurfaceControlTest cts test
Change-Id: I7ec9f2214c7422ab90ab56dd84daafd5b0bf720a
Makoto Onuki [Fri, 1 Feb 2019 22:04:15 +0000 (14:04 -0800)]
Merge "Add "ls -l /data/anr" output to bugreport" am:
ec22502dc5 am:
8c70dddf55
am:
70b7e10425
Change-Id: I973b6e93a4a314bbb2fd0acc0d4395d055a4c726
Lloyd Pique [Wed, 5 Dec 2018 01:24:28 +0000 (17:24 -0800)]
SF: Move HWComposerBufferCache in to CompositionEngine
This simply moves DisplayHardware/HWComposerBufferCache.* to
CompositionEngine/HwcBufferCache.*, adjusting the existing code to
reference the moved file and namespace.
This is a prelude to moving the layerBE state into CompositionEngine.
Test: atest libsurfaceflinger_unittest libcompositionengine_test
Bug:
121291683
Change-Id: Id1e907963d0453ec7beea285ab384a963c356f89
Lloyd Pique [Wed, 5 Dec 2018 01:24:00 +0000 (17:24 -0800)]
SF: Intro CE::OutputLayer
Introduce compositionengine::OutputLayer, for representing the
composition state of a layer on an output (display)
This change just introduces the OutputLayer class, and modifies
SurfaceFlinger.cpp to create them properly. The new class does not yet
have any state.
Test: atest libsurfaceflinger_unittest libcompositionengine_test
Bug:
121291683
Change-Id: Ic8fe0fee61470b36539287883d4901b25208b634
Lloyd Pique [Wed, 5 Dec 2018 01:23:44 +0000 (17:23 -0800)]
SF: Setup CompositionEngine::Layer
Add a Layer class to CompositionEngine, and modify ColorLayer and
BufferLayer to create them.
Also sets up CompositionEngine::LayerFE as an interface to be
implemented by the SF Layer class.
Test: atest libsurfaceflinger_unittest libcompositionengine_test
Bug:
121291683
Change-Id: I2ed83355e81f36954b034ec60dd1a24c631f4874
Makoto Onuki [Fri, 1 Feb 2019 21:46:57 +0000 (13:46 -0800)]
Merge "Add "ls -l /data/anr" output to bugreport" am:
ec22502dc5
am:
8c70dddf55
Change-Id: I6efec07d2473e11bcc4396b83416146318f1b89a
Makoto Onuki [Fri, 1 Feb 2019 21:42:34 +0000 (13:42 -0800)]
Merge "Add "ls -l /data/anr" output to bugreport"
am:
ec22502dc5
Change-Id: I1299d9f2843a5fe34f038f023b600e61e0142a94
Treehugger Robot [Fri, 1 Feb 2019 21:29:39 +0000 (21:29 +0000)]
Merge "Add "ls -l /data/anr" output to bugreport"
Roland Levillain [Fri, 1 Feb 2019 20:58:33 +0000 (12:58 -0800)]
Merge "Refactor the APEX package activation/deactivation logic in `otapreopt_chroot`." am:
fafe4a0ec0 am:
e3ef9446e4
am:
b95ad4bd2b
Change-Id: Ie6e5c9078fc37296491d8469d99ca7d1b0d2fed4