Filter reported device extensions to those supported by codegen - #185
Merged
Merged
Conversation
jmacnak
enabled auto-merge
September 15, 2026 02:44
With Cuttlefish moving its host tooling to an installed host
package being built from github and not from the Android build,
it is now possible for the guest gfxstream build from Android to
be newer than the gfxstream host build. With this, Gfxstream needs
to start worrying about forwards/backward compatability.
b/561597187 is the first case where the guest thinks it can send
VK_EXT_border_color_swizzle structs (e.g.
VkPhysicalDeviceBorderColorSwizzleFeaturesEXT) but then the host
gives up when it encounters a struct it does not recognize.
Gfxstream should only report extensions that are intersection of
guest support and host support.
Bug: b/561597187
Test: launch Cuttlefish with a hack to disable the
VK_EXT_border_color_swizzle extension on the host and
validate that the guest does not report it even though
guest codegen could support it
Change-Id: If4268ca1c282dcfbd92c7d5969cd45f199235e86
Collaborator
|
CL is ok as it may improve the situation, but as discussed offline, this won't be enough to filter the structures as the apps don't need to check extension support and the core structures are generally not tied to any extension support. We should probably consider reverting this after a more comprehensive solution is implemented for forward compatibility. |
kocdemir
approved these changes
Sep 16, 2026
jmacnak
disabled auto-merge
September 16, 2026 15:52
Member
Author
Ack'ing. b/562037606. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
With Cuttlefish moving its host tooling to an installed host package being built from github and not from the Android build, it is now possible for the guest gfxstream build from Android to be newer than the gfxstream host build. With this, Gfxstream needs to start worrying about forwards/backward compatability.
b/561597187 is the first case where the guest thinks it can send VK_EXT_border_color_swizzle structs (e.g.
VkPhysicalDeviceBorderColorSwizzleFeaturesEXT) but then the host gives up when it encounters a struct it does not recognize.
Gfxstream should only report extensions that are intersection of guest support and host support.
Bug: b/561597187