summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-04-05Snap for 8403122 from e791deed994bf2bbded3f304ee801bc5e219af14 to emu-31-releaseemu-31-releaseAndroid Build Coastguard Worker
Change-Id: I10e1b2924933073c116e7745a7b43d6cc5e5c9c9
2022-04-02Merge "Move the logging statements"Treehugger Robot
2022-04-01Move the logging statementsKaiyi Li
Test: build Change-Id: Idabb6dfecc81175ded771b910154f079ba40d341
2022-04-01Merge "(🍒) renderControl: Add a feature flag to enable async commands"Yilong Li
2022-03-31Merge "Use VK_CHECK to capture device lost details."Treehugger Robot
2022-03-31Merge "Revert "change kMaxLayersPerFrame to 16 layers""Treehugger Robot
2022-03-31Revert "change kMaxLayersPerFrame to 16 layers"Daniel Chapin
This reverts commit 96f09a26cd8d68e434196db5d79d848a69ffa7a5. Reason for revert: Bug: 227565325 Change-Id: I9846495ade9edc94546996558101fff509ee0901
2022-03-31Use VK_CHECK to capture device lost details.Doug Horn
We could be losing device lost details by using a direct abort here versus VK_CHECK. Bug: NONE Test: Compile Change-Id: I957c091b5008aba19f16616fe0c31370dc19a053
2022-03-31(🍒) renderControl: Add a feature flag to enable async commandsYilong Li
This adds a feature flag to AEMU/FEMU to allow hosts to enable / disable async render control commands (e.g. rcComposeAsync) as we saw some performance issue on FEMU when using synchronous render control commands to compose frames. Bug: fxbug.dev/93349 Original-Change-Id: I5bc2046e417b2c82a6fc10b97baf7b4ddf4547f1 Change-Id: I5cab5b4770f18dcfae1532ad3efe24eebe1bd2e4
2022-03-31Merge "Fix typing for dict and add vkCmdBeginRenderPass support."Doug Horn
2022-03-30Fix typing for dict and add vkCmdBeginRenderPass support.Doug Horn
Bug: NONE Test: Run script Change-Id: I4183f124102f73e8a8f85933215c3dfdb8df0281
2022-03-30Merge "vulkan-cereal: introduce stream_renderer_context_create"Treehugger Robot
2022-03-30Merge "vulkan-cereal: remove virtio_gpu.h"Treehugger Robot
2022-03-30change kMaxLayersPerFrame to 16 layersHailin Zhang
bug: 222700096 Change-Id: Ibcee535ee5084d28babb8502bbdbc9059a096f53
2022-03-30vulkan-cereal: introduce stream_renderer_context_createGurchetan Singh
This uses the the new context_init variable. BUG=202552093 TEST=run Cuttlefish Change-Id: I72f756e52b87c6b138853bba2a3edd98ecb95170
2022-03-30vulkan-cereal: remove virtio_gpu.hGurchetan Singh
Not used. BUG=202552093 TEST=run Cuttlefish Change-Id: I0eab3ae79fdc8dbce3642682495b6e153e585a56
2022-03-29PostWorker: warn if the composition target is shared across framesKaiyi Li
When the host composer composites multiple frames simultaneously and uses the same composition target buffer, there could be race condition and leads to undefined behavior possibly including crash. https://r.android.com/2045748 should have fixed that issue on the guest. Adding logging on the host to make sure the issue doesn't happen at all. Test: run the emulator Change-Id: I26d71d1250880fc804352e1fc1a46fe1895afff6
2022-03-29Merge "Do not initialize Vulkan objects when Vulkan is not enabled"Treehugger Robot
2022-03-29Do not initialize Vulkan objects when Vulkan is not enabledKaiyi Li
Test: run with Vulkan feature disabled Bug: b/226572716 Change-Id: I0538989ae9c5a354b328bc928175185b63cafc38
2022-03-25Merge "Vk path populates FrameBuffer device info strings"Michael Yu
2022-03-24Change GTest test decovery mode to pre-testGreg Schlomoff
This fixes issues in some CI build environments where the tests might not be able to run right after being built Change-Id: I629f02179e39c48c558b36d9553f6c0719abe4dc
2022-03-24Vk path populates FrameBuffer device info stringsMichael Yu
These strings are printed in gfxstream_backend_init for diagnostic purposes. Prior we were capturing GL-related info even when running the Vulkan path. With this change, I've gated the GL code behind a branch and populated the correct Vulkan information in a Vulkan-specific branch. Before we'd print: ``` gfxstream_backend_init:539 GL strings; [Google Inc. (NULL)] [ANGLE (NULL, NULL, )] [OpenGL ES 3.2.0 (ANGLE 2.1.16170 git hash: 40a8f2e6d3af)]. ``` Now we print: ``` gfxstream_backend_init:537 GL strings; [NVIDIA(Vendor 0x10de)] [Quadro RTX 4000] [Vulkan 1.2.162 NVIDIA (Vendor 0x10de) 461.40 (Driver Version 0x734a0000)]. ``` I haven't reworded the "GL Strings" portion of the text in case that breaks anyones' workflows. If any code reviewers find that preferable to rename, let me know. Likewise, I haven't renamed android_getOpenglesHardwareStrings which we are using to fetch this. Bug: Internal b/224997786 Test: See before/after GL strings print. Change-Id: I849a922d4039049b928e48b6119154089b42ccfa
2022-03-24Merge "Adding a way to add properties to cmake tests."Greg Schlomoff
2022-03-24Merge "Make SwapChainStateVk::createSwapChainCi returns a value object"Treehugger Robot
2022-03-23Make SwapChainStateVk::createSwapChainCi returns a value objectKaiyi Li
... which stores all the data on the stack, so that in a crash dump, VkSwapchainCreateInfoKHR will be guaranteed to be captured. Bug: b/222118078 Test: run the emulator Change-Id: Ib63f1abda5c57894bc3edc238f0d3f870b1eb47b
2022-03-23Merge "Upstreaming `print_gfx_logs`"Greg Schlomoff
2022-03-22DisplayVk: retry when vkQueueWaitIdle returns VK_TIMEOUTKaiyi Li
Test: run the emulator Bug: b/222117858 Change-Id: I2300742e95b9c010913d8aab9d9c555d0df46317
2022-03-22Upstreaming `print_gfx_logs`Greg Schlomoff
This is a script to process gfxstream crash dumps and print the last graphics API calls received from the guest. Test: n/a Change-Id: Ia449c2186f8465c2ac2928154b1eeb8582fbadb3
2022-03-22Adding a way to add properties to cmake tests.Greg Schlomoff
This will be used by downstream gfxsatream users to skip some tests from running on CI Test: ran build script Change-Id: Ic1da644ff0240f1b34d99baaa3879ff91b2f12f0
2022-03-21Snap for 8328406 from 34ec41a6b60abdf42bdd298fdefe15f66dfc2c32 to emu-31-releaseAndroid Build Coastguard Worker
Change-Id: I75b245b53a0eb94d33aee643d35eb3083cca973a
2022-03-21Snap for 8300341 from ea15f40672340474611490d751a8af0913dbe699 to emu-31-releaseAndroid Build Coastguard Worker
Change-Id: Iacaf501b954e078de72b2eb4d0e866ab1ad4a13e
2022-03-17vulkan-cereal: plumb virtgpu ctx_id to process pipeGurchetan Singh
The virtio-gpu context ID is an unique identifier allocated by the guest kernel, via idr_alloc(..). These IDs can be reused, but virtio-gpu gurantees that re-use will only happens after a particular context has been destroyed. Many operations related to resource sharing between guest processes, and between gfxstream and virtgpu are done in reference to this context id. gfxstream has a clear analogue to this already --> m_puid, which is set via connecting to the "pipe:GLProcessPipe" service in the guest. The immediate goal is is make m_puid == ctx_id, so the guest kernel can reference each host render thread via the ctx_id. BUG=202552093 TEST=run Cuttlefish Change-Id: Iadc0c288be6a869261658db87c5c569389f73f5b
2022-03-17vulkan-cereal: plumb AndroidPipeFlags to AndroidPipe creationGurchetan Singh
- Useful for next patch. BUG=202552093 TEST=run Cuttlefish Change-Id: Ia6aca323ffa39e8739ac49325cca71981ab54caa
2022-03-17vulkan-cereal: VirglResId --> VirtioGpuResIdGurchetan Singh
- Name change to better reflect meaning. BUG=202552093 TEST=run Cuttlefish Change-Id: Id4481a57f6b5e75cbec527fd890e76dfb4cb76cf
2022-03-17vulkan-cereal: VirglCtxId --> VirtioGpuCtxIdGurchetan Singh
* Name change to better reflect meaning. BUG=202552093 TEST=run Cuttlefish Change-Id: Ib9de6769e4e74f060ae073a87ab45d8acb3cb1b0
2022-03-17vulkan-cereal: remove createResourceV2Gurchetan Singh
Android crosvm and crosvm main have stopped using it. Prefer stream_renderer_create_blob instead. BUG=202552093 TEST=compile Change-Id: I6f926bb29aaa6b1f6456712f3a3f81e06c638131
2022-03-17Merge "Integrate RenderDoc with guest VkInstances"Kaiyi Li
2022-03-17Merge "Add basic renderdoc integration"Treehugger Robot
2022-03-17Integrate RenderDoc with guest VkInstancesKaiyi Li
This patch allows the RenderDoc to capture for guest Vulkan instances if the environment variable ANDROID_EMU_RENDERDOC is set. Test: run Asphalt 9 on the emulator and enable a capture Change-Id: I62a7dcc6c235b75cd09e26c550e356016cbf9b69
2022-03-17Add basic renderdoc integrationKaiyi Li
Set the ANDROID_EMU_RENDERDOC environment varaible will load the renderdoc DLL in FrameBuffer::initialize(). Test: run the emulator with and without ANDROID_EMU_RENDERDOC set, and use renderdoc to capture some Asphalt 9 frames Change-Id: I1e9b4abf1477f1ecdd8f3deea74c311478293578
2022-03-16Snap for 8292146 from 62602235dbd9a3f89f4ceb8c8f1a47ca37df42ae to emu-31-releaseAndroid Build Coastguard Worker
Change-Id: If40a4e5e7fb3b5cc6e905eb74e29cc7d0e2dbe60
2022-03-15Using GTest's new unit test discovery mechanism.Greg Schlomoff
https: //cmake.org/cmake/help/git-stage/module/GoogleTest.html Test: compile / run Change-Id: I09986f31addf33b8668470cb7694fcb909379680
2022-03-15Merge "Make SharedLibrary::findSymbol mockable"Treehugger Robot
2022-03-15Merge "Generate the pdb file when compiling gfxstream_backend on Windows"Treehugger Robot
2022-03-14Make SharedLibrary::findSymbol mockableKaiyi Li
Change-Id: Ifa27653a061a62fab4283aa9edb7c105c3d87ded
2022-03-14Generate the pdb file when compiling gfxstream_backend on WindowsKaiyi Li
Test: build gfxstream_backend and see pdb file generated Change-Id: I05e48ec6ebb493cc24ed55fdea4568af890f5df8
2022-03-14Merge changes I6958e293,I3d4fb9a8,I9e2863beTreehugger Robot
* changes: Vulkan: Redesign how QueueSignalReleaseImage synchronization works SyncThread: directly send the task as part of the command Refactor ThreadPool to eliminate broadcastIndexed and enqueueIndexed
2022-03-14Fix compile errorKaiyi Li
Test: build on Linux with CC=clang CXX=clang++ cmake . ../ -G Ninja -D VIRGL_RENDERER_UNSTABLE_APIS=ON Change-Id: Iaf0c32c6fd570e3efbe4bf9d9bd8998900922a49
2022-03-08Merge "Checking gtest under third-party instead of downloading it from GitHub."Greg Schlomoff
2022-03-08Merge "Restructure gfxstream unit tests."Greg Schlomoff