Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@jonahwilliams
Copy link
Contributor

Fixes flutter/flutter#154103

From local testing, the Adreno 630 returns VK_INCOMPLETE when compiling certain shaders with no other error messages. That is not a valid return code from vkCreateGraphicsPipeline and likely indicates severe problems with the driver.

#include "impeller/renderer/backend/vulkan/driver_info_vk.h"
#include "impeller/renderer/backend/vulkan/surface_context_vk.h"
#include "impeller/renderer/backend/vulkan/test/mock_vulkan.h"
#include "third_party/swiftshader/include/vulkan/vulkan_core.h"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Both this one and the next are bad includes. vk.h should suffice and sets up the right defines before import.

Perhaps the IDE is including it?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

/// Non functional Vulkan driver, see:
/// https://github.com/flutter/flutter/issues/154103
///
/// Reports "VK_INCOMPLETE" when compiling certain entity shader with
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we know which shader this is? I'll try to follow up.

We can catch up afterwards about this. Not blocking.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Porterduff and conical gradient ssbo

FML_LOG(IMPORTANT) << "Using the Impeller rendering backend (Vulkan).";
}
}
if (context->GetDriverInfo()->IsKnownBadDriver()) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps an INFO log saying this happened? Or will this cause issues with tests further down the line?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How would that log be actionable?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To the end user, it won't. But perhaps useful to know for us when we expect Vulkan but get OpenGL.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

jonahwilliams added 2 commits September 3, 2024 10:56
@jonahwilliams jonahwilliams added the autosubmit Merge PR when tree becomes green via auto submit App label Sep 3, 2024
@auto-submit auto-submit bot merged commit 4f62e0b into flutter:main Sep 3, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Sep 3, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Sep 3, 2024
…154581)

flutter/engine@872cbe8...e042202

2024-09-03 [email protected] Roll Skia from 5515c08c2e44 to 0d9333e72a39 (8 revisions) (flutter/engine#54944)
2024-09-03 [email protected] [Impeller] disable Adreno 630 vulkan and add mechanism for android driver denylisting. (flutter/engine#54920)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
FML_LOG(IMPORTANT) << "Using the Impeller rendering backend (Vulkan).";
}
}
if (context->GetDriverInfo()->IsKnownBadDriver()) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you need a null check on context here?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

autosubmit Merge PR when tree becomes green via auto submit App e: impeller platform-android

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Impeller] Black screen on Samsung S9+, Android 10 using Flutter Beta 3.25.1-0.1.pre and main 3.25.0-1.0.pre.103 while it's fine with Flutter 3.24.1

3 participants