-
Notifications
You must be signed in to change notification settings - Fork 29.5k
[Impeller] keep device holder and allocator alive until last vk image is destroyed. #166725
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
While I can't think of anything that will go wrong as a result of this, I'd like to get the thoughts of @gaaclarke who introduced the To put another way, instead of delaying collection of all live objects in the allocator till all textures are collected, just don't collect the texture if the allocator is dead. But yeah, I'll take the lead from @gaaclarke on this. |
|
The challenge is that the Vulkan memory allocator apparently expects that all allocations will be freed before the allocator itself is shut down. If the texture and its allocation are still alive when the So it makes sense to adopt the strategy in this PR which will keep the allocator and Vulkan instance alive until all pending tasks have deleted their Vulkan objects. |
|
autosubmit label was removed for flutter/flutter/166725, because - The status or check suite Google testing has failed. Please fix the issues identified (or deflake) before re-applying this label. |
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
… is destroyed. (flutter#166725) Fixes flutter#166410 keep the potentially shutdown context alive until the last texture is reclaimed, to work around issues where pending UI tasks aren't flushed during platform view shutdown.
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…t vk image is destroyed. (flutter/flutter#166725)
…最后一个 vk 图像被销毁之前保持设备持有者和分配器处于活动状态 Signed-off-by: lx123546879 <511859501@qq.com>
Fixes #166410
keep the potentially shutdown context alive until the last texture is reclaimed, to work around issues where pending UI tasks aren't flushed during platform view shutdown.