-
Notifications
You must be signed in to change notification settings - Fork 6k
[Impeller] disable Adreno 630 vulkan and add mechanism for android driver denylisting. #54920
Conversation
…iver denylisting.
| #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" |
There was a problem hiding this comment.
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?
There was a problem hiding this comment.
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 |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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()) { |
There was a problem hiding this comment.
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?
There was a problem hiding this comment.
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?
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
…android driver denylisting. (flutter/engine#54920)
…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()) { |
There was a problem hiding this comment.
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?
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.