OSDN Git Service

android-x86/frameworks-native.git
5 years agoGet rid of logic that clears sync point when layer is hidden
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

5 years agoMerge "SurfaceFlinger: Ensure reparent triggers visible region calculation."
TreeHugger Robot [Fri, 8 Feb 2019 03:47:57 +0000 (03:47 +0000)]
Merge "SurfaceFlinger: Ensure reparent triggers visible region calculation."

5 years agoMerge "Remove EventHub header from include dir"
TreeHugger Robot [Fri, 8 Feb 2019 02:13:01 +0000 (02:13 +0000)]
Merge "Remove EventHub header from include dir"

5 years agoMerge "Background modifications trigger callbacks (BufferStateLayer)"
TreeHugger Robot [Fri, 8 Feb 2019 02:12:56 +0000 (02:12 +0000)]
Merge "Background modifications trigger callbacks (BufferStateLayer)"

5 years agoMerge changes Id7c0a2f5,I980f6215
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

5 years agoBackground modifications trigger callbacks (BufferStateLayer)
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

5 years agoSurfaceFlinger: Ensure reparent triggers visible region calculation.
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

5 years agoAdding 3.0 mapper support to lockAsync
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

5 years agoMerge "Revert "Revert "Use renderengine::drawLayers api everywhere."""
TreeHugger Robot [Thu, 7 Feb 2019 21:58:30 +0000 (21:58 +0000)]
Merge "Revert "Revert "Use renderengine::drawLayers api everywhere."""

5 years agoAdding support for Hal query in AHardwareBuffer isSupported
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

5 years agoMerge "Game Driver: plumb packange name and version for GpuStats"
Yiwei Zhang [Thu, 7 Feb 2019 20:46:56 +0000 (20:46 +0000)]
Merge "Game Driver: plumb packange name and version for GpuStats"

5 years agoMerge "SurfaceControl life-cycle refactoring."
Rob Carr [Thu, 7 Feb 2019 20:45:11 +0000 (20:45 +0000)]
Merge "SurfaceControl life-cycle refactoring."

5 years agoMerge "SurfaceControl: Allow calling destroy when mOwned is true"
Rob Carr [Thu, 7 Feb 2019 20:45:11 +0000 (20:45 +0000)]
Merge "SurfaceControl: Allow calling destroy when mOwned is true"

5 years agoRevert "Revert "Use renderengine::drawLayers api everywhere.""
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

5 years agoRemove EventHub header from include dir
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

5 years agoMerge "SF: Fix for rare flakes in Event{Control}ThreadTests"
TreeHugger Robot [Thu, 7 Feb 2019 00:55:45 +0000 (00:55 +0000)]
Merge "SF: Fix for rare flakes in Event{Control}ThreadTests"

5 years agoMerge "SF: Color changes should dirty entire display"
TreeHugger Robot [Thu, 7 Feb 2019 00:52:28 +0000 (00:52 +0000)]
Merge "SF: Color changes should dirty entire display"

5 years agoMerge "SF Bounds caching 1/3: Defer calls that use layer bounds until the cached...
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."

5 years agoMerge "Changed ContainerLayer's isVisible method to always return false."
TreeHugger Robot [Wed, 6 Feb 2019 23:43:39 +0000 (23:43 +0000)]
Merge "Changed ContainerLayer's isVisible method to always return false."

5 years agoGame Driver: plumb packange name and version for GpuStats
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

5 years agoMerge "SF: Plumb physical display IDs to libgui"
Dominik Laskowski [Wed, 6 Feb 2019 22:46:09 +0000 (22:46 +0000)]
Merge "SF: Plumb physical display IDs to libgui"

5 years agoSF: Color changes should dirty entire display
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

5 years agoSF Bounds caching 1/3: Defer calls that use layer bounds until the cached bounds...
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

5 years agoChanged ContainerLayer's isVisible method to always return false.
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

5 years agoMerge "SF: Fix many flakes in IdleTimerTest"
TreeHugger Robot [Wed, 6 Feb 2019 19:43:36 +0000 (19:43 +0000)]
Merge "SF: Fix many flakes in IdleTimerTest"

5 years agoMerge "Vulkan: add atrace support"
TreeHugger Robot [Wed, 6 Feb 2019 19:29:16 +0000 (19:29 +0000)]
Merge "Vulkan: add atrace support"

5 years agoMerge "Flag invalid robust access attribute"
Courtney Goeltzenleuchter [Wed, 6 Feb 2019 17:53:25 +0000 (17:53 +0000)]
Merge "Flag invalid robust access attribute"

5 years ago[automerger skipped] Merge "SurfaceFlinger: remove DdmConnection" am: e55a64f1a7...
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

5 years agoMerge "SurfaceFlinger: remove DdmConnection" am: e55a64f1a7
Orion Hodson [Wed, 6 Feb 2019 09:12:09 +0000 (01:12 -0800)]
Merge "SurfaceFlinger: remove DdmConnection" am: e55a64f1a7
am: 18b2d1b873

Change-Id: Icb3031dd2c5b534e4d986061435ad6a98c1b4963

