diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2021-05-07 01:02:37 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2021-05-07 01:02:37 +0000 |
commit | 6c6ae62f715ef9aa75b82b629e8db4e7f2278737 (patch) | |
tree | 0068dd0351f2e33ec9b57372f41473490d0768bf | |
parent | fbe725b28ffd8a847b70fa5823fe4d870b920640 (diff) | |
parent | c2cfa754a77b588184e906c54d88587d53c91adf (diff) | |
download | crosvm-android12-s5-release.tar.gz |
Snap for 7343210 from c2cfa754a77b588184e906c54d88587d53c91adf to sc-releaseandroid-vts-12.0_r9android-vts-12.0_r8android-vts-12.0_r7android-vts-12.0_r6android-vts-12.0_r5android-vts-12.0_r4android-vts-12.0_r3android-vts-12.0_r2android-vts-12.0_r12android-vts-12.0_r11android-vts-12.0_r10android-vts-12.0_r1android-security-12.0.0_r59android-security-12.0.0_r58android-security-12.0.0_r57android-security-12.0.0_r56android-security-12.0.0_r55android-security-12.0.0_r54android-security-12.0.0_r53android-security-12.0.0_r52android-security-12.0.0_r51android-security-12.0.0_r50android-security-12.0.0_r49android-security-12.0.0_r48android-security-12.0.0_r47android-security-12.0.0_r46android-security-12.0.0_r45android-security-12.0.0_r44android-security-12.0.0_r43android-security-12.0.0_r42android-security-12.0.0_r41android-security-12.0.0_r40android-security-12.0.0_r39android-security-12.0.0_r38android-security-12.0.0_r37android-security-12.0.0_r36android-security-12.0.0_r35android-security-12.0.0_r34android-platform-12.0.0_r9android-platform-12.0.0_r8android-platform-12.0.0_r7android-platform-12.0.0_r6android-platform-12.0.0_r5android-platform-12.0.0_r4android-platform-12.0.0_r31android-platform-12.0.0_r30android-platform-12.0.0_r3android-platform-12.0.0_r29android-platform-12.0.0_r28android-platform-12.0.0_r27android-platform-12.0.0_r26android-platform-12.0.0_r25android-platform-12.0.0_r24android-platform-12.0.0_r23android-platform-12.0.0_r22android-platform-12.0.0_r21android-platform-12.0.0_r20android-platform-12.0.0_r2android-platform-12.0.0_r19android-platform-12.0.0_r18android-platform-12.0.0_r17android-platform-12.0.0_r16android-platform-12.0.0_r15android-platform-12.0.0_r14android-platform-12.0.0_r13android-platform-12.0.0_r12android-platform-12.0.0_r11android-platform-12.0.0_r10android-platform-12.0.0_r1android-cts-12.0_r9android-cts-12.0_r8android-cts-12.0_r7android-cts-12.0_r6android-cts-12.0_r5android-cts-12.0_r4android-cts-12.0_r3android-cts-12.0_r2android-cts-12.0_r12android-cts-12.0_r11android-cts-12.0_r10android-cts-12.0_r1android-12.0.0_r9android-12.0.0_r8android-12.0.0_r34android-12.0.0_r33android-12.0.0_r31android-12.0.0_r30android-12.0.0_r3android-12.0.0_r25android-12.0.0_r2android-12.0.0_r11android-12.0.0_r10android-12.0.0_r1android12-tests-releaseandroid12-security-releaseandroid12-s5-releaseandroid12-s4-releaseandroid12-s3-releaseandroid12-s2-releaseandroid12-s1-releaseandroid12-releaseandroid12-platform-release
Change-Id: I5d08dd8a052a1e755d5cf222f6374673e5b7d738
-rw-r--r-- | devices/src/virtio/gpu/virtio_gpu.rs | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/devices/src/virtio/gpu/virtio_gpu.rs b/devices/src/virtio/gpu/virtio_gpu.rs index 00086903a..2e7abb32d 100644 --- a/devices/src/virtio/gpu/virtio_gpu.rs +++ b/devices/src/virtio/gpu/virtio_gpu.rs @@ -215,14 +215,13 @@ impl VirtioGpu { scanout_data: Option<VirtioScanoutBlobData>, ) -> VirtioGpuResult { let mut display = self.display.borrow_mut(); - if resource_id == 0 { - if let Some(surface_id) = self.scanout_surface_id.take() { - display.release_surface(surface_id); - } - self.scanout_resource_id = None; - return Ok(OkNoData); - } - + /// b/186580833. + /// Remove the part of deleting surface when resource_id is 0. + /// This is a workaround to solve the issue of black display. + /// Observation is when Surfaceflinger falls back to client composition, + /// host receives set_scanout 0 0, and then set scanout 0 <some valid resid>. + /// The first 0 0 removes the surface, the second creates a new surface + /// with id++, which will be more than 0 and be ignorned in vnc or webrtc let resource = self .resources .get_mut(&resource_id) |