New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 715868 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: May 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

mojo VALIDATION_ERROR_DESERIALIZATION_FAILED in FrameSinkManagerClient::OnSurfaceCreated during shutdown

Project Member Reported by jamescook@chromium.org, Apr 27 2017

Issue description

On samus, 60.0.3082.0 test image with Chrome ToT r467463 release build with symbols.

While debugging issue 692227 I was running autotest cheets_CTSHelper. I noticed this log line in /var/log/ui/ui.LATEST:

[9787:9787:0426/181703.369930:ERROR:validation_errors.cc(87)] Invalid message: VALIDATION_ERROR_DESERIALIZATION_FAILED

Adding more logging shows it coming from:
"FrameSinkManagerClient::OnSurfaceCreated deserializer"

This seems wrong/odd. Why wouldn't it deserialize? Is this expected behavior?





 
Blocking: 601863
Cc: kylec...@chromium.org
Components: Internals>MUS Internals>Compositing
Labels: displaycompositor
Does the test use ARC++ or any exo apps? This bug might have already been fixed by kylechar@?
Oh boy, this is confusing. I'm assuming this is cc::mojom::FrameSinkManagerClient not the newly added cc::FrameSinkManagerClient? The second one has an identical method but is used for something totally different than the first. The second one shouldn't be involved in any deserialization though.

Anyways, this means that someone is submitting a malformed CompositorFrame which produced an invalid SurfaceInfo. The StructTraits for SurfaceInfo calls SurfaceInfo::IsValid(), which checks three things:

bool is_valid() const {
  return id_.is_valid() && device_scale_factor_ != 0 &&
      !size_in_pixels_.IsEmpty();
}

It could be any of those. Do we know what the test is checking for? It looks like the test does invoke ARC, so it might be that I fixed it already when I fixed device_scale_factor with exo, but it could also be an invalid SurfaceId or an empty CompositorFrameMetadata::output_rect.

Comment 3 Deleted

Can we mark this as FIXED then?
Cc: weiliangc@chromium.org
Status: Fixed (was: Assigned)
I'll mark this as FIXED. Please reopen if this is still an issue.
Yep, I think it should be fixed but haven't had a chance to test on a device that supports exo.
Blocking: -601863
Labels: VerifyIn-61

Comment 11 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)
Components: -Internals>MUS Internals>Services>WindowService
Status: Fixed (was: Archived)

Sign in to add a comment