5 years agoMerge "SurfaceFlinger: remove DdmConnection"
Orion Hodson [Wed, 6 Feb 2019 09:03:46 +0000 (01:03 -0800)]
Merge "SurfaceFlinger: remove DdmConnection"
am: e55a64f1a7

Change-Id: I79597b9133678028ea38586f3ad19564555842fd

5 years agoMerge "SurfaceFlinger: remove DdmConnection"
Orion Hodson [Wed, 6 Feb 2019 08:51:39 +0000 (08:51 +0000)]
Merge "SurfaceFlinger: remove DdmConnection"

5 years agoSurfaceFlinger: 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

5 years agoMerge "Add more BufferHubEventFd tests"
Tianyu Jiang [Wed, 6 Feb 2019 05:27:36 +0000 (05:27 +0000)]
Merge "Add more BufferHubEventFd tests"

5 years agoMerge "[SurfaceFlinger] Pick the widest color space."
Peiyong Lin [Wed, 6 Feb 2019 04:35:44 +0000 (04:35 +0000)]
Merge "[SurfaceFlinger] Pick the widest color space."

5 years agoMerge "Fixing BufferState background color tests and Caching tests"
TreeHugger Robot [Wed, 6 Feb 2019 03:51:23 +0000 (03:51 +0000)]
Merge "Fixing BufferState background color tests and Caching tests"

5 years agoMerge "Vulkan: fix VK_FORMAT_A2B10G10R10_UNORM_PACK32 format mapping"
TreeHugger Robot [Wed, 6 Feb 2019 03:29:34 +0000 (03:29 +0000)]
Merge "Vulkan: fix VK_FORMAT_A2B10G10R10_UNORM_PACK32 format mapping"

5 years agoSF: Fix many flakes in IdleTimerTest
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

5 years ago[SurfaceFlinger] Pick the widest color space.
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

5 years agoVulkan: fix VK_FORMAT_A2B10G10R10_UNORM_PACK32 format mapping
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

5 years agoMerge "SF: Fixup call expectations in libsurfaceflinger_unittest"
TreeHugger Robot [Tue, 5 Feb 2019 22:53:05 +0000 (22:53 +0000)]
Merge "SF: Fixup call expectations in libsurfaceflinger_unittest"

5 years agoFixing BufferState background color tests and Caching tests
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

5 years agoMerge "libbinder: keep ashmem size >= 0" am: 5805df43c8 am: 037f268d39
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

5 years agoMerge "libbinder: keep ashmem size >= 0" am: 5805df43c8
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

5 years agoMerge "libbinder: keep ashmem size >= 0"
Tri Vo [Tue, 5 Feb 2019 21:45:11 +0000 (13:45 -0800)]
Merge "libbinder: keep ashmem size >= 0"
am: 5805df43c8

Change-Id: Id46cf33b6e0d48a1173d39301ffdcde15caff343

5 years agoMerge "libbinder: keep ashmem size >= 0"
Tri Vo [Tue, 5 Feb 2019 21:38:50 +0000 (21:38 +0000)]
Merge "libbinder: keep ashmem size >= 0"

5 years agoMerge "Adding isSupported HIDL Mapper function support to framework"
Valerie Hau [Tue, 5 Feb 2019 20:12:44 +0000 (20:12 +0000)]
Merge "Adding isSupported HIDL Mapper function support to framework"

5 years agoSF: Fixup call expectations in libsurfaceflinger_unittest
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

5 years agoMerge "Partial revert of ag/5807535"
Kevin Chyn [Tue, 5 Feb 2019 19:06:50 +0000 (19:06 +0000)]
Merge "Partial revert of ag/5807535"

5 years agoMerge "blast: implicitly cache buffers"
TreeHugger Robot [Tue, 5 Feb 2019 17:36:01 +0000 (17:36 +0000)]
Merge "blast: implicitly cache buffers"

5 years agoMerge "installd_service_test: fix ServiceTest.CreateAppDataSnapshot_ClearsCache"...
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

5 years agoMerge "installd_service_test: fix ServiceTest.CreateAppDataSnapshot_ClearsCache"...
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

5 years agoMerge "installd_service_test: fix ServiceTest.CreateAppDataSnapshot_ClearsCache"
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

5 years agoSurfaceControl life-cycle refactoring.
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

5 years agoMerge "installd_service_test: fix ServiceTest.CreateAppDataSnapshot_ClearsCache"
Treehugger Robot [Tue, 5 Feb 2019 17:00:28 +0000 (17:00 +0000)]
Merge "installd_service_test: fix ServiceTest.CreateAppDataSnapshot_ClearsCache"

5 years agoinstalld_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

5 years agoMerge "SurfaceFlinger: remove DdmConnection"
TreeHugger Robot [Tue, 5 Feb 2019 09:06:51 +0000 (09:06 +0000)]
Merge "SurfaceFlinger: remove DdmConnection"

5 years agoMerge "Use sh_binary instead of cc_prebuilt_binary for shell scripts" am: 5a3804f0cb...
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

5 years agoMerge "Use sh_binary instead of cc_prebuilt_binary for shell scripts" am: 5a3804f0cb
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

5 years agoMerge "Have `otapreopt_chroot` bind-mount Bionic artifacts from the Runtime APEX...
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

5 years agoMerge "Have `otapreopt_chroot` bind-mount Bionic artifacts from the Runtime APEX...
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

5 years agoMerge "Move BufferHubBase::Lock and ::Unlock from public function to private helper."
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."

5 years agoMerge "Use sh_binary instead of cc_prebuilt_binary for shell scripts"
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

5 years agoMerge "Use sh_binary instead of cc_prebuilt_binary for shell scripts"
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"

5 years agoAdd more BufferHubEventFd tests
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

5 years agoMove BufferHubBase::Lock and ::Unlock from public function to private helper.
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

5 years agoReset InputClassifier HAL when system starts
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

5 years agoMerge "Revert "Use renderengine::drawLayers api everywhere.""
TreeHugger Robot [Tue, 5 Feb 2019 01:01:53 +0000 (01:01 +0000)]
Merge "Revert "Use renderengine::drawLayers api everywhere.""

5 years agoMerge "Remove unused BufferHubBase::GetBlobFds method"
TreeHugger Robot [Tue, 5 Feb 2019 00:50:19 +0000 (00:50 +0000)]
Merge "Remove unused BufferHubBase::GetBlobFds method"

5 years agoMerge "Remove BufferHubBase::Poll method"
TreeHugger Robot [Tue, 5 Feb 2019 00:49:39 +0000 (00:49 +0000)]
Merge "Remove BufferHubBase::Poll method"

5 years agoAdding isSupported HIDL Mapper function support to framework
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

5 years agoMerge "Remove unused variables from InputClassifier"
TreeHugger Robot [Tue, 5 Feb 2019 00:43:29 +0000 (00:43 +0000)]
Merge "Remove unused variables from InputClassifier"

5 years agoVulkan: add atrace support
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

5 years agoRemove unused variables from InputClassifier
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

5 years agoblast: implicitly cache buffers
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

5 years agoRevert "Use renderengine::drawLayers api everywhere."
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

5 years agoUse sh_binary instead of cc_prebuilt_binary for shell scripts
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

5 years agoPartial revert of ag/5807535
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

5 years agoMerge "Add refresh rate stats to TimeStats."
Alec Mouri [Mon, 4 Feb 2019 18:49:27 +0000 (18:49 +0000)]
Merge "Add refresh rate stats to TimeStats."

5 years agoMerge changes Id1e90796,Ic8fe0fee,I2ed83355
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

5 years agoMerge "Ensure visible regions are recomputed when children change."
Rob Carr [Mon, 4 Feb 2019 17:00:33 +0000 (17:00 +0000)]
Merge "Ensure visible regions are recomputed when children change."

5 years agoMerge "Combining background color related transactions/functions"
Valerie Hau [Mon, 4 Feb 2019 16:59:37 +0000 (16:59 +0000)]
Merge "Combining background color related transactions/functions"

5 years agoSurfaceFlinger: remove DdmConnection
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

5 years agoMerge "Have `otapreopt_chroot` bind-mount Bionic artifacts from the Runtime APEX."
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

5 years agoMerge "Have `otapreopt_chroot` bind-mount Bionic artifacts from the Runtime APEX."
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."

5 years agoMerge "Add methods to read/update request headers"
Olivier Gaillard [Mon, 4 Feb 2019 09:54:37 +0000 (09:54 +0000)]
Merge "Add methods to read/update request headers"

5 years agoSF: Plumb physical display IDs to libgui
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

5 years agoAdd refresh rate stats to TimeStats.
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

5 years agoMerge "Add handling for PH property dex2oat_resolve_startup_strings" am: 25d4688e91...
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

5 years agoMerge "Add handling for PH property dex2oat_resolve_startup_strings" am: 25d4688e91
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

5 years agoMerge "Add handling for PH property dex2oat_resolve_startup_strings"
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

5 years agoMerge "Add handling for PH property dex2oat_resolve_startup_strings"
Mathieu Chartier [Sat, 2 Feb 2019 01:14:50 +0000 (01:14 +0000)]
Merge "Add handling for PH property dex2oat_resolve_startup_strings"

5 years agoCombining background color related transactions/functions
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

5 years agoMerge "Add "ls -l /data/anr" output to bugreport" am: ec22502dc5 am: 8c70dddf55
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

5 years agoSF: Move HWComposerBufferCache in to CompositionEngine
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

5 years agoSF: Intro CE::OutputLayer
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

5 years agoSF: Setup CompositionEngine::Layer
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

5 years agoMerge "Add "ls -l /data/anr" output to bugreport" am: ec22502dc5
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

5 years agoMerge "Add "ls -l /data/anr" output to bugreport"
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

5 years agoMerge "Add "ls -l /data/anr" output to bugreport"
Treehugger Robot [Fri, 1 Feb 2019 21:29:39 +0000 (21:29 +0000)]
Merge "Add "ls -l /data/anr" output to bugreport"

5 years agoMerge "Refactor the APEX package activation/deactivation logic in `otapreopt_chroot...
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